freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

oracle數(shù)據(jù)庫(kù)應(yīng)用-dt0-董天寧(編輯修改稿)

2025-07-25 08:07 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 RAINT CK_INFOS_GENDER CHECK(GENDER = 39。男39。 OR GENDER = 39。女39。) ③/ALTER TABLE INFOS ADD CONSTRAINT CK_INFOS_SEAT CHECK(SEAT =0 AND SEAT =50) ④/ALTER TABLE INFOS ADD CONSTRAINT CK_INFOS_AGE CHECK(AGE =0 AND AGE=100) ⑤/ALTER TABLE INFOS ADD CONSTRAINT CK_INFOS_CLASSNO CHECK((CLASSNO =39。100139。 AND CLASSNO=39。199939。) OR (CLASSNO =39。200139。 AND CLASSNO=39。299939。)) ⑥/ALTER TABLE INFOS ADD CONSTRAINTS UN_STUNAME UNIQUE(STUNAME) ⑦/代碼解析:①——在Oracle代碼中,“/”執(zhí)行緩存區(qū)中的語(yǔ)句,由于緩沖區(qū)中只存儲(chǔ)一條剛剛保存過(guò)語(yǔ)句,由于每條語(yǔ)句沒有用分號(hào)結(jié)尾,只是保存在緩沖區(qū),因此每條語(yǔ)句后面都有單獨(dú)一行“/”。②——?jiǎng)?chuàng)建一個(gè)主鍵約束。③ 與 ④ ⑤ ⑥ ⑦一起創(chuàng)建各種check約束。其中⑦是唯一約束,表示該列值是唯一的,列中的值不能重復(fù)。Oracle中創(chuàng)建外鍵約束與SQL Server相同。比如:現(xiàn)有成績(jī)表定義如下:案例2:創(chuàng)建一個(gè)成績(jī)表(SCORES)表和約束代碼演示:Oracle創(chuàng)建表和約束CREATE TABLE SCORES( ID NUMBER , ID ① TERM VARCHAR2(2), 學(xué)期 S1或S2 STUID VARCHAR2(7) NOT NULL, 學(xué)號(hào) EXAMNO VARCHAR2(7) NOT NULL, 考號(hào) E+班號(hào)+序號(hào) WRITTENSCORE NUMBER(4,1) NOT NULL, 筆試成績(jī) LABSCORE NUMBER(4,1) NOT NULL 機(jī)試成績(jī))ALTER TABLE SCORES ADD CONSTRAINT CK_SCORES_TERM CHECK(TERM = 39。S139。 OR TERM =39。S239。)/ALTER TABLE SCORES ADD CONSTRAINT FK_SCORES_INFOS_STUID FOREIGN KEY(STUID) REFERENCES INFOS(STUID) ②/代碼解析:①——SQL Server中可以使用identity創(chuàng)建自動(dòng)增長(zhǎng)列,但是Oracle中的自動(dòng)增長(zhǎng)需要借助序列(Sequence)完成,在后面章節(jié)中講解。②——Oracle中的外鍵約束定義。 數(shù)據(jù)操縱語(yǔ)言(DML)數(shù)據(jù)操縱語(yǔ)言(DML)用于對(duì)數(shù)據(jù)庫(kù)的表中數(shù)據(jù)進(jìn)行添加、修改、刪除和查詢(后面專門學(xué)習(xí)該查詢)操作。對(duì)比一期學(xué)習(xí)過(guò)的SQL Server操作,接下來(lái)一一介紹在Oracle中的操作。 簡(jiǎn)單查詢數(shù)據(jù)查詢是用SELECT命令從數(shù)據(jù)庫(kù)的表中提取信息。SELECT語(yǔ)句的語(yǔ)法是:語(yǔ)法結(jié)構(gòu):簡(jiǎn)單查詢SELECT *|列名|表達(dá)式 FROM 表名 WHERE 條件 ORDER BY 列名語(yǔ)法解析:1. *表示表中的所有列。2. 列名可以選擇若干個(gè)表中的列名,各個(gè)列表中間用逗號(hào)分隔。3. 表達(dá)式可以是列名、函數(shù)、常數(shù)等組成的表達(dá)式。4. WHERE子句是查詢的條件。5. ORDER BY 要求在查詢的結(jié)果中排序,默認(rèn)是升序。圖 數(shù)據(jù)查詢 Oracle中可以把查詢的結(jié)果根據(jù)結(jié)果集中的表結(jié)構(gòu)和數(shù)據(jù)形成一張新表。語(yǔ)法結(jié)構(gòu):根據(jù)結(jié)果集創(chuàng)建表CREATE TABLE 表名 AS SELECT語(yǔ)句代碼演示:根據(jù)結(jié)果集創(chuàng)建表SQL CREATE TABLE INFOS1 AS SELECT * FROM INFOS。 TABLE CREATED使用上面命令創(chuàng)建的新表中,不存在任何約束,并且把查詢的數(shù)據(jù)一起插入到新表中。如果只復(fù)制表結(jié)構(gòu),只需使查詢的條件不成立(比如where 1=2),就不會(huì)查詢從出任何數(shù)據(jù),從而復(fù)制一個(gè)表結(jié)構(gòu)。 代碼演示:復(fù)制表結(jié)構(gòu)SQL CREATE TABLE INFOS2 AS SELECT * FROM INFOS WHERE 1=2。 TABLE CREATED 數(shù)據(jù)插入用INSERT命令完成對(duì)數(shù)據(jù)的插入。語(yǔ)法結(jié)構(gòu):根據(jù)結(jié)果集創(chuàng)建表INSERT INTO 表名(列名1,列名2……) VALUES (值1,值2……)語(yǔ)法解析:列名可以省略。當(dāng)省略列名時(shí),默認(rèn)是表中的所有列名,列名順序?yàn)楸矶x中列的先后順序。值的數(shù)量和順序要與列名的數(shù)量和順序一致。值的類型與列名的類型一致。代碼演示:向INFOS表和SCORES表中插入數(shù)據(jù)SQL INSERT INTO INFOS VALUES ( ① 2 39。s10010239。, 39。林沖39。, 39。男39。, 22, 2, 3 TO_DATE(39。200989 06:30:1039。,39。 YYYYMMDD HH24:MI:SS 39。), ② 4 39。西安39。, 39。100139。 5 ) 6 /1 row insertedSQL INSERT INTO INFOS VALUES (39。s10010439。,39。阮小二39。,39。男39。,26,3,SYSDATE,default,39。100139。)。 ③ 1 row insertedSQLCOMMIT。 ④代碼解析:①——表名后面缺省了列名,默認(rèn)是表Infos中的所有列名,values中的值要與表中列一一對(duì)應(yīng),包括順序和數(shù)據(jù)類型的對(duì)應(yīng)。在SQL*Plus中一條語(yǔ)句可以寫在多行,那么從第二行開始,sqlplus會(huì)為每一行前面給出行號(hào)。②——在Oracle中,日期是國(guó)際化的,不同的區(qū)域安裝的數(shù)據(jù)庫(kù),默認(rèn)的日期格式不同,因此為了程序便于移植,日期的輸入要使用TO_DATE函數(shù)對(duì)日期格式化后輸入,采用格式化字符串對(duì)日期進(jìn)行格式化時(shí),格式化字符串中字符不區(qū)分大小寫,常見的格式化字符如下:yyyy表示四位年份mm表示兩位月份,比如3月表示為03dd表示兩位日期hh24表示小時(shí)從023,hh12也表示小時(shí)從011。mi 表示分鐘ss表示秒③——在遇到存在默認(rèn)值的列時(shí),可以使用default值代替。④——mit是把用戶操作(添加、刪除、修改操作)提交,只有提交操作后,數(shù)據(jù)才能真正更新到表中,否則其他用戶無(wú)法查詢到當(dāng)前用戶操作的結(jié)果。在Oracle中,一個(gè)INSERT命令可以把一個(gè)結(jié)果集一次性插入到一張表中。使用的語(yǔ)句是:INSERT INTO 表 SELECT子句,如下示例:代碼演示:INSERT向表中插入一個(gè)結(jié)果集SQL INSERT INTO INFOS2 SELECT * FROM INFOS。 5 rows inserted在這種語(yǔ)法下,要求結(jié)果集中每一列的數(shù)據(jù)類型必須與表中的每一列的數(shù)據(jù)類型一致,結(jié)果集中的列的數(shù)量與表中的列的數(shù)量一致。比如表INFOS2,該表的結(jié)構(gòu)與INFO表一樣,那么可以把INFO表中的所有記錄一次性插入到INFOS2表中。Oracle的簡(jiǎn)單查詢和SQL Server一樣都可以在查詢列中使用常量,如圖: 圖 Select中的常量可以使用剛才的做法,把該結(jié)果集中的數(shù)據(jù)插入到表INFOS中。代碼演示:INSERT向表中插入一個(gè)常量結(jié)果集SQL INSERT INTO INFOSSELECT 39。s10010639。,39。盧俊義39。,39。男39。,23,5, TO_DATE(39。200989 08:00:1039。,39。YYYYMMDD HH24:MI:SS39。), 39。青龍寺39。,39。100139。 FROM DUAL。 1 rows inserted SQLCOMMIT。 更新數(shù)據(jù)Oracle在表中更新數(shù)據(jù)的語(yǔ)法是:語(yǔ)法結(jié)構(gòu):UPDATE操作UPDATE 表名 SET 列名1=值,列名2=值…… WHERE 條件代碼演示:UPDATE操作SQL UPDATE INFOS SET CLASSNO=39。100239。,STUADDRESS=39。山東萊蕪39。 WHERE STUNAME=39。阮小二39。 1 rows updated SQL mit。 刪除數(shù)據(jù)Oracle在表中刪除數(shù)據(jù)的語(yǔ)法是:語(yǔ)法結(jié)構(gòu):DELETE操作DELETE FROM表名 WHERE 條件代碼演示:DELETE操作SQL DELETE FROM INFOS WHERE STUID=39。s10010339。 1 ROW DELETED SQL COMMIT。 TRUNCATE在數(shù)據(jù)庫(kù)操作中, TRUNCATE命令(是一個(gè)DDL命令)可以把表中的所有數(shù)據(jù)一次性全部刪除,語(yǔ)法是:語(yǔ)法結(jié)構(gòu):TRUNCATETRUNCATE TABLE 表名TRUNCATE和DELETE都能把表中的數(shù)據(jù)全部刪除,他們的區(qū)別是:TRUNCATE是DDL命令,刪除的數(shù)據(jù)不能恢復(fù);DELETE命令是DML命令,刪除后的數(shù)據(jù)可以通過(guò)日志文件恢復(fù)。如果一個(gè)表中數(shù)據(jù)記錄很多,TRUNCATE相對(duì)DELETE速度快。由于TRUNCATE命令比較危險(xiǎn),因此在實(shí)際開發(fā)中,TRUNCATE命令慎用。提 示Oracle默認(rèn)安裝中,已經(jīng)創(chuàng)建了一個(gè)SCOTT用戶,默認(rèn)密碼是:tiger,該用戶下有四張表分別是:雇員表(EMP),部門表(DEPT),工資登記表和獎(jiǎng)金表,請(qǐng)參考本章后面的附表。接下來(lái)很多操作都是在該用戶下完成的。 操作符Oracle開發(fā)中,依然存在算術(shù)運(yùn)算,關(guān)系運(yùn)算,和邏輯運(yùn)算。 算術(shù)運(yùn)算Oracle中的算術(shù)運(yùn)算符,沒有C中的算術(shù)運(yùn)算符豐富,只有+、*、/四個(gè),其中除號(hào)(/)的結(jié)果是浮點(diǎn)數(shù)。求余運(yùn)算只能借助函數(shù):MOD(x,y):返回x除以y的余數(shù)。案例3:每名員工年終獎(jiǎng)是2000元,請(qǐng)顯示基本工資在2000元以上的員工的月工資,年總工資。該案例的表請(qǐng)參見本章練習(xí)的附表附表附表3,這三張表是ORACLE 10g自帶的。代碼演示:查詢中的算術(shù)運(yùn)算SQL SELECT ENAME , SAL , (SAL*12+2000) FROM EMP WHERE SAL2000。 ENAME SAL (SAL*12+2000) JONES 2975 37700 BLAKE 2850 36200 CLARK 2450 31400 SCOTT 3000 38000 KING 5000 62000 FORD 3000 380006 rows selected 關(guān)系運(yùn)算和邏輯運(yùn)算Oracle中Where子句經(jīng)中經(jīng)常見到關(guān)系運(yùn)算和邏輯運(yùn)算,常見的關(guān)系運(yùn)算有:運(yùn)算符說(shuō)明運(yùn)算符說(shuō)明=等于大于或者!=不等于=小于或者等于小于=大于或者等于表 Oracle的關(guān)系運(yùn)算符邏輯運(yùn)算符有三個(gè):AND、OR、NOT關(guān)系運(yùn)算和邏輯運(yùn)算與前面SQL Server學(xué)習(xí)過(guò)的一致。字符串連接操作符(||)在Oracle中,字符串的連接用雙豎線(||)表示。比如,在EMP表中,查詢工資在2000元以上的姓名以及工作。代碼演示:字符串連接SQL SELECT (ENAME || 39。is a 39。 || JOB) AS Employee Details ① 2 FROM EMP 3 WHERE SAL2000。 Employee DetailsJONESis a MANAGERBLAKEis a MANAGERCLARKis a MANAGERSCOTTis a ANALYSTKINGis a PRESIDENTFORDis a ANALYST 6 rows selected代碼解析:①——Oracle中字符串可以用單引號(hào),也可以用雙引號(hào),在別名中存在空格時(shí),必須用雙引號(hào)。在表名、列名時(shí)用雙引號(hào)。 高級(jí)查詢?cè)诘谝黄趯W(xué)習(xí)過(guò)SQL的簡(jiǎn)單查詢和連接查詢?,F(xiàn)在學(xué)習(xí)一些新的SQL操作符。 消除重復(fù)行在Oracle查詢中結(jié)果中,可能出現(xiàn)若干行相同的情況,那么可以使用DISTINCT消除重復(fù)行。具體的用法如示例:代碼演示:DISTINCT消除重復(fù)行SQL SELECT DISTINCT DEPTNO FROM EMP。 DEPTNO302010 NULL操作如果某條記錄中有缺少的數(shù)據(jù)值,就是空值(NULL值)??罩挡坏扔?或者空格,空值是指未賦值、未知或不可用的值。任何數(shù)據(jù)類型的列都可以包括NULL值,除非該列被定義為非空或者主鍵。 代碼演示:EMP中的NULL值SQL SELECT ENAME,JOB,SAL,COMM FROM EMP WHERE SAL2000。ENAME JOB SAL COMM SMITH CLERK 800 ALLEN SALESMAN 1600 300 WARD SALESMAN 1250
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1