天天看點

SQL SERVER常用的SQL和T_SQL語句

一、檢視資料庫的版本

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

            set @rtv=0

        else

            set @rtv=1

        return @rtv

    end

GO    

-------建立測試資料

declare @t=table(email varchar(1000))

insert @t

------驗證

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