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