Informix SQL 語句詳解 (1)_第1頁
Informix SQL 語句詳解 (1)_第2頁
Informix SQL 語句詳解 (1)_第3頁
Informix SQL 語句詳解 (1)_第4頁
Informix SQL 語句詳解 (1)_第5頁
已閱讀5頁,還剩11頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、首頁 > 數(shù)據(jù)庫 > Informix > 正文Informix SQL 語句詳解 (1)本文出自: (2001-06-18 17:04:00)1.      CREATE DATABASE database_name WITH LOG IN “pathname” create databast創(chuàng)建數(shù)據(jù)庫。 database_name:數(shù)據(jù)庫名稱。 “pathname”:事務(wù)處理日志文件。 創(chuàng)建一database_name.dbs目錄,存取權(quán)限由GRANT設(shè)

2、定,無日志文件就不能使用 grantBEGIN WORK等事務(wù)語句(可用START DATABASE語句來改變)。 begin work start可選定當(dāng)前數(shù)據(jù)庫的日志文件。 如:select dirpath form systables where tabtype = “L”; 例:create databse customerdb with log in “/usr/john/log/customer.log”;   DATABA

3、SE databse-name EXCLUSIVE  選擇數(shù)據(jù)庫。 database_name:數(shù)據(jù)庫名稱。 EXCLUSIVE:獨(dú)占狀態(tài)。 存取當(dāng)前目錄和DBPATH中指定的目錄下的數(shù)據(jù)庫,事務(wù)中處理過程中不要使用此語句。 例:dtabase customerdb;   3.      CLOSE DATABASE 關(guān)閉當(dāng)前數(shù)據(jù)庫。 database_name:數(shù)據(jù)庫名稱。 此語句之后,只有下列語句合法: CREATE DATABASE; DATABAS

4、E; DROP DATABSE; ROLLFORWARD DATABASE; 刪除數(shù)據(jù)庫前必須使用此語句。 例:close database;   4.      DROP DATABASE database_name 刪除指定數(shù)據(jù)庫。 database_name:數(shù)據(jù)庫名稱。 用戶是DBA或所有表的擁有者;刪除所有文件,但不包括數(shù)據(jù)庫目錄;不允許刪除當(dāng)前數(shù)據(jù)庫(須先關(guān)閉當(dāng)前數(shù)據(jù)庫);事務(wù)中處理過程中不能使用此語句,通過ROLLBACK WORK

5、 也不可將數(shù)據(jù)庫恢復(fù)。 例:drop databse customerdb;   5.      CREATE TEMP TABLE table-name (column_name datatype NOT NULL, ) IN “pathname” 創(chuàng)建表或臨時(shí)表。 table-name :表名稱。 column_name:字段名稱。 data-type:字段數(shù)據(jù)類型。 path-name:指定

6、表的存放位置 TEMP用于指定建立臨時(shí)表;表名要唯一,字段要唯一;有CONNECT權(quán)限的用戶可建立臨時(shí)表;創(chuàng)建的表缺省允許CONNECT用戶存取,但不可以ALTER。 例:create table user ( c0 serial not null, c1 char (10), c2 char(2), c3 smallint, c4 decimal(6,3), c5 date ) in “usr/john/customer.dbs/user; &

7、#160; 6.      ALTER TABLE ALTER TABLE table-name ADD (newcol_name newcol_type BEFORE oldcol_name, ) | DROP (oldcol_name, ) | MODIFY (oldcol_name newcol_type NOT NULL,  ), 

8、; 修改表結(jié)構(gòu)。 table-name:表名稱。 newcol_name:新字段名稱 newcol_type:新字段類型 oldcol_name:老字段名稱 可以使用單個(gè)或多個(gè)ADD子句、DROP子句、MODIFY子句,但某個(gè)字句失敗,操作即中止;原字段是NULL,不允許MODIFY為NOT NULL,除非所有NULL字段中均非空,反之可以;ALTER使用者是表的擁有者或擁有DBA權(quán)限,或被授權(quán);事務(wù)中處理過程中不要使用此語句。 例:alter table user add ( c6 char(20) before 

9、;c5);   7.      RENAME TABLE oldname TO newname 修改表名。 oldname:原名稱。 newname:新名稱。 RENAME使用者是表的擁有者或擁有DBA權(quán)限,或被授權(quán);事務(wù)中處理過程中不要使用此語句。 例:rename user to bbb;   8.      DROP TABLE table-name 刪除表。

