SQL Server数据库中的9简单示例


  本文标签:SQL Server数据库

  以下的文章主要向大家讲述的是SQL Server数据库中的9个简单示例,假如你在实际操作中遇到SQL Server数据库应用中的一些问题但是你却不知道对其如何正确的解决,那么以下的文章对你而言一定是良师益友  。

  SQL Server的简单示例:

  1、首先,建立一个表,然后通过存储过程往该表中插入100条记录

  以下是引用片段:

  1. create table teachers(id int primary key not null identity(10000,100),  
  2. tea_name varchar(50), tea_age int default 20) create procedure insert1000teachers as declare   
  3. @tea_name varchar(50) declare @tea_age int declare @index int declare   
  4. @count int set @index=1 set @count=100 while @index<@count begin set @tea_age=30*rand() set  
  5. @tea_name=teacher set @tea_name=@tea_name+convert(varchar,@index)  
  6. insert into teachers(tea_name,tea_age) values(@tea_name,@tea_age) set @index=@index+1 end  

  2、创建数据库

  以下是引用片段:

  1. create database test1 on primary ( name=t1_dat,  
  2. filename=d:test_database1t1_dat.mdfsize=1filegrowth=15%, maxsize=50 ),   
  3. name=t2_datfilename=d:test_database1t2_dat.ndfsize=1maxsize=UNLIMITEDfilegrowth=1 ) log>   

  3、增加一个数据文件到指定的数据库

  以下是引用片段:

  1. alter database test1 add file ( name=t3_datfilename=d:test_database1t3_dat.ndfsize=1maxsize=UNLIMITEDfilegrowth=1 ) 

  4、SQL Server数据库之增加组

  以下是引用片段:

  1. alter database test1 add filegroup filegroup1 

  5、增加一个数据文件到指定的组

  以下是引用片段:

  1. alter database test1 add file ( name=t4_datfilename=d:test_database1t4_dat.ndf ) to filegroup filegroup1 

  6、对象重命名

  更改字段名:

  1. sp_rename teachers.tea_name,tea_name1,column 

  更改表名:

  1. sp_rename dbo.teachers,teachers1 

  7、查看存储过程的内容:

  1. sp_helptext insert1000teachers 

  8、采用存储过程实现:根据存储过程中的内容,查找存储过程的名字

  以下是引用片段:

  1. create procedure getProcedureByBodyWords @patpro varchar(100), 

  存储过程中的任意内容 @proname varchar(50) --存储过程的部分或者全名,或者为

  1. null as begin select name from sysobjects where id in (select id from syscomments where text like %+@patpro+%)   
  2. and name like case when @proname is null then % else %+@proname+% end end  

  如有存储过程名为insert1000teachers,操作如下可得其全名

  1. exec getProcedureByBodyWords insert,insert1000 

  9、采用触发器备份数据表中的数据:

  建立测试数据表:

  一个用于插入数据,test3

  另一个作为备份,test3_bak

  以下是引用片段:

  1. create table test3(id int primary key not null identity(1,1),uname varchar(20),uage int);   
  2. create table test3_bak(id int primary key not null identity(1,1),bid int,uname varchar(20), uage int,active char(1));  

  编写备份用的触发器,只有更新或者是插入的时候才触发

  以下是引用片段:

  1. alter trigger test3_bak_insert_update on test3 for insert,update as declare   
  2. @id int declare @uname varchar(20) declare @uage int begin select @idid=id,@unameuname=uname,  
  3. @uageuage=uage from inserted if @id<>0 begin update test3_bak set active=0 where bid=  
  4. @id insert into test3_bak(bid,uname,uage,active) values(@id,@uname,@uage,1) end end  

  测试数据:

  以下是引用片段:

  1. insert into test3(uname,uage) values(FLB,20) insert into test3(uname,uage)  
  2. values(FLB1,21) insert into test3(uname,uage) values(FLB2,22) update test3 set uage=  
  3. 100 where id=27 delete from test3 where id=20 

  大家可自己采用下面的查询踪两个表的数据变化:

  以下是引用片段:

  1. select * from test3 select * from test3_bak 

  以上的相关内容就是对SQL Server数据库的几个简单示例的介绍,望你能有所收获  。