自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

MS-SQL Server數(shù)據(jù)庫開發(fā)中技巧總結(jié)

數(shù)據(jù)庫 SQL Server
我們今天是要和大家一起討論的是MS-SQL Server數(shù)據(jù)庫開發(fā)中精典技巧,以下的文章將會給你相應(yīng)實際應(yīng)用方案,以下就是相關(guān)內(nèi)容的具體描述。

我們今天是要和大家一起討論的是MS-SQL Server數(shù)據(jù)庫開發(fā)中精典技巧,我們大家都知道MS-SQL Server數(shù)據(jù)庫在實際應(yīng)用中是經(jīng)常出現(xiàn)的,所以MS-SQL Server數(shù)據(jù)庫開發(fā)中精典技巧也是備受關(guān)注的。

1.按姓氏筆畫排序:

 

 

  1. Select * From TableName Order By CustomerName Collate Chinese_PRC_Stroke_ci_as 

 

2.MS-SQL Server數(shù)據(jù)庫加密:

select encrypt('原始密碼')

 

select pwdencrypt('原始密碼')

 

select pwdcompare('原始密碼','加密后密碼') = 1--相同;否則不相同 encrypt('原始密碼')

 

select pwdencrypt('原始密碼')

 

select pwdcompare('原始密碼','加密后密碼') = 1--相同;否則不相同

 

3.取回表中字段:

 

  1. declare @list varchar(1000),@sql nvarchar(1000)   
  2. select @list=@list+','+b.name from sysobjects a,syscolumns b where a.id=b.id and a.name='表A' 
  3. set @sql='select '+right(@list,len(@list)-1)+' from 表A'   
  4. exec (@sql) 

4.查看硬盤分區(qū):

  1. EXEC master..xp_fixeddrives 

5.比較A,B表是否相等:

  1. if (select checksum_agg(binary_checksum(*)) from A)  
  2. =  
  3. (select checksum_agg(binary_checksum(*)) from B)  
  4. print '相等'  
  5. else  
  6. print '不相等' 

6.殺掉所有的事件探察器進程:

  1. DECLARE hcforeach CURSOR GLOBAL FOR SELECT 'kill '+RTRIM(spid) FROM master.dbo.sysprocesses  
  2. WHERE program_name IN('SQL profiler',N'SQL 事件探查器')  
  3. EXEC sp_msforeach_worker '?'  
  4. 'www.knowsky.com 

 

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到結(jié)尾記錄

 

 

  1. Select Top N * From 表 Order by ID Desc 

 

8.如何修改數(shù)據(jù)庫的名稱:

 

  1. sp_renamedb 'old_name', 'new_name' 

 

9:獲取當(dāng)前MS-SQL Server數(shù)據(jù)庫中的所有用戶表

 

  1. select Name from sysobjects where xtype='u' and status>=0 

 

10:獲取某一個表的所有字段

 

  1. select name from syscolumns where id=object_id('表名') 

 

11:查看與某一個表相關(guān)的視圖、存儲過程、函數(shù)

 

  1. select a.* from sysobjects a, syscomments b where a.id = b.id and b.text like '%表名%' 

 

SQL Server的內(nèi)存會不斷增加敬業(yè)的IT人 2008-2-28 0:34:08 當(dāng) SQL Server 數(shù)據(jù)庫引擎在 Microsoft® Windows NT® 或 Windows® 2000 上運行時,其默認內(nèi)存管理行為并不是獲取特定的內(nèi)存量,而是在不產(chǎn)生多余換頁 I/O 的情況下獲取盡可能多的內(nèi)存。為此,數(shù)據(jù)庫引擎獲取盡可能多的可用內(nèi)存,同時保留足夠的可用內(nèi)存以防操作系統(tǒng)交換內(nèi)存。

SQL Server 實例在啟動時通常獲取 8 到 12 MB 的內(nèi)存以完成初始化過程。當(dāng)實例完成初始化后,就不會再獲取更多的內(nèi)存,直到用戶連接到該實例并開始產(chǎn)生工作負荷。這時,該實例根據(jù)需要不停地獲取內(nèi)存以支持工作負荷。

隨著更多的用戶連接并運行查詢,SQL Server 將獲取支持需求所需的額外內(nèi)存。該實例將繼續(xù)獲取內(nèi)存直到達到自身的內(nèi)存分配目標,并且直到達到該目標的下限才會釋放任何內(nèi)存。

 

