久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長(zhǎng)資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      oracle表怎么增加列

      在oracle中,可以使用“ALTER TABLE ADD”語句來向表中添加一列或多列,語法“ALTER TABLE table_name ADD column_name data_type constraint;”。

      oracle表怎么增加列

      本教程操作環(huán)境:Windows7系統(tǒng)、Oracle 11g版、Dell G3電腦。

      在oracle中,可以使用“ALTER TABLE ADD”語句來向表中添加一列或多列。

      要將新列添加到表中,請(qǐng)按如下所示使用ALTER TABLE語句:

      ALTER TABLE table_name  ADD column_name data_type constraint;

      在上面這個(gè)語句中,

      • 首先,在ALTER TABLE子句之后指定要添加新列的表的名稱。
      • 其次,指定列名,數(shù)據(jù)類型及其約束。

      請(qǐng)注意,不能添加表中已經(jīng)存在的列; 這樣做會(huì)導(dǎo)致錯(cuò)誤。 另外,ALTER TABLE ADD列語句在表的末尾添加新列。 Oracle沒有提供直接的方法來允許您像其他數(shù)據(jù)庫系統(tǒng)(如MySQL)那樣指定新列的位置。

      如果想要添加多個(gè)列,請(qǐng)使用以下語法:

      ALTER TABLE table_name  ADD (     column_name_1 data_type constraint,     column_name_2 data_type constraint,     ... );

      在這個(gè)語法中,用逗號(hào)分隔兩列。

      Oracle ALTER TABLE ADD列的例子

      下面來創(chuàng)建一個(gè)名為members的表。參考以下SQL語句 –

      -- 12c語法 CREATE TABLE members(     member_id NUMBER GENERATED BY DEFAULT AS IDENTITY,     first_name VARCHAR2(50),     last_name VARCHAR2(50),     PRIMARY KEY(member_id) );

      以下語句將一個(gè)名為birth_date的新列添加到members表中:

      ALTER TABLE members  ADD birth_date DATE NOT NULL;

      在這個(gè)例子中,birth_date列是一個(gè)DATE列,它不接受null。

      假設(shè)想記錄一行的創(chuàng)建和更新的時(shí)間。那么可以再添加兩列created_atupdated_at,如下所示:

      ALTER TABLE     members ADD(         created_at TIMESTAMP WITH TIME ZONE NOT NULL,         updated_at TIMESTAMP WITH TIME ZONE NOT NULL     );

      created_atupdated_at列的數(shù)據(jù)類型是TIMESTAMP WITH TIME ZONE。 這些列也不接受null。

      要檢查表中是否存在列,可以從user_tab_cols視圖查詢數(shù)據(jù)。 例如,以下語句將檢查members表是否具有first_name列。

      SELECT     COUNT(*) FROM     user_tab_cols WHERE     column_name = 'FIRST_NAME'     AND table_name = 'MEMBERS';

      當(dāng)想在添加表之前檢查列中是否存在列時(shí),此查詢就派上用場(chǎng)了。
      例如,下面的PL/SQL塊在添加之前檢查members表是否有effective_date列。

      SET SERVEROUTPUT ON SIZE 1000000 DECLARE   v_col_exists NUMBER  BEGIN   SELECT count(*) INTO v_col_exists     FROM user_tab_cols     WHERE column_name = 'EFFECTIVE_DATE'       AND table_name = 'MEMBERS';     IF (v_col_exists = 0) THEN       EXECUTE IMMEDIATE 'ALTER TABLE members ADD effective_date DATE';    ELSE     DBMS_OUTPUT.PUT_LINE('The column effective_date already exists');   END IF; END; /

      如果第一次執(zhí)行該塊,那么effective_date列將被添加到members表的末尾。 但是,一旦從第二次執(zhí)行它,將看到以下消息:

      The column effective_date already exists

      這與上面編寫的程序的預(yù)期一致。

      推薦教程:《Oracle教程》

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)