Oracle官方技術(shù)支持Les創(chuàng)建和管理表_第1頁
Oracle官方技術(shù)支持Les創(chuàng)建和管理表_第2頁
Oracle官方技術(shù)支持Les創(chuàng)建和管理表_第3頁
Oracle官方技術(shù)支持Les創(chuàng)建和管理表_第4頁
Oracle官方技術(shù)支持Les創(chuàng)建和管理表_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

創(chuàng)建和管理表目標(biāo)通過本章學(xué)習(xí),您將可以:

描述主要的數(shù)據(jù)庫對象。創(chuàng)建表。描述各種數(shù)據(jù)類型。修改表的定義。刪除,重命名和清空表。常見的數(shù)據(jù)庫對象對象 描述表基本的數(shù)據(jù)存儲集合,由行和列組成。視圖 從表中抽出的邏輯上相關(guān)的數(shù)據(jù)集合。序列 提供有規(guī)律的數(shù)值。索引 提高查詢的效率同義詞 給對象起別名命名規(guī)則表名和列名:必須以字母開頭必須在1–30個字符之間必須只能包含A–Z,a–z,0–9,_,$,和#必須不能和用戶定義的其他對象重名必須不能是Oracle的保留字CREATETABLE

語句必須具備:CREATETABLE權(quán)限存儲空間必須指定:表名列名,數(shù)據(jù)類型,尺寸CREATETABLE[schema.]table (column

datatype[DEFAULTexpr][,...]);引用其他用戶的表其他用戶定義的表不在當(dāng)前用戶的方案中應(yīng)該使用用戶名作為前綴,引用其他用戶定義的對象DEFAULT

選項(xiàng)插入時(shí)為一個列指定默認(rèn)值字符串,表達(dá)式,或SQL函數(shù)都是合法的其它列的列名和偽列是非法的默認(rèn)值必須滿足列的數(shù)據(jù)類型定義...hire_dateDATEDEFAULTSYSDATE,...

語法確認(rèn)創(chuàng)建表

CREATETABLEdept

(deptno NUMBER(2), dname VARCHAR2(14), loc VARCHAR2(13));Tablecreated.

DESCRIBEdeptOracle數(shù)據(jù)庫中的表用戶定義的表:用戶自己創(chuàng)建并維護(hù)的一組表包含了用戶所需的信息數(shù)據(jù)字典:由OracleServer自動創(chuàng)建的一組表包含數(shù)據(jù)庫信息

