日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

          歡迎訪問 生活随笔!

          生活随笔

          當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

          编程问答

          Oracle里default什么意思,ORACLE中默认值default的使用方法.doc

          發(fā)布時間:2025/3/20 编程问答 41 豆豆
          生活随笔 收集整理的這篇文章主要介紹了 Oracle里default什么意思,ORACLE中默认值default的使用方法.doc 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

          ORACLE中默認(rèn)值default的使用方法

          在創(chuàng)建數(shù)據(jù)庫表時,你可以指定一個 DEFAULT 值(即默認(rèn)值)。對數(shù)據(jù)庫字段使用默認(rèn)值有助于將數(shù)據(jù)庫設(shè)計(jì)問題與應(yīng)用程序代碼隔離。

          可以在以后某個時候通過一條 ALTER TABLE 命令改變一個字段的默認(rèn)值,改變之后應(yīng)用程序代碼會立即開始使用新值。

          有一點(diǎn)是很重要的,即 DEFAULT 值只有當(dāng)一個字段沒有在 INSERT 或 MERGE 中指定值,或者使用了 DEFAULT 關(guān)鍵字時才會使用。如果你不顯式地聲明一個 DEFULAT 值,Oracle 將隱式地將默認(rèn)值定義為 NULL,而且 DEFAULT 關(guān)鍵字也是這樣。從 Oracle 9i開始,可以在 DEFAULT 子句中使用諸如 SYSDATE 或 CURRENT_TIMESTAMPE 之類的偽字段。例如:

          create table t1(???? id$ integer not null,???? charcol char default 'Y',???? datecol date default sysdate,???? strcol varchar2(30) default user,???? intcol integer default 12);insert into t1 (id$) values (1);select * from t1;?????? ID$ C DATECOL??? STRCOL????????????????????????????? INTCOL---------- - --------- ------------------------------ ----------????????? 1 Y 28-MAY-04 SCOTT?????????????????????????????????? 12

          DEFAULT 關(guān)鍵字與INSERT、MERGE 或UPDATE 語法比起來可以看上去沒有那么必要,但是想一下如果你希望在插入一列數(shù)據(jù)時使用所有默認(rèn)值,那么你就不會這么認(rèn)為了。Oracle 不接受INSERT INTO

          create table t2(charcol char default 'Y',datecol date default sysdate);insert into t2 (charcol) values (default);select * from t2;C DATECOL- ---------Y 28-MAY-04

          一個常見的問題

          一個常見的問題是模擬其它數(shù)據(jù)庫提供商的 Autonumber 功能,該功能是使用某種順序數(shù)字自動地填充某個字段。在 Oracle 數(shù)據(jù)庫中,不能指定一個順序數(shù)字作為一個字段的 DEFAULT 值;然而,可以使用觸發(fā)器模擬這一功能。即使一個字段聲明為 NOT NULL,也依然可以在 INSERT 語句中忽略這個字段,而使用一個觸發(fā)器來填充該字段的值。注意使用 DEFAULT 關(guān)鍵字比使用顯式的 NULL 可讀性要好。

          create sequence t3_seq;create table t3(id$ integer constraint t3_pk primary key);create or replace trigger t3_autonumberbefore insert on t3 for each rowbegin???? if :new.id$ is null then??????? select t3_seq.nextval into :new.id$ from dual;???? end if;end;/show errors;insert into t3(id$) values (default);select * from t3;??????? ID$----------????????? 1

          可以使用SYS_CONTEXT 值的集合中的默認(rèn)值來填充字段,并收集有關(guān)某處一個會話的重要信息:

          create table t4(???? when date default SYSDATE,???? db_domain varchar2(200) default SYS_CONTEXT('USERENV','DB_DOMAIN'),???? host varchar2(256) default

          總結(jié)

          以上是生活随笔為你收集整理的Oracle里default什么意思,ORACLE中默认值default的使用方法.doc的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

          如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。