1 -- 創建一個數據庫 2 create database DATA; 3 -- 刪除數據庫 4 Drop database DATA; 5 6 -- 創建數據庫的時候,指定一些數據庫的相關的參數,比如大小增長當時,文件保存路徑 7 create database DATA 8 on primary --主數據文件* .mdf 9 ( 10 -- 數據庫的邏輯名稱 11 name= ' DATA ' , 12 filename= ' E:\DATA.mdf ' , 13 filegrowth= 10 %,-- 增長值 14 maxsize= 100mb 15 ) 16 log on 17 ( 18 name= ' DATA_log ' , 19 filename= ' E:\DATA.ldf ' , 20 size= 5mb, 21 filegrowth= 10 % , 22 maxsize= 50mb 23 ) 24 25 -- 切換數據庫 26 use DATA 27 go 28 -- 創建一個班級表 29 create table TblClass 30 ( 31 -- 列名,數據類型、約束(自動編號、主鍵、外鍵、默認值等等) 32 ClsId int identity( 1 , 1 ) primary key, 33 ClsName nvarchar( 50 ) not null , 34 ClsDesc nvarchar( 100 ) 35 ) 36 -- 刪除一個表 37 drop table TblClass 38 39 -- 創建一個學生表 40 create table TblStudent 41 ( 42 stuId int identity( 1 , 1 ) primary key, 43 stuName nvarchar( 50 ) not null , 44 stuGender bit not null , 45 stuAddress varchar( 200 ), 46 stuPhone varchar( 50 ), 47 stuAge int , 48 stuBirthday datetime, 49 stuIdNumber varchar( 20 ), 50 stuClsId int 51 ) 52 53 --注意:bit類型,在寫代碼中用1或0來表示,不要用’ false ’,會進行類型轉換的 54 -- 向TbleClass表插入單條數據 55 insert into TblClass(ClsName,ClsDesc) values( ' 高三一班 ' , ' 無此班 ' ) 56 57 -- 通過select語句來查詢表中的所有數據 58 select * from TblClass 59 60 -- 向TbleClass表插入多條數據 61 insert into TblClass(ClsName,ClsDesc) 62 select ' 高三二班 ' , ' 一般般 ' union all 63 select ' 高三四班 ' , ' 死一般 ' union all 64 select ' 高三五班 ' , ' 未開班 ' 65 66 -- 將一個表中的數據備份到另一個表中 67 68 -- 將TblClass表中的數據備份到newTblClass中 69 -- 這種寫法會將TblClass表中的所有數據都插入到newTblClass表中 70 -- 前提是newTbleClass表不存在,如果存在則報錯 71 select * into NewTblClass from TblClass 72 73 -- 將另一個數據庫中的表備份到TblTeacher中 74 select * into TblTeacher from ItCastCn.dbo.TblTeacher 75 76 -- 如果我們只要表的結構,不需要表數據 77 select Top 0 * into NewTblClass from TblClass 78 79 80 -- 向一個已經存在的表中插入數據,數據的來源是另外的一張表 81 insert into NewTblClass(Clsname,ClsDesc) 82 select Clsname,ClsDesc from TblClass 83 84 85 -- 刪除一條數據 86 delete from TblClass where ClsId= 4 87 88 -- 刪除所有數據 89 90 delete from TblClass --此刪除可用日記恢復! 后續在插入數據時主鍵Id續之前的。比如之前到10,刪完之后在插一條主鍵Id是11 91 92 truncate table TblClass -- 此刪除不可恢復,慎用!數據非常快,效果:如同新建一個表 93 94 -- 區別: 95 -- 1 .delete 語句刪除數據的時候,自動編號沒有恢復到默認值。但是truancate語句重新設置了自動編號 96 -- 2 .通過truncate語句刪除表中的數據的時候,只能一次性都清空,不能根據條件來刪除,而delete可以根據條件來刪除。 97 -- 3 .truncate語句清空表中的數據時,速度(性能)比delete語句快的多的多的多。 98 -- 4 ..truncate語句不觸發delete觸發器。 99 100 -- 修改數據 101 update TblClass set ClsName= ' 三年二班 ' ,ClsDesc= ' 剛開班 ' where ClsId= 1 102 103 -- 注意在操作數據庫之前一定要做備份 104 105 --邏輯運算符的優先級問題: not > and > or 106 107 delete from TblTeacher where tage= 19 or tage is null 108 109 110 111 -- 手動添加約束 112 select * from Tblclass 113 -- 手動添加一列 114 alter table TblClass add ClsAge int 115 116 -- 刪除一列 117 alter table TblClass drop Column ClsAge 118 119 -- 修改數據類型 120 alter table TblClass alter column ClsAge varchar( 10 ) 121 122 -- 為一個表增加主鍵 123 alter table NewTblClass 124 add constraint PK_NewTblClass_ClsId primary key(ClsId) 125 126 --增加一個非空約束-- 其實就是修改列(要在該列不為空的情況下修改) 127 alter table TblClass 128 alter Column ClsAge varchar( 10 ) not null 129 130 -- 增加一個唯一的約束 131 alter table TblClass 132 add constraint UQ_tblClass_ClsName unique(ClsName) 133 134 -- 添加一個默認約束 135 alter table TblClass 136 add constraint DF_TblClass_ClsAge default ( ' 18 ' ) for ClsAge 137 138 --添加一個檢查約束;年齡在0- 120之間 139 alter table TblClass 140 add constraint CK_TblClass_ClsAge check(ClsAge>= 0 and ClsAge<= 120 ) 141 142 -- 添加外鍵約束, 143 alter table TblStudent add ClsId int not null 144 alter table TblClass 145 add constraint PK_TblStudent_ClsId primary key(ClsId) 146 147 alter table TblStudent 148 add constraint FK_TblStudent_TblClass foreign key(ClsId) 149 references TblClass(ClsId) on delete cascade 150 151 -- 刪除約束 152 alter table TblClass drop constraint FK_TblStudent_TblClass 153 -- 刪除多條約束,約束名用逗號隔開 154 alter table TblClass drop constraint 155 FK_TblStudent_TblClass, 156 PK_TblStudent_ClsId, 157 CK_TblClass_ClsAge
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