10、table-name:表名稱。 刪除表意味著刪除其中所有數(shù)據(jù)、各字段上的索引及對(duì)表的賦權(quán)、視圖等;用戶不能刪除任何系統(tǒng)目錄表;語句使用者是表擁有者或擁有DBA權(quán)限,事務(wù)中處理過程中不要使用此語句。   9.      RENAME COLUMN table.oldcolumn, TO newcolumn 修改字段名。 table.oldcolumn:表名及原字段名稱 newcolumn:新字段名稱。 語句使用者是表的擁有者或擁有DBA權(quán)限或有ALTER權(quán)限的用戶,事務(wù)中處理過程中不要使

11、用此語句。 例:rename column user.c6 to c7;   10. CREATE VIEW view-name column-list CREATE VIEW view-name column-list AS select_statement WITH CHECK OPTION 創(chuàng)建視圖。 view-name:視圖名稱。 column-list:字段列表。 select_statement:SELECT語句。

12、 以下語句不使用視圖:ALTER TABLE,DROP INDEX,ALTER INDEX,LOCK TABLE,CREATE INDEX, RENAME TABLE;視圖將延用基表的字段名,對(duì)表達(dá)式等虛字段和多表間字段重名必須指明標(biāo)識(shí)其字段名;若對(duì)視圖中某些字段命名,則所有字段都必須命名;視圖中數(shù)據(jù)類型延用基表中的數(shù)據(jù)類型,虛字段起訣于表達(dá)式;不能使用ORDER BY和UNION子句;對(duì)視圖中所有的字段要有SELECT權(quán)限;事務(wù)中處理過程中使用此語句,即使事務(wù)回滾,視圖也將建立,不能恢復(fù)。 例:create

13、60;view v_user as select * from user where c1 = “B1”;   11. DROP VIEW view-name 刪除視圖。 view-name:視圖名稱。 用戶可刪除自己建立的視圖;視圖的后代視圖也被刪除;事務(wù)中處理中不要使用此語句。 例:drop view v_user;   12. CREATE INDEX CREATE UNIQUE/DISTI

14、NCT CLUSTER INDEX index_name ON table_name (column_name ASC/DESC,) 創(chuàng)建索引。 index_name:索引名稱。 table_name:表名稱。 column_name:字段名稱。 UNIQUE/DISTINCT:唯一索引。 CLUSTER:使表的物理存放順序按索引排列。 ASC/DESC:升序或降序,缺省升序。 語句執(zhí)行時(shí),將表的狀態(tài)置為EXCLUSIVE;復(fù)合索引最多包含8個(gè)字段,所有字段長度和不得大于120字節(jié);事務(wù)中處理過程中使用此語句,即使事務(wù)回滾,索引將建立

15、,不能恢復(fù)。 例:create cluster index ix_user on user(c5);   13. ALTER INDEX index-name TO NOT CLUSTER 修改索引性質(zhì)。 index-name:索引名稱。 TO NOT CLUSTER:去掉或加上CLUSTER屬性。 語句執(zhí)行時(shí),將表的狀態(tài)置為EXCLUSIVE;事務(wù)中處理過程中使用此語句,即使事務(wù)回滾,索引性質(zhì)將改變,不能恢復(fù)。 例:alter index

16、60;ix_user to not cluster;   14. DROP INDEX index-name 刪除索引。 index-name:索引名稱。 語句使用者是索引的擁有者或擁有DBA權(quán)限,事務(wù)中處理過程中不要使用此語句,否則事務(wù)無法恢復(fù)。 例:drop index ix_user;   15. CREATE SYNONYM synonym FOR table-name 創(chuàng)建同義名。 synonym:同義名 table-name:表名稱

17、數(shù)據(jù)庫的創(chuàng)建者可以使用同義名;沒有賦予同義名權(quán)限的用戶不能使用同義名;同義名不能和表名相同;事務(wù)中處理過程中不要使用此語句。 例:create synonym user_alias for user;   16. DROP SYNONYM synonym 刪除同義名。 synonym:同義名 可以刪除自己建立的同義名;事務(wù)中處理過程中不要使用此語句,否則無法恢復(fù)。 例:drop synonym user_alias;   17. UPDATE STATISTICS&

18、#160;FOR TABLE table-name 更新數(shù)據(jù)庫的統(tǒng)計(jì)數(shù)字。 table-name:表名稱 此語句僅作用于當(dāng)前數(shù)據(jù)庫;可提高查詢效率;只有執(zhí)行此語句,才改變統(tǒng)計(jì)數(shù)據(jù)。     例:update statistics for table user; () 窗體頂部相關(guān)文章 窗體底部 ©   來自樊強(qiáng) 歡迎分享 2001 首頁 > 數(shù)據(jù)庫 > Informix > 正文Informix SQL 語句詳解 (2)本文出自: (20

