1.按姓氏筆畫排序: select * From TableName Order By CustomerName Collate Chinese_PRC_Stroke_ci_as
2.數據庫加密: select encrypt(’原始密碼’) select pwdencrypt(’原始密碼’) select pwdcompare(’原始密碼’,’加密後密碼’) = 1--相同;否則不相同
3.取回表中字段: declare @list varchar(1000),@sql nvarchar(1000) select @list=@list+’,’+b.name from sysobjects a,syscolumns b where a.id=b.id and a.name=’表A’ set @sql=’select ’+right(@list,len(@list)-1)+’ from 表A’ exec (@sql)
4.查看硬盤分區: exec master..xp_fixeddrives
5.比較A,B表是否相等: if (select checksum_agg(binary_checksum(*)) from A) = (select checksum_agg(binary_checksum(*)) from B) print ’相等’ else print ’不相等’
6.殺掉所有的事件探察器進程: DECLARE hcforeach CURSOR GLOBAL FOR select ’kill ’+RTRIM(spid) FROM master.dbo.sysprocesses where program_name IN(’SQL profiler’,N’SQL 事件探查器’) exec sp_msforeach_worker ’?’
7.記錄搜索: 開頭到N條記錄 select Top N * From 表 ------------------------------- N到M條記錄(要有主索引ID) select Top M-N * From 表 where ID in (select Top M ID From 表) Order by ID Desc ---------------------------------- N到結尾記錄 select Top N * From 表 Order by ID Desc
8.如何修改數據庫的名稱: sp_renamedb ’old_name’, ’new_name’
9:獲取當前數據庫中的所有用戶表 select Name from sysobjects where xtype=’u’ and status>=0
10:獲取某一個表的所有字段 select name from syscolumns where id=object_id(’表名’)
11:查看與某一個表相關的視圖、存儲過程、函數 select a.* from sysobjects a, syscomments b where a.id = b.id and b.text like ’%表名%’
12:查看當前數據庫中所有存儲過程 select name as 存儲過程名稱 from sysobjects where xtype=’P’
13:查詢用戶創建的所有數據庫 select * from master..sysdatabases D where sid not in(select sid from master..syslogins where name=’sa’) 或者 select dbid, name AS DB_NAME from master..sysdatabases where sid <> 0x01
14:查詢某一個表的字段和數據類型 select column_name,data_type from information_schema.columns where table_name = ’表名’。