為了在不產(chǎn)生多余換頁 I/O 的情況下獲取盡可能多的內(nèi)存,SQL Server 的每個實例都設(shè)置一個內(nèi)存獲取目標,直到計算機的可用物理內(nèi)存在 4 MB 到 10 MB 的范圍內(nèi)。之所以選擇該范圍是因為測試表明 Windows NT 和 Windows 2000 都有最小內(nèi)存交換,直到內(nèi)存分配等于可用物理內(nèi)存減去 4 MB。

工作負荷處理任務(wù)重的 SQL Server 實例保留的可用物理內(nèi)存為范圍的較低端 (4 MB);工作負荷處理任務(wù)輕的實例保留的可用物理內(nèi)存為范圍的較高端 (10 MB)。

SQL Server 實例的目標隨工作負荷的改變而變化。當(dāng)更多的用戶連接并產(chǎn)生更多的工作時,該實例傾向于獲取更多的內(nèi)存以使可用的內(nèi)存保持在 4 MB 的限制以下。當(dāng)工作負荷減輕時,該實例將其目標調(diào)整為 10 MB 的可用空間,并釋放內(nèi)存給操作系統(tǒng)。將可用空間量保持在 10 MB 與 4 MB 之間可防止 Windows NT 或 Windows 2000 過多執(zhí)行換頁操作,同時使 SQL Server 得以獲得盡可能最大的高速緩沖存儲器而不至引起額外的交換。

實例的目標內(nèi)存設(shè)置與MS-SQL Server數(shù)據(jù)庫緩沖池的頁相對于可用池大小的需求有關(guān)。在任何即時點,緩沖區(qū)頁的總需求取決于滿足所有當(dāng)前執(zhí)行的查詢所需的數(shù)據(jù)頁數(shù)。如果相對于高速緩沖存儲器內(nèi)的頁數(shù),數(shù)據(jù)頁的需求很大,則當(dāng)前在緩沖區(qū)內(nèi)的每一頁很可能在相對較短的時間內(nèi)由新頁替換。

這可由"緩沖區(qū)管理器"對象的"頁生命期"性能計數(shù)器來度量。對于相對較小的緩沖區(qū)有較高需求的情況將生成短生命期,而純粹的影響就是使 I/O 增加,因為在頁可由多個邏輯讀取引用之前往往要被重寫。為減輕這個問題,數(shù)據(jù)庫引擎可以獲取更多的內(nèi)存以增加高速緩沖存儲器的大小。當(dāng)頁生命期長時,數(shù)據(jù)庫引擎將可用內(nèi)存定位于目標的高端 (10 MB);而當(dāng)頁生命期短時,數(shù)據(jù)庫引擎定位于目標范圍的低端 (4 MB)。

隨著其它應(yīng)用程序在運行 SQL Server 實例的計算機上啟動,它們消耗內(nèi)存致使可用物理內(nèi)存量降到 SQL Server 的目標以下。SQL Server 實例于是從其地址空間釋放足夠內(nèi)存,以使可用內(nèi)存量回到 SQL Server 的目標。

如果有其它應(yīng)用程序停止運行而使可用內(nèi)存增多,SQL Server 實例將增加其內(nèi)存分配大小。SQL Server 可以每秒釋放并獲取幾 MB 字節(jié)的內(nèi)存,這使它得以根據(jù)內(nèi)存分配變化作出快速調(diào)整。

你可以通過設(shè)置允許SQL Server可以使用的最大內(nèi)存來做限制:

最小和最大服務(wù)器內(nèi)存的影響

min server memory 和 max server memory 配置選項建立由 SQL Server 數(shù)據(jù)庫引擎使用的內(nèi)存量的上限和下限。數(shù)據(jù)庫引擎并不立即獲取 min server memory 中指定的內(nèi)存量。數(shù)據(jù)庫引擎啟動時只使用初始化所需的內(nèi)存。

隨著數(shù)據(jù)庫引擎工作負荷的增加,它將繼續(xù)獲取支持工作負荷所需的內(nèi)存。MS-SQL Server數(shù)據(jù)庫引擎直到到達 min server memory 中指定的內(nèi)存量才會釋放任何所需的內(nèi)存。一旦到達 min server memory,數(shù)據(jù)庫引擎將使用標準算法(使操作系統(tǒng)的可用內(nèi)存保持在 4 MB 到 10 MB 之間)獲取和釋放所需內(nèi)存。唯一的區(qū)別是數(shù)據(jù)庫引擎從不將內(nèi)存分配降到 min server memory 所指定的水平下,也從不獲取超過max server memory 所指定水平的內(nèi)存。

 