19、01-06-18 18:08:00)GRANT DBA|RESOURCE|CONNECT TO PUBLIC|user-list  授權(quán)命令。  PUBLIC|user-list:全部或指定的用戶。  三種權(quán)限居且僅居其一,事務(wù)處理過程中不要執(zhí)行GRANT語句。  例:grant resource to pulbic;  GRANT tab-privilege ON table-name TO PUBLIC|user-list 

20、;WITH GRANT OPTION  授表級(jí)權(quán)限。  tab-privilege:表級(jí)權(quán)限。  table-name:表名稱。  PUBLIC|user-list:全部或指定的用戶。  WITH GRANT OPTION:表示被授權(quán)用戶有否權(quán)限進(jìn)行二次授權(quán)。  用戶可以在自己建立表達(dá)式或被WITH GRANT OPTION準(zhǔn)許的表中進(jìn)行賦權(quán);限定越多的權(quán)限優(yōu)先級(jí)越高。  例:grant update(c1,c6) on user

21、60;to dick with grant option;     附(INFORMIX的權(quán)限)  (1) 數(shù)據(jù)庫的權(quán)限(控制對(duì)數(shù)據(jù)庫的訪問以及數(shù)據(jù)庫中表的創(chuàng)建和刪除)  DBA權(quán)限:全部權(quán)利,修改系統(tǒng)表,建立和刪除表與索引、增加和恢復(fù)表數(shù)據(jù),以及授予其他用戶數(shù)據(jù)庫權(quán)限等;  RESOURCE權(quán)限:允許對(duì)數(shù)據(jù)庫表中的數(shù)據(jù)進(jìn)行存取,建立永久性表以及索引。  CONNECT權(quán)限:只允許對(duì)數(shù)據(jù)庫表中的數(shù)據(jù)進(jìn)行存取,建立和刪除視圖與臨時(shí)表。  (2)表級(jí)權(quán)限(對(duì)表的建立、修

22、改、檢索和更新等權(quán)限)  ALTER:更改權(quán)限  DELETE:刪除權(quán)限  INDEX:索引權(quán)限  INSERT:插入權(quán)限  SELECT (cols):指定字段或所有字段上的查詢權(quán)限,不指明字段缺省為所有字段。  UPDATE (cols) :指定字段或所有字段上的更新權(quán)限,不指明字段缺省為所有字段。  ALL PRIVILEGES:以上所有表級(jí)權(quán)限     19. REVOKE DBA|RESOURCE|CONNECT F

23、ROM PUBLIC|user-list  收權(quán)命令。  PUBLIC|user-list:全部或指定的用戶。  三種權(quán)限居且僅居其一,事務(wù)處理過程中不要執(zhí)行GRANT語句。  例:revoke resource from john;  REVOKE tab-privilege ON table-name FROM PUBLIC|user-list  收表級(jí)權(quán)限。  tab-privilege:表級(jí)權(quán)限。  table-nam

24、e:表名稱。  PUBLIC|user-list:全部或指定的用戶。  WITH GRANT OPTION:表示被授權(quán)用戶有否權(quán)限進(jìn)行二次授權(quán)。  用戶只能取消由其本人賦予其他用戶的表級(jí)存取權(quán)限;不能取消自己的權(quán)限,對(duì)SELECT和UPDATE作取消時(shí),將取消 所有表中字段的SELECT 和UPDATE權(quán)限。  例;revoke update on user from dick;     LOCK TABLE table-na

25、me IN SHARE|EXCLUSIVE MODE  記錄級(jí)加鎖和表級(jí)加鎖或文件加鎖。  table-name:表名稱。  SHARE:允許讀表中數(shù)據(jù),但不允許作任何修改  EXCLUSIVE:禁止其他任何形式訪問表  每次只能對(duì)表瑣定一次;事務(wù)處理過程中,BEGIN WORK后立即執(zhí)行LOCK TABLE以取代記錄級(jí)加鎖,COMMIT WORK和 ROLLBACK WORK語句取消所有對(duì)表的加鎖;若沒有事務(wù)處理,鎖將保持到用戶退出或執(zhí)行UNLOCK為止。  例:

26、lock table user in exclusive mode;     UNLOCK TABLE table-name  取消記錄級(jí)加鎖和表級(jí)加鎖或文件加鎖。  table-name:表名稱。  例:unlock user;     SET LOCK MODE TO NOT WAIT  改變鎖定狀態(tài)。  TO NOT:等待解鎖,有可能被死鎖或