SELECTtable_nameFROM user_tables;SELECT *FROM user_catalog;查詢數(shù)據(jù)字典查看用戶定義的各種數(shù)據(jù)庫對象查看用戶定義的表,視圖,同義詞和序列SELECTDISTINCTobject_typeFROM user_objects;查看用戶定義的表.數(shù)據(jù)據(jù)類類型型數(shù)據(jù)據(jù)類類型型描描述述VARCHAR2(size)可變變長長字字符符數(shù)數(shù)據(jù)據(jù)CHAR(size)定長長字字符符數(shù)數(shù)據(jù)據(jù)NUMBER(p,s)可變變長長數(shù)數(shù)值值數(shù)數(shù)據(jù)據(jù)DATE日期型數(shù)據(jù)據(jù)LONG可變長字符符數(shù)據(jù),最最大可達(dá)到到2GCLOB字符數(shù)據(jù),,最大可達(dá)達(dá)到4GRAWandLONGRAW裸二進(jìn)制數(shù)數(shù)據(jù)BLOB二進(jìn)制數(shù)據(jù)據(jù),最大可可達(dá)到4GBFILE存儲外部文文件的二進(jìn)制數(shù)數(shù)據(jù),最最大可達(dá)達(dá)到4GROWID行地址日期數(shù)據(jù)據(jù)類型數(shù)據(jù)類型型描描述述TIMESTAMP時(shí)間戳INTERVALYEARTOMONTH若干年月月INTERVALDAYTOSECOND若干天到秒Oracle9i對日期的改進(jìn)進(jìn):加入了新的日日期型數(shù)據(jù)類類型.有效的存儲新新數(shù)據(jù)類型.提高對時(shí)區(qū)和和本地時(shí)區(qū)的的支持.日期數(shù)據(jù)類型型TIMESTAMP數(shù)據(jù)類型是對對DATE數(shù)據(jù)類型的擴(kuò)擴(kuò)展按DATE數(shù)據(jù)類型存放放年,月,日,小時(shí),分鐘,秒以及微秒秒甚至納秒TIMESTAMP數(shù)據(jù)類型的一一般形式:TIMESTAMP[(fractional_seconds_precision)]TIMESTAMPWITHTIMEZONETIMESTAMPWITHTIMEZONE是一個帶有時(shí)時(shí)區(qū)的TIMESTAMP時(shí)區(qū)部分按照照小時(shí)和分鐘鐘顯示本地時(shí)時(shí)區(qū)與UTC的時(shí)差TIMESTAMP[(fractional_seconds_precision)]WITHTIMEZONETIMESTAMPWITHLOCALTIMETIMESTAMPWITHLOCALTIMEZONE是一種帶有本本地時(shí)區(qū)的TIMESTAMP數(shù)據(jù)庫按照數(shù)數(shù)據(jù)庫的本地地時(shí)區(qū)存放數(shù)數(shù)據(jù)時(shí)區(qū)不顯示在在數(shù)據(jù)后面,,Oracle自動將數(shù)據(jù)轉(zhuǎn)轉(zhuǎn)換為用戶所所在的時(shí)區(qū)TIMESTAMPWITHLOCALTIMEZONE的一般形式TIMESTAMP[(fractional_seconds_precision)]WITHLOCALTIMEZONEINTERVALYEARTOMONTH數(shù)據(jù)INTERVALYEARTOMONTH存放若干年和和若干月的一一個時(shí)間段。。INTERVALYEAR[(year_precision)]TOMONTHINTERVAL'123-2'YEAR(3)TOMONTHIndicatesanintervalof123years,2months.INTERVAL'123'YEAR(3)Indicatesanintervalof123years0months.INTERVAL'300'MONTH(3)Indicatesanintervalof300months.INTERVAL'123'YEARReturnsanerror,becausethedefaultprecisionis2,and'123'has3digits.INTERVALDAYTOSECOND數(shù)據(jù)INTERVALDAYTOSECOND存放若干天天到若干秒秒的一個時(shí)時(shí)間段INTERVALDAY[(day_precision)]TOSECOND[(fractional_seconds_precision)]INTERVAL'45:12:10.222'DAYTOSECOND(3)Indicates4days,5hours,12minutes,10seconds,and222thousandthsofasecond.INTERVAL'123'YEAR(3).INTERVAL'7'DAYIndicates7days.INTERVAL'180'DAY(3)Indicates180days.INTERVALDAYTOSECOND數(shù)據(jù)INTERVALDAYTOSECOND存放若干天天到若干秒秒的一個時(shí)時(shí)間段INTERVAL'45:12:10.222'DAYTOSECOND(3)Indicates4days,5hours,12minutes,10seconds,and222thousandthsofasecond.INTERVAL'45:12'DAYTOMINUTEIndicates4days,5hoursand12minutes.INTERVAL'4005'DAY(3)TOHOURIndicates400days5hours.INTERVAL'11:12:10.2222222'HOURTOSECOND(7)indicates11hours,12minutes,and10.2222222seconds.使用子查詢詢創(chuàng)建表時(shí)候用ASsubquery選項(xiàng),將創(chuàng)創(chuàng)建表和插插入數(shù)據(jù)結(jié)結(jié)合起來指定的列和和子查詢中中的列要一一一對應(yīng)通過列名和和默認(rèn)值定定義列CREATETABLEtable[(column,column...)]ASsubquery;使用子查詢詢創(chuàng)建表舉舉例DESCRIBEdept80CREATETABLEdept80ASSELECTemployee_id,last_name,salary*12ANNSAL,hire_dateFROMemployeesWHEREdepartment_id=80;Tablecreated.ALTERTABLE語句使用ALTERTABLE語句可以:追加新的列列修改現(xiàn)有的的列為新追加的的列定義默默認(rèn)值刪除一個列列ALTERTABLE語句使用ALTERTABLE語句追加,修改,或刪除列的語語法.ALTERTABLEtableADD(columndatatype[DEFAULTexpr][,columndatatype]...);ALTERTABLEtableMODIFY(columndatatype[DEFAULTexpr][,columndatatype]...);ALTERTABLEtableDROP(column);追加加一一個個新新列列DEPT80追加加一一個個新新列列DEPT80新列列追加加一一個個新新列列使用用ADD子句句追追加加一一個個新新列列新列列是是表表中中的的最最后后一一列列ALTERTABLEdept80ADD(job_idVARCHAR2(9));Tablealtered.修改改一一個個列列可以以修修改改列列的的數(shù)數(shù)據(jù)據(jù)類類型型,尺寸寸,和默默認(rèn)認(rèn)值值對默默認(rèn)認(rèn)值值的的修修改改只只影影響響今今后后對對表表的的修修改改ALTERTABLE dept80MODIFY (last_nameVARCHAR2(30));Tablealtered.刪除除一一個個列列使用用DROPCOLUMN子句刪除除不再需需要的列列.ALTERTABLEdept80DROPCOLUMNjob_id;Tablealtered.ALTERTABLEtableSETUNUSED(column);ALTERTABLEtableSETUNUSEDCOLUMNcolumn;SETUNUSED選項(xiàng)使用SETUNUSED使一個或或多個列列被標(biāo)記記為不可可用使用DROPUNUSEDCOLUMNS選項(xiàng)刪除除不可用用的列ORALTERTABLEtableDROPUNUSEDCOLUMNS;刪除表數(shù)據(jù)和結(jié)結(jié)構(gòu)都被被刪除所有正在在運(yùn)行的的相關(guān)事事物被提提交所有相關(guān)關(guān)索引被被刪除DROPTABLE語句不能能回滾DROPTABLEdept80;Tabledropped.改變對對象的的名稱稱執(zhí)行RENAME語句必須是對象的擁有者RENAMEdeptTOdetail_dept;Tablerenamed.清空表TRUNCATETABLE語句:刪除表中所有有的數(shù)據(jù)釋放表的存儲儲空間TRUNCATE語句不能回滾滾可以使用DELETE語句刪除數(shù)據(jù)據(jù)Tabletruncated.表的注釋使用COMMENT語句給表或列列添加注釋可以通過下列列數(shù)據(jù)字典視視圖查看所添添加的注釋:ALL_COL_COMMENTSUSER_COL_COMMENTSALL_TAB_COMMENTSUSER_TAB_COMM

溫馨提示

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

評論

0/150

提交評論