1 --創建表
2 if exists(select * from sysobjects where name='user' and type='U') drop table [user] ;
3 create table [user](
4 id int identity(1,1) , --自增字段
5 name varchar(50) ,
6 pwd varchar(50) ,
7 constraint pk_user_id primary key(id) --主鍵
8 --constraint pk_user_id primary key(id,[name])
9 );
10
11 -- 變量的聲明,sql里面聲明變量時必須在變量前加@符號
12 DECLARE @I INT
13
14 -- 變量的賦值,變量賦值時變量前必須加set
15 SET @I = 30
16
17 -- 聲明多個變量
18 DECLARE @s varchar(10),@a INT
19
20 -- Sql 里if語句
21 IF 條件 BEGIN
22 執行語句
23 END
24 ELSE BEGIN
25 執行語句
26 END
27
28 DECLARE @d INT
29 set @d = 1
30
31 IF @d = 1 BEGIN
32
33 -- 打印
34 PRINT '正確'
35 END
36 ELSE BEGIN
37 PRINT '錯誤'
38 END
39
40
41 -- Sql 里的多條件選擇語句.
42 DECLARE @iRet INT, @PKDisp VARCHAR(20)
43 SET @iRet = 1
44 Select @iRet =
45 CASE
46 WHEN @PKDisp = '一' THEN 1
47 WHEN @PKDisp = '二' THEN 2
48 WHEN @PKDisp = '三' THEN 3
49 WHEN @PKDisp = '四' THEN 4
50 WHEN @PKDisp = '五' THEN 5
51 ELSE 100
52 END
53
54 -- 循環語句
55 WHILE 條件 BEGIN
56 執行語句
57 END
58
59 DECLARE @i INT
60 SET @i = 1
61 WHILE @i<1000000 BEGIN
62 set @i=@i+1
63 END
64 -- 打印
65 PRINT @i
66
67
68 -- TRUNCATE 刪除表中的所有行,而不記錄單個行刪除操作,不能帶條件
69
70 /*
71 TRUNCATE TABLE 在功能上與不帶 Where 子句的 Delete 語句相同:二者均刪除表中的全部行
72
73 。但 TRUNCATE TABLE 比 Delete 速度快,且使用的系統和事務日志資源少。
74 Delete 語句每次刪除一行,并在事務日志中為所刪除的每行記錄一項。TRUNCATE TABLE 通過
75
76 釋放存儲表數據所用的數據頁來刪除數據,并且只在事務日志中記錄頁的釋放。
77 TRUNCATE TABLE 刪除表中的所有行,但表結構及其列、約束、索引等保持不變。新行標識所用
78
79 的計數值重置為該列的種子。如果想保留標識計數值,請改用 Delete。如果要刪除表定義及其數據,請
80
81 使用 Drop TABLE 語句。
82 對于由 FOREIGN KEY 約束引用的表,不能使用 TRUNCATE TABLE,而應使用不帶 Where 子句的
83
84 Delete 語句。由于 TRUNCATE TABLE 不記錄在日志中,所以它不能激活觸發器。
85 TRUNCATE TABLE 不能用于參與了索引視圖的表。
86 示例
87 下例刪除 authors 表中的所有數據。*/
88
89 TRUNCATE TABLE authors
90
91
92 -- Select INTO 從一個查詢的計算結果中創建一個新表。 數據并不返回給客戶端,這一點和普通的
93 -- Select 不同。 新表的字段具有和 Select 的輸出字段相關聯(相同)的名字和數據類型。
94
95 select * into NewTable
96 from Uname
97
98
99 -- Insert INTO Select
100 -- 表ABC必須存在
101 -- 把表Uname里面的字段Username復制到表ABC
102 Insert INTO ABC Select Username FROM Uname
103
104 -- 創建臨時表
105 Create TABLE #temp(
106 UID int identity(1, 1) PRIMARY KEY,
107 UserName varchar(16),
108 Pwd varchar(50),
109 Age smallint,
110 Sex varchar(6)
111 )
112 -- 打開臨時表
113 Select * from #temp
114
115 -- 存儲過程
116 -- 要創建存儲過程的數據庫
117 Use Test
118 -- 判斷要創建的存儲過程名是否存在
119 if Exists(Select name From sysobjects Where name='csp_AddInfo' And
120
121 type='P')
122 -- 刪除存儲過程
123 Drop Procedure dbo.csp_AddInfo
124 Go
125
126
127 -- 創建存儲過程
128 Create Proc dbo.csp_AddInfo
129 -- 存儲過程參數
130 @UserName varchar(16),
131 @Pwd varchar(50),
132 @Age smallint,
133 @Sex varchar(6)
134 AS
135 -- 存儲過程語句體
136 insert into Uname (UserName,Pwd,Age,Sex)
137 values (@UserName,@Pwd,@Age,@Sex)
138 RETURN
139 -- 執行
140 GO
141
142 -- 執行存儲過程
143 EXEC csp_AddInfo 'Junn.A','123456',20,'男';
144 修改自:http://blog.csdn.net/mx1029/archive/2007/07/06/1680910.aspx