乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      SQL語句(建庫(kù)、建表、修改語句)

       小陳 2007-05-13
      SQL語句(建庫(kù)、建表、修改語句)

      --創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)名為‘sql_test’
      create database sql_test
      go
      --打開數(shù)據(jù)庫(kù) sql_test
      use sql_test
      go

      --建立學(xué)生表
      create table 學(xué)生
      (學(xué)生編號(hào) char(4) primary key, 學(xué)生名字 varchar(50)not null)
      go

      --修改學(xué)生表
      alter table 學(xué)生
      add 班級(jí)編號(hào) char(4) null --添加班級(jí)編號(hào)字段
      -- (注意如果添加的字段不為空的話,是不能被添加的)
      go

      --建立班級(jí)表
      create table 班級(jí)
      (班級(jí)編號(hào) char(4) primary key ,班級(jí)名稱 varchar(50)not null)
      go

      --建立課程表
      create table 課程
      (課程編號(hào) char(4) primary key ,課程名稱 varchar(50) not null,開課日期 datetime )
      go

      --修改課程表
      alter table 課程
      add 課程代號(hào) varchar(10) null --添加課程代號(hào)字段
      go

      alter table 課程
      drop column 開課日期  --刪除開課日期字段
      go

      alter table 課程
      alter column  課程名稱 varchar(20) not null   --修改課程名稱字段
      go

      --建立一個(gè)product_test_one 表,與下個(gè)表類似,只不過在constraint前面有個(gè)‘逗號(hào)’不影響執(zhí)行
      create table product_test_one
      (
      id char(10) not null, name varchar(20) null, price money default 20.5,quantity smallint null, constraint pk_id primary key clustered (id)
       )
      go


      --建立一個(gè)product_test_two 表
      /*
      添加 ‘主鍵約束’,語句為:constraint pk_id primary key clustered (id)
      constraint 約束的名稱 primary key clustered (字段名),其中clustered為聚簇索引,也是系統(tǒng)默認(rèn)值
      */
      create table product_test_two
      (
      id char(10) not null, name varchar(20) null, price money default 20.5,quantity smallint null constraint pk_id2 primary key clustered (id)
       )
      go

      --刪除表 pruduct_test_one表
      drop table product_test_one
      go

      /* 唯一性的約束用于指定一個(gè)或則多個(gè)列的組合值具有唯一性,
      以防止在列中輸入重復(fù)的值,沒個(gè)列中只能有一個(gè)主鍵,因此,當(dāng)表中已經(jīng)有一個(gè)主鍵時(shí),
      如果還需要保證其他的標(biāo)示符唯一時(shí),就可以使用唯一約束*/

      --建立一個(gè)student表,使其中的 name 字段具有唯一性
      create table student
      (
      id char(8), name char(10) --表字段
      constraint pk_id primary key (id), --添加一個(gè)主鍵約束
      constraint uk_name unique (name) --添加一個(gè)唯一性約束
      )
      go

      --建立一個(gè)student4表,同上 (注意:constraint 與constraint 之間一定要有逗號(hào),否則出錯(cuò)?。?br>create table student4
      (
      id char(8), name char(10) --表字段
      constraint pk_id4 primary key (id), constraint uk_name4 unique (name)
      )
      go
      -- 刪除表student4
      drop table student4
      go

      --建立一個(gè)student3表,同上
      create table student3
      (
      id char(8), name char(10), --表字段
      constraint pk_id3 primary key (id) ,constraint uk_name3 unique (name)
      )
      go

      --刪除表student3
      drop table student3
      go

      /*檢查約束對(duì)輸入列或整個(gè)表中的值設(shè)置檢查條件,以限制輸入的值,保證數(shù)據(jù)庫(kù)的完整性。
      一個(gè)表中可以定義多個(gè)檢查約束;每個(gè)表中每個(gè)字段只能定義一個(gè)檢查約束;
      在多個(gè)字段上定義檢查約束,則必須將檢查約束定義為表級(jí)約束;
      當(dāng)執(zhí)行insert語句或則update語句時(shí),檢查約束將驗(yàn)證數(shù)據(jù);檢查約束中不能包含子查詢*/
      --constraint 約束名 check(邏輯條件表達(dá)式)

      --創(chuàng)建一個(gè)‘員工‘表,使其輸入的性別字段(sex)只能接受‘m’或則‘f’,而不能接受其他數(shù)據(jù)
      --并且為phone字段創(chuàng)建檢查約束,限制只能輸入類似0108564712之類的數(shù)據(jù),而不能隨意輸入其他數(shù)據(jù)
      create table 員工
      (
      id char(5),name char(20),sex char(2),phone int
      constraint pk_zid primary key (id),      --此間一定要有‘逗號(hào)’分隔 ,定義主鍵約束
      constraint chk_sex check (sex in (‘f‘,‘m‘) ),
      constraint chk_phone check (phone like ‘(010) [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9]‘)
      )
      go

      /*默認(rèn)約束指定在插入操作中如果沒有提供輸入的值時(shí),則系統(tǒng)自動(dòng)指定值。
      默認(rèn)約束可以包含常量、函數(shù)、不帶變?cè)膬?nèi)建函數(shù)或空值。
      每個(gè)字段只能定義一個(gè)默認(rèn)約束,
      如果定義的默認(rèn)值長(zhǎng)于其對(duì)應(yīng)字段的允許長(zhǎng)度,那么輸入到表中的默認(rèn)值將被截?cái)?br>不能加入到帶有identity屬性或者數(shù)據(jù)類型為timestamp的字段上
      如果字段定義為用戶定義的數(shù)據(jù)類型,而且有一個(gè)默認(rèn)綁定到這個(gè)數(shù)據(jù)類型上,則不、允許該字段有默認(rèn)約束
      */
      --constraint 約束名 default 約束表達(dá)式 [for 字段名]

      -- 創(chuàng)建一個(gè)表‘默認(rèn)約束’,為字段sex創(chuàng)建默認(rèn)約束
      create table 默認(rèn)約束
      (
      id char(5) primary key ,sex varchar(2) constraint con_sex default ‘m‘
      )
      go

      --修改‘默認(rèn)約束’表
      alter table 默認(rèn)約束
      add name varchar(10)null constraint con_name default ‘你好寶貝‘ --增加一個(gè)字段為‘name’,默認(rèn)值為‘你好寶貝’
      go

      /*利用系統(tǒng)存儲(chǔ)過程sp_help查看表信息,也可以指定數(shù)據(jù)庫(kù)對(duì)象的信息,
      還可以提供系統(tǒng)或則用戶定義的數(shù)據(jù)類型的信息,sq_help存儲(chǔ)過程只用于當(dāng)前的數(shù)據(jù)庫(kù),
      如果不指定對(duì)象的名稱,系統(tǒng)默認(rèn)為當(dāng)前數(shù)據(jù)庫(kù)的所以名稱、對(duì)象的所有者和對(duì)象的類型。
      語法如: sq_help [[@objname=]name]*/

      --往班級(jí)表里添加8條記錄
      insert into 班級(jí) values(‘bj01‘,‘一班‘)
      insert into 班級(jí) values(‘bj02‘,‘二班‘)
      insert into 班級(jí) values(‘bj03‘,‘三班‘)
      insert into 班級(jí) values(‘bj04‘,‘四班‘)
      insert into 班級(jí) values(‘bj05‘,‘五班‘)
      insert into 班級(jí) values(‘bj06‘,‘六班‘)
      insert into 班級(jí) values(‘bj07‘,‘七班‘)
      insert into 班級(jí) values(‘bj08‘,‘八班‘)
      go
      --顯示班級(jí)所以記錄
      select * from 班級(jí)
      go
      --刪除班級(jí)表里班級(jí)編號(hào)大于bj06的記錄
      delete from 班級(jí) where 班級(jí)編號(hào)>‘bj06‘
      go
      --顯示班級(jí)所以記錄
      select * from 班級(jí)
      go

      --向?qū)W生表里添加記錄
      insert into 學(xué)生 values(‘xs01‘,‘one‘,‘bj01‘)
      insert into 學(xué)生 values(‘xs02‘,‘two‘,‘bj01‘)
      insert into 學(xué)生 values(‘xs03‘,‘three‘,‘bj01‘)
      insert into 學(xué)生 values(‘xs04‘,‘four‘,‘bj02‘)
      insert into 學(xué)生 values(‘xs05‘,‘five‘,‘bj03‘)
      insert into 學(xué)生 values(‘xs06‘,‘six‘,‘bj02‘)
      insert into 學(xué)生 values(‘xs07‘,‘seven‘,‘bj04‘)
      insert into 學(xué)生 values(‘xs08‘,‘eight‘,‘bj03‘)
      insert into 學(xué)生 values(‘xs09‘,‘nine‘,‘bj04‘)
      insert into 學(xué)生 values(‘xs10‘,‘ten‘,‘bj05‘)
      insert into 學(xué)生 values(‘xs11‘,‘eleven‘,‘bj06‘)
      insert into 學(xué)生 values(‘xs12‘,‘twleve‘,‘bj06‘)
      go
      --顯示學(xué)生所有的記錄
      select * from 學(xué)生
      go

      --連接查詢
      select * from 學(xué)生,班級(jí) where 學(xué)生.班級(jí)編號(hào)=班級(jí).班級(jí)編號(hào)
      go

      --以下效果同上一條相同
      /*
      --第一個(gè)效果
      select * from 學(xué)生 a,班級(jí) b where a.班級(jí)編號(hào)=b.班級(jí)編號(hào)
      go
      --第二個(gè)效果
      select * from 學(xué)生 as a,班級(jí) as b where a.班級(jí)編號(hào)=b.班級(jí)編號(hào)
      go
      */

      --選擇的連接查詢
      select 學(xué)生.學(xué)生編號(hào),班級(jí).班級(jí)編號(hào), 學(xué)生.學(xué)生名字,班級(jí).班級(jí)名稱 from 學(xué)生,班級(jí) where 學(xué)生.班級(jí)編號(hào)=班級(jí).班級(jí)編號(hào)
      go
      --以下效果同上一條相同
      /*
      --第一個(gè)效果
      select a.學(xué)生編號(hào),b.班級(jí)編號(hào), a.學(xué)生名字,b.班級(jí)名稱 from 學(xué)生 a,班級(jí) b where a.班級(jí)編號(hào)=b.班級(jí)編號(hào)
      go
      --第二個(gè)效果
      select a.學(xué)生編號(hào),b.班級(jí)編號(hào), a.學(xué)生名字,b.班級(jí)名稱 from 學(xué)生 as a,班級(jí) as b where a.班級(jí)編號(hào)=b.班級(jí)編號(hào)
      go
      */
      --查詢一班的學(xué)生
      select* from 學(xué)生 where 班級(jí)編號(hào) in(select 班級(jí)編號(hào) from 班級(jí) where 班級(jí)編號(hào)=‘bj01‘)
      go
      --與上面一條查詢語句一樣功能
      select a.學(xué)生編號(hào),a.學(xué)生名字,a.班級(jí)編號(hào) from 學(xué)生 as a ,班級(jí) as b where a.班級(jí)編號(hào)=b.班級(jí)編號(hào) and b.班級(jí)編號(hào)=‘bj01‘
      go

      --統(tǒng)計(jì)一班學(xué)生人數(shù)
      select count(學(xué)生編號(hào))as 學(xué)生統(tǒng)計(jì) from 學(xué)生
      where 班級(jí)編號(hào) in(select 班級(jí)編號(hào) from 班級(jí) where 班級(jí)編號(hào)=‘bj01‘)
      go

      --group的用法和count()函數(shù)的用法

      /*在 select 語句里出現(xiàn)聚合函數(shù),并且有其他字段時(shí),一定要有g(shù)roup by 子句,
      并且在group by里寫出在select里出現(xiàn)的每一個(gè)字段,否則會(huì)出錯(cuò)
      例如下面的語句是錯(cuò)誤的:
      select count(學(xué)生編號(hào))as 學(xué)生統(tǒng)計(jì),學(xué)生名字,班級(jí)編號(hào) from 學(xué)生
      where 班級(jí)編號(hào) in(select 班級(jí)編號(hào) from 班級(jí) where 班級(jí)編號(hào)=‘bj01‘)
      group by 學(xué)生名字
      go
      */
      --統(tǒng)計(jì)一班學(xué)生人數(shù),并顯示學(xué)生的名字和所在班級(jí)
      select count(學(xué)生編號(hào))as 學(xué)生統(tǒng)計(jì), 學(xué)生名字,班級(jí)編號(hào) from 學(xué)生
      where 班級(jí)編號(hào) in(select 班級(jí)編號(hào) from 班級(jí) where 班級(jí)編號(hào)=‘bj01‘)
      group by 班級(jí)編號(hào),學(xué)生名字
      go

       

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多