數(shù)據(jù)庫引擎獲取的內(nèi)存量完全取決于放置在實例上的工作負荷。不處理很多請求的 SQL Server 實例可能永遠達不到 min server memory。

如果為 min server memory 和 max server memory 指定相同的值,則一旦分配給數(shù)據(jù)庫引擎的內(nèi)存達到該值,數(shù)據(jù)庫引擎將停止動態(tài)釋放和獲取內(nèi)存。

如果在運行 SQL Server 實例的計算機上頻繁啟動或停止其它應(yīng)用程序,啟動這些應(yīng)用程序所需的時間可能會因 SQL Server 實例分配和釋放內(nèi)存而延長。另外,如果 SQL Server 是幾個在一臺計算機上運行的服務(wù)器應(yīng)用程序中的一個,系統(tǒng)管理員可能需要控制分配給 SQL Server 的內(nèi)存量。在這些情況下,可以使用 min server memory 和 max server memory 選項控制 SQL Server 可以使用的內(nèi)存量。

 

何設(shè)置固定的內(nèi)存量(企業(yè)管理器)

 

設(shè)置固定的內(nèi)存量

 

展開一個服務(wù)器組。

 

右擊一個服務(wù)器,再單擊"屬性"。

 

 

單擊"內(nèi)存"選項卡。

 

 

單擊"使用固定的內(nèi)存大小 (MB)",然后將固定內(nèi)存滑塊放在適當(dāng)?shù)奈恢谩?/p>

 

 

說明 如果使用默認設(shè)置,則 Microsoft® SQL Server™ 將動態(tài)配置內(nèi)存。

 

 

這是由SQL Server的內(nèi)存管理機制決定的

 

12:查看當(dāng)前MS-SQL Server數(shù)據(jù)庫中所有存儲過程

select name as 存儲過程名稱 from sysobjects where xtype='P'

 

13:查詢用戶創(chuàng)建的所有數(shù)據(jù)庫

 

  1. select * from master..sysdatabases D where sid not in(select sid from master..syslogins where name='sa'

 

或者

 

 

  1. select dbid, name AS DB_NAME from master..sysdatabases where sid <> 0x01 

 

14:查詢某一個表的字段和數(shù)據(jù)類型

 

  1. select column_name,data_type from information_schema.columns 

 

where table_name = '表名'

 

[n].[標題]:

 

  1. Select * From TableName Order By CustomerName 

 

[n].[標題]:

 

  1. Select * From TableName Order By CustomerName  

 

上述的相關(guān)內(nèi)容就是對MS-SQL Server數(shù)據(jù)庫開發(fā)精典技巧的描述,希望會給你帶來一些幫助在此方面。

【編輯推薦】

  1. 三種SQL Server 恢復(fù)模式的比較
  2. 造成SQL Server查詢速度慢的10種原因
  3. SQL Server分布式數(shù)據(jù)庫的優(yōu)點與缺點
  4. SQL Server數(shù)據(jù)庫的分布式數(shù)據(jù)庫系統(tǒng)的終極目標
  5. 正確解決SQL Server警報問題
責(zé)任編輯:佚名 來源: 賽迪網(wǎng)
相關(guān)推薦

2011-03-21 10:13:31

Sql Server數(shù)分區(qū)

2009-07-06 21:20:34

SQL Server數(shù)

2010-07-22 13:59:14

MS SQL Serv

2011-03-08 09:27:34

SQL Server數(shù)死鎖

2009-03-11 15:40:20

2010-07-15 17:28:50

SQL Server

2010-11-29 11:51:59

Sybase數(shù)據(jù)庫維護

2011-03-28 17:12:36

sql server數(shù)優(yōu)化

2011-08-29 14:17:10

SQL Serverdefault val

2010-06-01 10:58:57

MySQL數(shù)據(jù)庫

2010-07-12 15:49:53

MS SQL Serv

2011-03-30 13:24:23

SQL Server數(shù)故障修復(fù)

2010-03-16 10:12:40

SQL Server

2011-07-26 17:19:32

SQL Server數(shù)隨機抽取數(shù)據(jù)

2015-04-14 15:24:01

SQL ServerOLAPDBA

2010-07-01 11:49:13

SQL Server

2010-07-08 11:05:14

SQL Server數(shù)

2011-04-06 11:16:47

SQL Server數(shù)查詢優(yōu)化

2021-05-17 06:57:34

SQLServer數(shù)據(jù)庫

2011-09-02 10:06:51

OracleSqlLoad常用技巧
點贊
收藏

51CTO技術(shù)棧公眾號