標籤:des style color strong 資料 for
1.隨機取3條記錄
select top 3 * from tablename newid()
2.隨機選記錄
select newid().
3.重複資料刪除記錄
1) delete from tablename where id not in (select max(id) from tablename group by col1,col2,...)
2)select distinct * into temp fromtablename
delete fromtablename
insert into tablename select * from temp
4.列出資料庫裡所有的表名
select name from sysobjects where type=‘U‘
5.列出表裡的所有的列名
select name from syscolumns where id=object_id(‘TableName‘)
6.選擇從10到15的記錄
select top 5 * from(select top 15 * from tablename order by id asc) table_別名 order by id desc
7.壓縮資料庫
dbcc shrinkdatabase(dbname)
8.按姓氏筆畫排序
Select * From TableName Order By CustomerName Collate Chinese_PRC_Stroke_ci_as //從少到多
9.資料庫加密
select encrypt(‘原始密碼‘)
select pwdencrypt(‘原始密碼‘)
select pwdcompare(‘原始密碼‘,‘加密後密碼‘) = 1--相同;否則不相同 encrypt(‘原始密碼‘)
select pwdencrypt(‘原始密碼‘)
select pwdcompare(‘原始密碼‘,‘加密後密碼‘) = 1--相同;否則不相同
10.查看硬碟分區
EXEC master..xp_fixeddrives
11.比較兩表是否相等
if(select checksum_agg(binary_checksum(*))from A)=(select checksum_agg(binary_checksum(*))from B)
print ‘相等‘
else
print ‘不相等‘
12.殺掉所有的事件探察器進程:
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 ‘?‘
13.擷取當前資料庫中的所有使用者表
select Name from sysobjects where xtype=‘u‘ and status>=0
14.查看與某一個表相關的視圖、預存程序、函數
select a.* from sysobjects a, syscomments b where a.id = b.id and b.text like ‘%表名%‘
15.查看當前資料庫中所有預存程序
select name as 預存程序名稱 from sysobjects where xtype=‘P‘
16.查詢使用者建立的所有資料庫
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
17.建立資料庫
create database dbname
18.刪除資料庫
drop database dbname
19.備份sql server
--- 建立 備份資料的 device
USE master
EXEC sp_addumpdevice ‘disk‘, ‘testBack‘, ‘c:\mssql7backup\MyNwind_1.dat‘
--- 開始 備份
BACKUP DATABASE pubs TO testBack