精品丰满熟女一区二区三区_五月天亚洲欧美综合网_亚洲青青青在线观看_国产一区二区精选

  • <menu id="29e66"></menu>

    <bdo id="29e66"><mark id="29e66"><legend id="29e66"></legend></mark></bdo>

  • <pre id="29e66"><tt id="29e66"><rt id="29e66"></rt></tt></pre>

      <label id="29e66"></label><address id="29e66"><mark id="29e66"><strike id="29e66"></strike></mark></address>
      學(xué)習(xí)啦 > 學(xué)習(xí)英語(yǔ) > 專業(yè)英語(yǔ) > 計(jì)算機(jī)英語(yǔ) > 數(shù)據(jù)庫(kù)中default的用法正確使用方法

      數(shù)據(jù)庫(kù)中default的用法正確使用方法

      時(shí)間: 長(zhǎng)思709 分享

      數(shù)據(jù)庫(kù)中default的用法正確使用方法

        數(shù)據(jù)庫(kù)中default的用法的正確使用方法你清楚嗎,今天學(xué)習(xí)啦小編就跟大家詳細(xì)介紹下數(shù)據(jù)庫(kù)中default的用法,希望能幫到大家。

        數(shù)據(jù)庫(kù)中default的用法的用法

        SQL Server數(shù)據(jù)庫(kù)default value的使用方法的總結(jié)是本文我們主要要介紹的內(nèi)容,接下來(lái)我們就開(kāi)始介紹這部分內(nèi)容,希望能夠?qū)δ兴鶐椭?/p>

        1.在創(chuàng)建表的時(shí)候,給字段添加的默認(rèn)值約束

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

        注意:

        此時(shí)默認(rèn)值約束,沒(méi)有約束名稱。DMBS會(huì)自動(dòng)的給添加一個(gè)“默認(rèn)值約束名稱”,注意varchar類型和int類型在DEFAULT 中的寫法:分別用‘’和()把value值包起來(lái)。

        2.在創(chuàng)建表之后,給字段添加的默認(rèn)值約束

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

        注意:

        此時(shí),必須編寫一個(gè)約束名稱,防止重名。

        3.修改字段原有的默認(rèn)值約束

        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')

        注意:

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

        關(guān)于SQL Server數(shù)據(jù)庫(kù)default value的使用的總結(jié)就介紹到這里了,希望本次的介紹能夠?qū)δ兴斋@!

        數(shù)據(jù)庫(kù)中default的用法詳解示例

        有一點(diǎn)是很重要的,即 DEFAULT 值只有當(dāng)一個(gè)字段沒(méi)有在 INSERT 或 MERGE 中指定值,或者使用了 DEFAULT 關(guān)鍵字時(shí)才會(huì)使用。如果你不顯式地聲明一個(gè) DEFULAT 值,Oracle 將隱式地將默認(rèn)值定義為 NULL,而且 DEFAULT 關(guān)鍵字也是這樣。從 oracle 9i開(kāi)始,可以在 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 語(yǔ)法比起來(lái)可以看上去沒(méi)有那么必要,但是想一下如果你希望在插入一列數(shù)據(jù)時(shí)使用所有默認(rèn)值,那么你就不會(huì)這么認(rèn)為了。Oracle 不接受INSERT INTO 或INSERT INTO VALUES () 作為有效的 SQL。必須指定至少一個(gè)字段,但是可以使用 DEFAULT 關(guān)鍵字來(lái)允許使用默認(rèn)值,而非硬編碼值,所以下面是有效的語(yǔ)法,它將使用所有 DEFAULT 值創(chuàng)建一行記錄。

        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ù)庫(kù)中default的用法常見(jiàn)問(wèn)題

        一個(gè)常見(jiàn)的問(wèn)題是模擬其它數(shù)據(jù)庫(kù)提供商的 Autonumber 功能,該功能是使用某種順序數(shù)字自動(dòng)地填充某個(gè)字段。在 Oracle 數(shù)據(jù)庫(kù)中,不能指定一個(gè)順序數(shù)字作為一個(gè)字段的 DEFAULT 值;然而,可以使用觸發(fā)器模擬這一功能。即使一個(gè)字段聲明為 NOT NULL,也依然可以在 INSERT 語(yǔ)句中忽略這個(gè)字段,而使用一個(gè)觸發(fā)器來(lái)填充該字段的值。注意使用 DEFAULT 關(guān)鍵字比使用顯式的 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 值的集合中的默認(rèn)值來(lái)填充字段,并收集有關(guān)某處一個(gè)會(huì)話的重要信息:

        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 來(lái)填充一個(gè)字段;它具有全局唯一性的優(yōu)點(diǎn),并且不需要順序數(shù)字或觸發(fā)器開(kāi)銷:

        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.數(shù)據(jù)庫(kù)中round的用法

      2.數(shù)據(jù)庫(kù)中drop的用法

      3.c語(yǔ)言中default的用法

      4.數(shù)據(jù)庫(kù)中top的用法

      5.數(shù)據(jù)庫(kù)中join的用法

      543160