<em id="0a85b"><option id="0a85b"></option></em>

<abbr id="0a85b"></abbr>

      <nobr id="0a85b"></nobr>
        <tr id="0a85b"></tr>
        9久久伊人精品综合,亚洲一区精品视频在线,成 人免费va视频,国产一区二区三区黄网,99国产精品永久免费视频,亚洲毛片多多影院,精品久久久无码人妻中文字幕,无码国产欧美一区二区三区不卡
        學習啦 > 學習英語 > 專業英語 > 計算機英語 > 數據庫中default的用法正確使用方法

        數據庫中default的用法正確使用方法

        時間: 長思709 分享

        數據庫中default的用法正確使用方法

          數據庫中default的用法的正確使用方法你清楚嗎,今天學習啦小編就跟大家詳細介紹下數據庫中default的用法,希望能幫到大家。

          數據庫中default的用法的用法

          SQL Server數據庫default value的使用方法的總結是本文我們主要要介紹的內容,接下來我們就開始介紹這部分內容,希望能夠對您有所幫助。

          1.在創建表的時候,給字段添加的默認值約束

          CREATE TABLE "dbo"."Test" ( id int PRIMARY KEY, sex varchar(10) DEFAULT ('boy'), name varchar(40), age int DEFAULT ((1)), )

          注意:

          此時默認值約束,沒有約束名稱。DMBS會自動的給添加一個“默認值約束名稱”,注意varchar類型和int類型在DEFAULT 中的寫法:分別用‘’和()把value值包起來。

          2.在創建表之后,給字段添加的默認值約束

          alter table [dbo].[Test] add constraint Test_name_Default Default('Tom') for baseCurrencyCode

          注意:

          此時,必須編寫一個約束名稱,防止重名。

          3.修改字段原有的默認值約束

          declare @csname varchar(100) set @csname= '' select @csname=[name] from sysobjects where id=(select cdefault from syscolumns where id=object_id('Test') and name='age') exec('alter table [dbo].[Test] drop constraint ' + @csname ) exec('alter table [dbo].[Test] add constraint ' + @csname + ' Default((18)) for age')

          注意:

          默認值約束,不能修改。必須先drop之后再add drop的時候,必須知道當前“默認值約束的名稱”。通過上面的sql可以查出Test表的age字段所綁定的“默認值約束名稱”,才可以drop。

          關于SQL Server數據庫default value的使用的總結就介紹到這里了,希望本次的介紹能夠對您有所收獲!

          數據庫中default的用法詳解示例

          有一點是很重要的,即 DEFAULT 值只有當一個字段沒有在 INSERT 或 MERGE 中指定值,或者使用了 DEFAULT 關鍵字時才會使用。如果你不顯式地聲明一個 DEFULAT 值,Oracle 將隱式地將默認值定義為 NULL,而且 DEFAULT 關鍵字也是這樣。從 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 關鍵字與INSERT、MERGE 或UPDATE 語法比起來可以看上去沒有那么必要,但是想一下如果你希望在插入一列數據時使用所有默認值,那么你就不會這么認為了。Oracle 不接受INSERT INTO 或INSERT INTO VALUES () 作為有效的 SQL。必須指定至少一個字段,但是可以使用 DEFAULT 關鍵字來允許使用默認值,而非硬編碼值,所以下面是有效的語法,它將使用所有 DEFAULT 值創建一行記錄。

          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

          數據庫中default的用法常見問題

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

          create sequence t3_seq;

          create table t3(id$ integer constraint t3_pk primary key);

          create or replace trigger t3_autonumber

          before insert on t3 for each row

          begin

          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 值的集合中的默認值來填充字段,并收集有關某處一個會話的重要信息:

          create table t4

          (

          when date default SYSDATE,

          db_domain varchar2(200) default SYS_CONTEXT('USERENV','DB_DOMAIN'),

          host varchar2(256) default SYS_CONTEXT('USERENV','HOST'),

          ip_address varchar2(256) default SYS_CONTEXT('USERENV','IP_ADDRESS'),

          language varchar2(256) default SYS_CONTEXT('USERENV','LANGUAGE'),

          protocol varchar2(200) default SYS_CONTEXT('USERENV','NETWORK_PROTOCOL'),

          terminal varchar2(200) default SYS_CONTEXT('USERENV','TERMINAL')

          );

          insert into t4 (when) values (default);

          select * from t4;

          WHEN

          ---------

          DB_DOMAIN

          ------------------------------------------------------------------------------

          HOST

          ------------------------------------------------------------------------------

          IP_ADDRESS

          ------------------------------------------------------------------------------

          LANGUAGE

          ------------------------------------------------------------------------------

          PROTOCOL

          ------------------------------------------------------------------------------

          TERMINAL

          ------------------------------------------------------------------------------

          28-MAY-04

          scott.bn

          MSHOME/SCOTT-LAP

          AMERICAN_AMERICA.AL32UTF8

          SCOTT-LAP

          還可以使用偽字段SYS_GUID 來填充一個字段;它具有全局唯一性的優點,并且不需要順序數字或觸發器開銷:

          create table t5(id$ raw(16) default sys_guid()

          constraint t5_pk primary key);

          insert into t5(id$) values (default);

          select * from t5;

          ID$

          --------------------------------

          643718A07DCC43F2AC95312FD43617BA


        猜你喜歡:

        1.數據庫中round的用法

        2.數據庫中drop的用法

        3.c語言中default的用法

        4.數據庫中top的用法

        5.數據庫中join的用法

        543160 主站蜘蛛池模板: 熟妇人妻无码xxx视频| 农村老熟女一区二区三区| 国产无遮挡裸体免费久久| 国产成人亚洲综合图区| 免费看婬乱a欧美大片| 亚州av第二区国产精品| 国产精品七七在线播放| 四虎在线播放亚洲成人| 丁香五月激情图片| 欧美日本在线一区二区三区| 波多野结衣久久一区二区| 韩国无码AV片午夜福利| 欧美xxxx做受欧美| 久久国产亚洲一区二区三区 | 国产成人无码一区二区三区在线| 熟妇的奶头又大又长奶水视频 | 亚洲av无码精品蜜桃| 精品无码国产污污污免费| 男女做aj视频免费的网站| 亚洲成av人片色午夜乱码| 澳门永久av免费网站| 天堂网亚洲综合在线| 韩国精品视频在线日韩| 国产不卡一区二区在线视频| 女人喷液抽搐高潮视频| 国产91专区一区二区| 亚洲欧美日韩综合一区在线| 人妻丝袜AV中文系列先锋影音| 国内少妇偷人精品免费| 黑人av无码一区| 国内精品免费久久久久电影院97| 秋霞人妻无码中文字幕| 2021国产成人精品久久| 丰满人妻熟妇乱又仑精品| 国语做受对白XXXXX在线| 亚洲国产一区二区精品专| 伊人精品成人久久综合97| 东京热人妻无码一区二区av| 元码人妻精品一区二区三区9| 婷婷婷国产在线视频| 国产精品国产高清国产专区 |