-- 判断一个表是否已经存在 if exists ( select * from sysobjects where name = ' Person ' and xtype = ' u ' ) print ' Ex ' else print ' No Ex ' -- 判断指定的表是否存在,存在则删除 if exists ( select * from sysobjects where objectproperty ( object_id ( ' table_name ' ), ' istable ' ) = 1 ) drop table table_name -- 判断数据库是否已经存在 use Master if exists ( select name from sysdatabases where name in ( ' MyDemo ' )) print ' hello ' else print ' hi ' -- 判断某个存储过程是否已经在数据库中存在 user MyDemo -- 我的数据库名 if exists ( select * from sysobjects where objectproperty ( object_id ( ' sp_getTotalSalary1 ' ), ' IsProcedure ' ) = 1 ) drop procedure sp_getTotalSalary1 -- 判断某个表是否有Identity列 declare @i int Select @i = OBJECTPROPERTY ( OBJECT_ID ( ' Student ' ), ' TableHasIdentity ' ) -- Student为表名 if ( @i = 1 ) print ' true ' -- 查看SQL Server系统当前的登陆信息 SELECT DB_NAME (), USER_NAME (), APP_NAME (), HOST_NAME () -- 定义char,varchar变量时要注意初始化为'',否则结果难预料 declare @str varchar ( 256 ) set @str = '' declare @i int set @i = 0 while @i < 5 begin set @str = @str + ' a ' set @i = @i + 1 end print @str -- aaaaa