亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > Oracle > 正文

ORACLE 常用的SQL語法和數據對象

2024-08-29 13:57:19
字體:
來源:轉載
供稿:網友

1.INSERT (往數據表里插入記錄的語句)

  INSERT INTO 表名(字段名1, 字段名2, ……) VALUES ( 值1, 值2, ……);
  INSERT INTO 表名(字段名1, 字段名2, ……) SELECT (字段名1, 字段名2, ……) FROM 另外的表名;

  字符串類型的字段值必須用單引號括起來, 例如: 'GOOD DAY'
  如果字段值里包含單引號' 需要進行字符串轉換, 我們把它替換成兩個單引號''. 字符串類型的字段值超過定義的長度會出錯, 最好在插入前進行長度校驗.

  日期字段的字段值可以用當前數據庫的系統時間SYSDATE, 精確到秒或者用字符串轉換成日期型函數TO_DATE(‘2001-08-01','YYYY-MM-DD') TO_DATE()還有很多種日期格式, 可以參看ORACLE DOC. 年-月-日 小時:分鐘:秒 的格式YYYY-MM-DD HH24:MI:SS

  INSERT時最大可操作的字符串長度小于等于4000個單字節, 如果要插入更長的字符串, 請考慮字段用CLOB類型,方法借用ORACLE里自帶的DBMS_LOB程序包.

  INSERT時如果要用到從1開始自動增長的序列號, 應該先建立一個序列號CREATE SEQUENCE 序列號的名稱 (最好是表名+序列號標記) INCREMENT BY 1 START WITH 1
  MAXVALUE 99999 CYCLE NOCACHE;
  其中最大的值按字段的長度來定, 如果定義的自動增長的序列號 NUMBER(6) , 最大值為999999
  INSERT 語句插入這個字段值為: 序列號的名稱.NEXTVAL

2.DELETE (刪除數據表里記錄的語句)

  DELETE FROM表名 WHERE 條件;

  注意:刪除記錄并不能釋放ORACLE里被占用的數據塊表空間. 它只把那些被刪除的數據塊標成unused.

  如果確實要刪除一個大表里的全部記錄, 可以用 TRUNCATE 命令, 它可以釋放占用的數據塊表空間
  TRUNCATE TABLE 表名;
  此操作不可回退.

3.UPDATE (修改數據表里記錄的語句)

  UPDATE表名 SET 字段名1=值1, 字段名2=值2, …… WHERE 條件;

  如果修改的值N沒有賦值或定義時, 將把原來的記錄內容清為NULL, 最好在修改前進行非空校驗; 值N超過定義的長度會出錯, 最好在插入前進行長度校驗..

  注意事項:
  A. 以上SQL語句對表都加上了行級鎖,確認完成后, 必須加上事物處理結束的命令 COMMIT 才能正式生效, 否則改變不一定寫入數據庫里. 如果想撤回這些操作, 可以用命令 ROLLBACK 復原.

  B. 在運行INSERT, DELETE 和 UPDATE 語句前最好估算一下可能操作的記錄范圍, 應該把它限定在較小 (一萬條記錄) 范圍內,. 否則ORACLE處理這個事物用到很大的回退段. 程序響應慢甚至失去響應. 如果記錄數上十萬以上這些操作, 可以把這些SQL語句分段分次完成,
  其間加上COMMIT 確認事物處理.二.數據定義 (DDL) 部分

1.CREATE (創建表, 索引, 視圖, 同義詞, 過程, 函數, 數據庫鏈接等)

  ORACLE常用的字段類型有
  CHAR 固定長度的字符串
  VARCHAR2 可變長度的字符串
  NUMBER(M,N) 數字型M是位數總長度, N是小數的長度
  DATE 日期類型

  創建表時要把較小的不為空的字段放在前面, 可能為空的字段放在后面創建表時可以用中文的字段名, 但最好還是用英文的字段名

  創建表時可以給字段加上默認值, 例如 DEFAULT SYSDATE這樣每次插入和修改時, 不用程序操作這個字段都能得到動作的時間

  創建表時可以給字段加上約束條件
  例如 不允許重復 UNIQUE, 關鍵字 PRIMARY KEY

2.ALTER (改變表, 索引, 視圖等)

  改變表的名稱
  ALTER TABLE 表名1 TO 表名2;

  在表的后面增加一個字段
  ALTER TABLE表名 ADD 字段名 字段名描述;

  修改表里字段的定義描述
  ALTER TABLE表名 MODIFY字段名 字段名描述;

  給表里的字段加上約束條件
  ALTER TABLE 表名 ADD CONSTRAINT 約束名 PRIMARY KEY (字段名);
  ALTER TABLE 表名 ADD CONSTRAINT 約束名 UNIQUE (字段名);

  把表放在或取出數據庫的內存區
  ALTER TABLE 表名 CACHE;
  ALTER TABLE 表名 NOCACHE;

3.DROP (刪除表, 索引, 視圖, 同義詞, 過程, 函數, 數據庫鏈接等)

  刪除表和它所有的約束條件
  DROP TABLE 表名 CASCADE CONSTRAINTS;

4.TRUNCATE (清空表里的所有記錄, 保留表的結構)

  TRUNCATE 表名;三.查詢語句 (SELECT) 部分

  SELECT字段名1, 字段名2, …… FROM 表名1, [表名2, ……] WHERE 條件;

  字段名可以帶入函數
  例如: COUNT(*), MIN(字段名), MAX(字段名), AVG(字段名), DISTINCT(字段名), TO_CHAR(DATE字段名,'YYYY-MM-DD HH24:MI:SS')

  NVL(EXPR1, EXPR2)函數
  解釋:
  IF EXPR1=NULL
  RETURN EXPR2
  ELSE
  RETURN EXPR1

  DECODE(AA﹐V1﹐R1﹐V2﹐R2....)函數
  解釋:
  IF AA=V1 THEN RETURN R1
  IF AA=V2 THEN RETURN R2
  ..…
  ELSE
  RETURN NULL

  LPAD(char1,n,char2)函數
  解釋:
  字符char1按制定的位數n顯示,不足的位數用char2字符串替換左邊的空位

  字段名之間可以進行算術運算
  例如: (字段名1*字段名1)/3

  查詢語句可以嵌套
  例如: SELECT …… FROM
  (SELECT …… FROM表名1, [表名2, ……] WHERE 條件) WHERE 條件2;

  兩個查詢語句的結果可以做集合操作
  例如: 并集UNION(去掉重復記錄), 并集UNION ALL(不去掉重復記錄), 差集MINUS, 交集INTERSECT

  分組查詢
  SELECT字段名1, 字段名2, …… FROM 表名1, [表名2, ……] GROUP BY字段名1
  [HAVING 條件] ;

  兩個以上表之間的連接查詢

  SELECT字段名1, 字段名2, …… FROM 表名1, [表名2, ……] WHERE
  表名1.字段名 = 表名2. 字段名 [ AND ……] ;

  SELECT字段名1, 字段名2, …… FROM 表名1, [表名2, ……] WHERE
  表名1.字段名 = 表名2. 字段名(+) [ AND ……] ;

  有(+)號的字段位置自動補空值

  查詢結果集的排序操作, 默認的排序是升序ASC, 降序是DESC

  SELECT字段名1, 字段名2, …… FROM 表名1, [表名2, ……]
  ORDER BY字段名1, 字段名2 DESC;

  字符串模糊比較的方法

  INSTR(字段名, ‘字符串')>0
  字段名 LIKE ‘字符串%' [‘%字符串%']

  每個表都有一個隱含的字段ROWID, 它標記著記錄的唯一性.

ORACLE里常用的數據對象 (SCHEMA)

  1.索引 (INDEX)

  CREATE INDEX 索引名ON 表名 ( 字段1, [字段2, ……] );
  ALTER INDEX 索引名 REBUILD;

  一個表的索引最好不要超過三個 (特殊的大表除外), 最好用單字段索引, 結合SQL語句的分析執行情況, 也可以建立多字段的組合索引和基于函數的索引

  ORACLE8.1.7字符串可以索引的最大長度為1578 單字節
  ORACLE8.0.6字符串可以索引的最大長度為758 單字節

  2.視圖 (VIEW)

  CREATE VIEW 視圖名AS SELECT …. FROM …..;
  ALTER VIEW視圖名 COMPILE;

  視圖僅是一個SQL查詢語句, 它可以把表之間復雜的關系簡潔化.

  3.同義詞 (SYNONMY)
  CREATE SYNONYM同義詞名FOR 表名;
  CREATE SYNONYM同義詞名FOR 表名@數據庫鏈接名;

  4.數據庫鏈接 (DATABASE LINK)
  CREATE DATABASE LINK數據庫鏈接名CONNECT TO 用戶名 IDENTIFIED BY 密碼 USING ‘數據庫連接字符串'; 數據庫連接字符串可以用NET8 EASY CONFIG或者直接修改TNSNAMES.ORA里定義.

  數據庫參數global_name=true時要求數據庫鏈接名稱跟遠端數據庫名稱一樣

  數據庫全局名稱可以用以下命令查出
  SELECT * FROM GLOBAL_NAME;

  查詢遠端數據庫里的表
  SELECT …… FROM 表名@數據庫鏈接名;

權限管理 (DCL) 語句

  1.GRANT 賦于權限
  常用的系統權限集合有以下三個:
  CONNECT(基本的連接), RESOURCE(程序開發), DBA(數據庫管理)
  常用的數據對象權限有以下五個:
  ALL ON 數據對象名, SELECT ON 數據對象名, UPDATE ON 數據對象名DELETE ON 數據對象名, INSERT ON 數據對象名, ALTER ON 數據對象名

  GRANT CONNECT, RESOURCE TO 用戶名;
  GRANT SELECT ON 表名 TO 用戶名;
  GRANT SELECT, INSERT, DELETE ON表名 TO 用戶名1, 用戶名2;

  2.REVOKE 回收權限

  REVOKE CONNECT, RESOURCE FROM 用戶名;
  REVOKE SELECT ON 表名 FROM 用戶名;
  REVOKE SELECT, INSERT, DELETE ON表名 FROM 用戶名1, 用戶名2;

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲国产精品va在看黑人| 国产精品大片wwwwww| 欧美一级成年大片在线观看| 性欧美在线看片a免费观看| 亚洲国产精彩中文乱码av在线播放| 色综合色综合久久综合频道88| 91精品在线观| 亚洲丁香久久久| 亚洲精品成a人在线观看| 欧美精品一区在线播放| 福利精品视频在线| 亚洲欧洲视频在线| 久久99精品久久久久久琪琪| 在线视频日韩精品| 精品日本高清在线播放| 亚洲成人在线视频播放| 精品久久久久久久久久久| 国产精品久久久久不卡| 91tv亚洲精品香蕉国产一区7ujn| 中文字幕av一区中文字幕天堂| 久久av在线播放| 一区二区三区 在线观看视| 国产视频在线观看一区二区| 欧美高跟鞋交xxxxxhd| 久久久免费高清电视剧观看| 亚洲福利影片在线| 韩国v欧美v日本v亚洲| 久久精品国产成人| 久久久久久久国产| 成人免费午夜电影| 国产99视频精品免视看7| 国产一区视频在线播放| 久久久亚洲福利精品午夜| 亚洲男人第一网站| 国产精品视频网址| 日韩激情av在线免费观看| 欧美成人免费一级人片100| 亚洲国产91色在线| 欧美日韩国产精品| 高跟丝袜欧美一区| 国产精品成人aaaaa网站| 国产一区二区三区高清在线观看| 91福利视频网| 亚洲免费av片| 久久久久久久爱| 久久久亚洲欧洲日产国码aⅴ| 国产午夜精品理论片a级探花| 国产成人精品久久二区二区91| 麻豆一区二区在线观看| 日韩av在线免费| 亚洲欧美中文在线视频| 日本中文字幕久久看| 欧洲成人免费aa| 欧美老少配视频| 高清日韩电视剧大全免费播放在线观看| 精品国产一区久久久| 国产日韩在线观看av| 亚洲国产精品热久久| 91精品国产成人| 日韩高清av一区二区三区| 黑人极品videos精品欧美裸| 亚洲国产日韩欧美在线图片| 久久人人看视频| 亚洲跨种族黑人xxx| 欧美日韩在线第一页| 国产又爽又黄的激情精品视频| 欧美日韩加勒比精品一区| 亚洲第一中文字幕| 国产又爽又黄的激情精品视频| 日韩激情片免费| 欧美激情xxxx性bbbb| 欧美激情一区二区三区在线视频观看| 国产一区二区三区久久精品| 日韩综合中文字幕| 久久久久亚洲精品| 欧美孕妇与黑人孕交| 成人观看高清在线观看免费| 欧美在线视频在线播放完整版免费观看| 尤物yw午夜国产精品视频明星| 久久91亚洲精品中文字幕| 精品亚洲男同gayvideo网站| 日韩hd视频在线观看| 欧美激情免费视频| 免费不卡欧美自拍视频| 国产日韩欧美视频在线| 日韩动漫免费观看电视剧高清| 国产日韩欧美日韩| 亚洲一区二区黄| 亚洲成人a级网| 亚洲国产日韩精品在线| 91精品国产91久久| 日本精品视频网站| 久久国产精品影视| 91人人爽人人爽人人精88v| 欧美激情一二三| 538国产精品一区二区在线| 久久精品久久久久久| 国产精品美女主播| 91香蕉嫩草神马影院在线观看| 欧美综合激情网| 91久久精品美女高潮| 精品国产91乱高清在线观看| 国产a级全部精品| 91社影院在线观看| 亚洲国产精彩中文乱码av在线播放| 欧美多人爱爱视频网站| 亚洲视频在线观看免费| 日本91av在线播放| 亚洲一区美女视频在线观看免费| www日韩中文字幕在线看| 久久99精品久久久久久噜噜| 日韩电影在线观看免费| 国产视频999| 国产精品第二页| 亚洲美腿欧美激情另类| 国产自摸综合网| 国产精品99久久99久久久二8| 91精品久久久久久久| 成人午夜激情免费视频| 精品国产网站地址| 欧美激情手机在线视频| 97在线视频免费播放| 一个色综合导航| 国产成人jvid在线播放| 日韩免费在线免费观看| 国产精品美女av| 日韩电影网在线| 国产在线观看不卡| 国产精品69精品一区二区三区| 欧美在线视频一二三| 欧美高清电影在线看| 日韩av免费网站| 亚洲欧洲一区二区三区久久| 国产精品第一第二| 亚洲欧美中文日韩在线| 日韩经典中文字幕在线观看| 亚洲视频在线播放| 成人精品视频在线| 91在线无精精品一区二区| 97在线观看视频国产| 亚洲成人久久久| 国产精品视频yy9099| 久久视频免费观看| 亚洲丝袜在线视频| 欧美又大又粗又长| 久久中文字幕视频| 亚洲国产91色在线| 成人xxxx视频| 国产99在线|中文| 丁香五六月婷婷久久激情| 不卡在线观看电视剧完整版| 亚洲色图狂野欧美| 国产日韩欧美黄色| 亚洲视频视频在线| 日韩电影免费在线观看中文字幕| 欧美福利视频在线| 成人免费xxxxx在线观看| 国产热re99久久6国产精品| 狠狠操狠狠色综合网| 色播久久人人爽人人爽人人片视av| 亚洲精品自拍偷拍| 亚洲国产成人久久综合一区| 米奇精品一区二区三区在线观看| 欧美一区二区三区免费视|