所有代码都是在sql server 2012中的查询窗口执行,若窗口中有很多代码段,可以通过用鼠标选中某一块数据单独执行这块代码,这比通过注释的方式来执行代码更方便快捷得多。
use master go create database SchoolDB on ( name = SchoolDB_dat, filename = "d:\SchoolDB.mdf", size = 10, maxsize = 50, filegrowth = 5 ) log on ( name = SchoolDB_log, filename = "d:\SchoolDB.ldf", size = 5mb, maxsize = 25mb, filegrowth = 5mb )
--修改数据库容量 use master alter database SchoolDB modify file ( name =SchoolDB_dat, size=30mb )
--修改数据库名字 use master go alter database SchoolDB modify name=SchoolDBBB go
--删除数据库
use master
go
drop database SchoolDBBB
go
--显示数据库信息 use ReportServer go select * from [dbo].[Batch] go
--显示数据库大小
exec sp_spaceused
go
--学生表 create table Student ( StuID varchar(10) primary key, --数据表主键 StuName nvarchar(10) not null unique, --名称,不能为空 StuBirth datetime, --生日 StuAge int, --年龄 StuSex nvarchar(10) not null default('男') --性别 ) go --教师表 create table Teacher ( TecID varchar(10) primary key, tecName nvarchar(10) not null ) go --课程表 create table Course ( CouID varchar(10) primary key, CouName nvarchar(10), TecID varchar(10) foreign key(TecID) references Teacher(TecID) --外键 ) go --成绩表 create table Score ( StuID varchar(10) foreign key(StuID) references Student(StuID), CouID varchar(10) foreign key(CouID) references Course(CouID), Score decimal(18, 1) ) go
--添加字段 alter table Student add column_b varchar(20) null, column_c int null --删除字段 alter table Student drop column column_b,column_c
--删除主键 alter table Student drop constraint [pk_student_stu] --添加主键 alter table Student add constraint pk_student_stu primary key(StuID) --添加外键 alter table Course add constraint fk_course_tecid foreign key(TecID) references Teacher(TecID) --删除外键 alter table Course drop constraint [FK__Course__TecID__164452B1]
--常量 select 1 select 'zk' select '2016-2-4' --全局变量 select @@VERSION as 'sql server 版本' --局部变量 declare @count int select @count = 5
--通配符 % select * from Student where StuSex like 'Fe%' select * from Student --通配符_ select * from Student where StuName like 'Joh_' select * from Student --通配符[] select * from Student where StuName like 'e[do]%' select * from Student --通配符^ ! select * from Student where StuSex like '[^md]%' select * from Student
--赋值运算符 declare @x int, @y int select @x = 1, @y = 2 select @x + @y --算术运算符 select 1+2+5-4 --逻辑运算符 select * from Student where StuAge>8 or StuSex='Femal' --比较运算符 select * from Student where StuAge > 8 --运算符优先级 select 1+2 select 1+ 2 * 3 select (1 + 2) * 3
单行:--zzzzzzzzzzzzzzzzzzzzzzzzzzzzz
多行:/*zzzzzzzzzzzzzzzzzzzzzzz*/
create table demo ( id int, name varchar(20) ) go alter table demo add age int alter table demo drop column age alter table demo alter column name varchar(15) drop table demo
--插入数据 insert into Student values('3', N'李四', '1989-01-01',25, N'男') --删除数据 delete from Student where STUID = '3' --查看数据 select * from Student select * from Student where StuID in(2,3) select * from Student where StuID > 1 and StuID < 3 select * from Student where StuID like '1%' --改变数据 update Student set Stusex = N'女' where STUID = '2' update Student set Stusex = N'女' where STUID <> '2' update Student set Stusex = N'女' where not STUID <> '2'
--用户权限 grant update,delete,select on Student to guest with grant option deny update on Student to guest cascade revoke delete on Course to guest cascade
--声明语句 declare @userid varchar(20) declare @pwd varchar(20) set @userid = 'admin' set @pwd = '123' select '用户名' + @userid + '密码' + @pwd --输出 declare @userid varchar(20) declare @pwd varchar(20) select @userid = 'admin', @pwd='123' print @userid + ',' + @pwd --begin end declare @count int select @count = 0 while @count < 10 begin print 'count' + ltrim(@count) select @count = @count + 1 end print 'loop over count=' +ltrim(@count) --if else declare @age = int select @age = 40 if @age < 30 print 'z' else print 'k' --case when select *, case when StuID = '1' then '班长' when StuID = '2' then '学习委员' else '无' end as '职位' from Student --goto begin goto zktest select * from Student zktest: print 'zjjjjjj' end --waitfor 延迟执行 declare @name varchar(50) set @name = 'admin' begin waitfor delay '00:00:03' print @name end --return create FUNCTION Func(@id char(8)) returns table as return (select * from Student where StuID = @id) select * from Func('1')