27、不等待并提示錯(cuò)誤信息,表示此記錄被鎖,缺省值。  訪問一個(gè)EXCLUSIVE狀態(tài)下的記錄,將返回一個(gè)錯(cuò)誤。     START DATABSE db_name WITH LOG IN “pathname”  啟動(dòng)事務(wù)處理。  “pathname”:事務(wù)處理日志文件。  執(zhí)行該語句前,需要先關(guān)閉當(dāng)前數(shù)據(jù)庫。  例;clost database;  start databse customer with

28、0;log in “/usr/john/log/customer.log”;     BEGIN WORK  開始事務(wù)。例:begin work;     COMMIT WORK  提交(正常結(jié)束)事務(wù)。例:commit work;     ROLLBACK WORK  回滾(非正常結(jié)束)事務(wù)。例:rollback work;     SELECT  SEL

29、ECT select_list FROM tab_name|view_name  WHERE condition  GROUP BY column_name  HAVING condition  ORDER BY column_list  INTO TEMP table_name  查詢語句。  select_list:選擇表或*  tab_name:表名稱  view_name:視圖名稱。

30、60; condition:查詢條件,可使用BETWEEN、IN、LIKE、IS NULL、LIKE、MATCHES、NOT、  AND、OR、=、!=或<>、>、>= 、<=、<、ALL、ANY、SOME  column_name:分組字段名稱  condition:群聚條件  column_list:排序字段列表,缺省ASC,可指定DSC;排序時(shí),NULL值小于非零值。  table_name:臨時(shí)表名稱  例:略  附(常用函數(shù))  (1)集合函數(shù):&#

31、160; count(*)、  sum(數(shù)據(jù)項(xiàng)/表達(dá)式)、avg(數(shù)據(jù)項(xiàng)/表達(dá)式)、max(數(shù)據(jù)項(xiàng)/表達(dá)式)、min(數(shù)據(jù)項(xiàng)/表達(dá)式)  count(distinct 數(shù)據(jù)項(xiàng)/表達(dá)式)、sum(distinct數(shù)據(jù)項(xiàng)/表達(dá)式)、avg(distinct數(shù)據(jù)項(xiàng)/表達(dá)式)  (2)代數(shù)函數(shù)和三角函數(shù)  HEX(數(shù)據(jù)項(xiàng)/表達(dá)式)、ROUND(數(shù)據(jù)項(xiàng)/表達(dá)式)、TRUNC(數(shù)據(jù)項(xiàng)/表達(dá)式)、  TAN(數(shù)據(jù)項(xiàng)/表達(dá)式)、ABS(數(shù)據(jù)項(xiàng)/表達(dá)式)、MOD(被除數(shù),除數(shù))  (3)統(tǒng)計(jì)函數(shù)  標(biāo)準(zhǔn)差,stdev()、方差,va

32、riance()、范圍,rang()  (4)時(shí)間函數(shù)  DAY(日期/時(shí)間表達(dá)式):返回?cái)?shù)字型  MONTH(日期/時(shí)間表達(dá)式):返回整數(shù)  WEEKDAY(日期/時(shí)間表達(dá)式):0&#0;&#0;6,0星期天,1星期一;返回整數(shù)  YEAR(日期/時(shí)間表達(dá)式)、返回整數(shù)  DATE(非日期表達(dá)式):返回日期型  EXTEND(日期/時(shí)間表達(dá)式,第一個(gè)至最后一個(gè)):返回指定的整數(shù)  MDY(月,日,年):返回日期型  CURRENT:返回日期型  (5)時(shí)間函數(shù)  RO

33、UND(),四舍五入。如:ROUND(10.95,position)position進(jìn)行四舍五入的前一位置  TRUNC(),截取。如:TRUNC(10.95,0)position截取的位置  INFORMIX臨時(shí)表在下列情況下自動(dòng)取消:  A.退出數(shù)據(jù)庫訪問工具(如DBACCESS)  B.SQL通話結(jié)束(DISCONNECT)  C.發(fā)出取消表語句  D.退出程序時(shí)     INSERT  INSERT INTO view_name|table_name (co

34、lumn_list) VALUES (value_list)  或 INSERT INTO view_name|table_name (column_list) select_statement  插入數(shù)據(jù)  view_name|table_name:視圖名或表名稱  column_list:數(shù)據(jù)項(xiàng)列表。  value_list:值列表  select_statement:查詢語句。  例:略     DELETE 

35、FROM view_name|table_name WHERE search-conditions  刪除語句。  view_name|table_name:視圖名或表名稱  search-conditions;刪除條件  例:略  UPDATE  UPDATE view_name|table_name SET column_1 = value_1ist WHERE search_conditions  或UPDATE view_name|table_name SET 

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論