• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            山寨:不是最好的,是最適合我們的!歡迎體驗(yàn)山寨 中文版MSDN

            Blog @ Blog

            當(dāng)華美的葉片落盡,生命的脈絡(luò)才歷歷可見。 -- 聶魯達(dá)

            常用鏈接

            統(tǒng)計(jì)

            積分與排名

            BBS

            Blog

            Web

            最新評(píng)論

            用SQL創(chuàng)建數(shù)據(jù)庫

            首先說說怎么用SQL語句創(chuàng)建數(shù)據(jù)庫,創(chuàng)建數(shù)據(jù)庫的語句有如下幾種:  
               
            1CREATE TABLE(創(chuàng)建新表)  
               
            2CREATE INDEX(增加索引)  
               
            3DROP INDEX(刪除索引)  
               
            4CONSTRAINT(約束語句)  
               
            5ALTER TABLE(修改表)  
               
            6DROP TABLE(刪除表)  

            CREATE TABLE語句:  
            在數(shù)據(jù)庫中生成新表,表中字段的類型可以為:
            INTEGER(整型)、LONG(長(zhǎng)整型)、 SINGLE(單精度浮點(diǎn)數(shù))、DOUBLE(雙精度浮點(diǎn)數(shù))、DATETIME(日期型,也可以寫成DATE)、BIT(布爾型)、 TEXT(字符串型,最大255個(gè)字節(jié))、MEMO(字符串型,最大可達(dá)1.2G字節(jié))、 COUNTER(自動(dòng)遞增長(zhǎng)整型,可確定記錄的唯一性)、CURRENCY(貨幣型,精確到小數(shù)點(diǎn)左邊15位,右邊4位)、 BINARY(字節(jié)型,最大255個(gè))、LONGBINARY(用于OLE對(duì)象)、GUID(全局唯一標(biāo)識(shí)符)。   
            生成表NewTable,該表有文本字段Field1和整型字段Field2,表名和字段名可以隨便你取,不區(qū)分大小寫,但是,有些保留字不能用作表名字段名,比如Number   
            CREATE TABLE NewTable(Field1 TEXT(30), Field2 INTEGER);   
            CREATE INDEX語句:  
            INDEX是為了加快查找記錄的速度,或者是為了增加字段約束關(guān)系而設(shè)置的。   
            創(chuàng)建索引語句執(zhí)行前表中可以有記錄,但存在的記錄必須滿足該索引語句的約束關(guān)系,否則語句不能執(zhí)行,另外要注意的是在同一個(gè)數(shù)據(jù)庫中(而不僅僅是在同一個(gè)表中),索引名不能相同,否則語句也會(huì)失敗。   
            生成字段Field1的索引字段NewIndex,兩條語句作用相同  
            生成后Field1字段可以有相同的值,可以有空值(
            NULL)   
            CREATE INDEX NewIndex ON NewTable (Field1);  
            CREATE INDEX NewIndex ON NewTable (Field1) WITH IGNORE NULL;  

            生成字段Field1的索引字段NewIndex,注意,每個(gè)表里只能有一個(gè)主索引(
            PRIMARY)。生成后Field1字段不能有相同的值,不能有空值(當(dāng)然,如果是TEXT類型,可以有一個(gè)空串,但是空串不是空值)   
            CREATE INDEX NewIndex ON NewTable(Field1) WITH PRIMARY;  

            字段Field1不能有相同的值,但可以有空值(兩個(gè)空值不算相同的值)   
            CREATE UNIQUE INDEX NewIndex ON NewTable(Field1);  

            字段Field1可以有相同的值,但不能有空值   
            CREATE INDEX NewIndex ON NewTable(Field2) WITH DISALLOW NULL  

            可以在索引語句中加入ASC(升序)或DESC(降序)來控制記錄排列順序如果不使用順序字,SQL則默認(rèn)使用ASC順序   
            CREATE INDEX NewIndex ON NewTable(Field1 ASC, Field2 DESC);   
            DROP INDEX語句:  
            刪除表NewTable中的索引NewIndex,語句執(zhí)行前索引NewIndex必須存在   
            DROP INDEX NewIndex ON NewTable;  

            CONSTRAINT語句:  
            CONSTRAINT子句用于創(chuàng)建數(shù)據(jù)庫完整性的索引,它和INDEX語句作用一樣,有些地方可以互相替代,它可以使用PRIMARY 
            KEY(主關(guān)鍵字),UNIQUE(唯一)和FOREIGN KEY(外部關(guān)鍵字),和INDEX相比不能使用IGNOR NULL和DISALLOW NULL,但多了FOREIGN KEY(這也是它最強(qiáng)大的地方)。另外, CONSTRAINT語句必須和CREATE TABLE或ALTER TABLE語句一起使用。   
            生成表NewTable,主關(guān)鍵字段是Field1,主索引是NewPK   
            CREATE TABLE NewTable(Field1 LONG CONSTRAINT NewPK PRIMARY KEY, Field2 MEMO, Field3 DATETIME);  


            生成索引為NewUK的表NewTable,F(xiàn)ield1不能有相同值,可以有空值   
            CREATE TABLE NewTable(Field1 INTEGER CONSTRAINT NewUK UNIQUE);  


            生成多列的主索引,兩條記錄的Field1和Field2不能全部相同,也不能為空值   
            CREATE TABLE NewTable(Field1 INTEGER, Field2 CURRENCY, CONSTRAINT NewPK PRIMARY KEY(Field1, Field2));  


            生成多列的UNIQUE索引,兩條記錄的Field1和Field2不能全部相同注意,如果兩條記錄其中一個(gè)字段相同而另一個(gè)字段都是空值,那也算兩個(gè)字段不同   
            CREATE TABLE NewTable(Field1 INTEGER, Field2 CURRENCY, CONSTRAINT NewUK UNIQUE(Field1, Field2));   
            要在幾個(gè)不同的表之間建立聯(lián)系,就要使用FOREIGN 
            KEY REFERENCES子句,它可以限定某個(gè)表的字段內(nèi)容必須存在于另外一個(gè)表中。   
            第一個(gè)例子:  
            首先,生成主關(guān)鍵字段為Field1的表NewTable1   
            CREATE TABLE NewTable1(Field1 INTEGER CONSTRAINT NewPK PRIMARY KEY);  


            然后,再生成外部索引,兩個(gè)表的Field1必須類型相同,并且第一個(gè)表的Field1是主關(guān)鍵字段或UNIQUE字段。生成外部索引后,表NewTable2要增加記錄,它的Field1字段值必須已經(jīng)存在于表NewTable1的Field1字段中。   
            下面兩條語句作用相同,因?yàn)镕ield1是NewTable1的主關(guān)鍵字段,可以省略不寫   
            CREATE TABLE NewTable2(Field1 INTEGER CONSTRAINT NewFK REFERENCES NewTable1);  
            CREATE TABLE NewTable2(Field1 INTEGER CONSTRAINT NewFK REFERENCES NewTable1(Field1));  


            第二個(gè)例子:  
            首先,生成主關(guān)鍵字段為Field1和Field2的表NewTable1   
            CREATE TABLE NewTable1(Field1 INTEGER, Field2 TEXT(20), CONSTRAINT NewPK PRIMARY KEY(Field1, Field2));  


            然后,生成多列外部索引   
            CREATE TABLE NewTable2(Field1 INTEGER, Field2 TEXT(20), CONSTRAINT NewFK FOREIGN KEY(Field1, Field2) REFERENCES NewTable1(Field1, Field2));   
            ALTER TABLE語句:  
            在表生成之后,如果想修改表的結(jié)構(gòu),就使用這條語句,它能增加或刪除字段以及約束關(guān)系。   
            給表NewTable增加日期型字段Field3,語句執(zhí)行前表NewTalbe必須沒有字段Field3   
            ALTER TABLE NewTable ADD COLUMN Field3 DATE;  

            刪除表NewTable中的字段Field3,語句執(zhí)行前字段Field3必須存在表NewTable中   
            ALTER TABLE NewTable DROP COLUMN Field3;  

            給表NewTable增加NewUK約束關(guān)系   
            ALTER TABLE NewTable ADD CONSTRAINT NewUK UNIQUE(Field1,Field2);  

            刪除表NewTable的NewUK約束關(guān)系   
            ALTER TABLE NewTable DROP CONSTRAINT NewUK;   
            DROP TABLE語句:  
            刪除表NewTable,語句執(zhí)行前表NewTable必須存在   
            DROP TABLE NewTable; 

            posted on 2008-06-16 21:00 isabc 閱讀(433) 評(píng)論(1)  編輯 收藏 引用 所屬分類: 數(shù)據(jù)庫

            評(píng)論

            # re: 用SQL創(chuàng)建數(shù)據(jù)庫 2008-06-16 21:51 sql

            W3School:http://www.w3school.com.cn/sql/sql_create.asp  回復(fù)  更多評(píng)論   

            廣告信息(免費(fèi)廣告聯(lián)系)

            中文版MSDN:
            歡迎體驗(yàn)

            国产精品欧美久久久天天影视| 日本人妻丰满熟妇久久久久久| 久久夜色精品国产亚洲av| 日本高清无卡码一区二区久久 | 无码人妻久久一区二区三区蜜桃| 一级做a爰片久久毛片毛片| 久久久久亚洲AV无码网站| 久久婷婷五月综合97色一本一本| 久久精品国产亚洲av瑜伽| 日本道色综合久久影院| 久久久久久a亚洲欧洲aⅴ| 狠狠综合久久AV一区二区三区| 亚洲精品乱码久久久久久蜜桃不卡 | 蜜臀av性久久久久蜜臀aⅴ麻豆| 久久精品国产99国产精品澳门| 久久国产亚洲精品| 久久人人爽人爽人人爽av| 97久久天天综合色天天综合色hd| 久久人搡人人玩人妻精品首页| 精品熟女少妇a∨免费久久| 欧美成a人片免费看久久| 一本大道加勒比久久综合| 久久久久国产精品熟女影院| 精品久久久久久国产牛牛app| 18岁日韩内射颜射午夜久久成人| 久久最新免费视频| 久久乐国产综合亚洲精品| 久久久国产精品网站| 无码人妻久久一区二区三区| 波多野结衣久久一区二区| 久久婷婷五月综合色99啪ak| 精品久久久无码中文字幕天天| 久久se精品一区二区| 久久精品国产半推半就| 亚洲欧美日韩精品久久| 国产精品九九久久精品女同亚洲欧美日韩综合区 | WWW婷婷AV久久久影片| 久久综合久久自在自线精品自| 中文字幕精品久久久久人妻| 伊人久久精品影院| 亚洲国产成人精品久久久国产成人一区二区三区综 |