一、查看数据库的版本
select @@version
常见的几种SQL Server2000打补丁后的版本号
8.00.194 Microsoft SQL Server 2000
8.00.384 Microsoft SQL Server 2000 SP1
8.00.532 Microsoft SQL Server 2000 SP2
8.00.760 Microsoft SQL Server 2000 SP3
8.00.818 Microsoft SQL Server 2000 SP3 w/cumuloative patch MS03-031
8.002039 Microsoft SQL Server 2000 SP4
二、查看数据库所在机器操作系统
exec master..xp_msver
三、查看数据库启动参数
sp_configure
四、查看数据库的启动时间
select convert(varchar(30),login_time,120) from master..sysprocesses where spid=1
五、查看数据库服务器和实例名
print(select) 'server name .....'+convert(varchar(30),@@Servername)
print(select) 'Instance name .....'+convert(varchar(30),@@Servicename)
六、查看所有数据库名称及大小
sp_helpdb
七、重命名数据库
sp_renamedb 'old_dbname','new_dbname'
八、查看所有数据库用户登录信息
sp_helplogins
九、查看所有数据库用户所属的角色信息
sp_helpsvrolemember
十、查看某数据库下,对象级用户权限
sp_helprotect
十一、查看某数据库下某个数据对象的大小
sp_spaceused @objname (如sp_spaceused cljg)
十二、查看最大的N个表(默认为50)
sp_toptables
十三、删除表格并初始化
truncate table tablename
如果有标识列,要初始化,再用DBCC CHECKIDENT(tablename,RESEED,1)
十四、用存储过程检测EMAIL
if object_id('fnCheckEmail') is not null
drop function fnCheckEmail
GO
----创建验证函数,返回1表示正确,否则格式出错
Create Function fnCheckEmail(@Email varchar(1000))
returns bit
as
begin
declare @rtv bit
if charindex(' ',@email)>0 or len(@email)-len(replace(@email,'.',''))>1 or len(@email)-len(replace(@email,'@',''))>1 or right(@email,1)='.' or right(@email,1)='@' or left(@email,1)='.' or left(@email,1)='@' or charindex('.',@email)-charindex('@',@email)<0 or charindex('@',@email)-charindex('.',@email)=1 or charindex('.',@email)-charindex('@',@email)=1
set @rtv=0
else
set @rtv=1
return @rtv
end
GO
-------创建测试数据
declare @t=table(email varchar(1000))
insert @t
select 'ab.cxyz@s.com' union all
select 'ab.xyz@s.com' union all
select '@abc@xyz.com' union all
select 'abcxyz@com' union all
select 'abcxyz.@com' union all
select 'abc@xyz.com' union all
------验证
select *,case dbo.fnCheckEmail(email) when 1 then '正确' else '错误' end from @t
------清除测试环境
drop function fnCheckEmail
十五、匹配回车换行符
like+'%'+char(13)+char(10)+'%'
十六、求前3名的成绩(ACCESS)
XH SHUXUECJ
1 80
2 60
3 90
4 65
5 70
6 75
7 75
select A.* from tb A,(select top 3 [SHUXUECJ] from tb group by [SHUXUECJ] order by [SHUXUECJ] desc) B
where A.SHUXUECJ=B.SHUXUECJ