總結:http://topic.csdn.net/u/20071024/20/ed09a43f-2f94-4bf6-b9a0-5b8899539d4d.html
樓主:存在這樣一張表:create table t (int a, int b)
我現在要連續插入60036條記錄,我寫了乙個很簡單的指令碼如下:
declare @i int
set @i = 500
while @i <= 65535
begin
insert into t(a, b) values (@i, 1)
set @i = @i + 1
end
go 這段指令碼如果在sql2000上執行,僅需幾十秒左右。如果在sql2005上執行,卻需要6分鐘。基本上慢了20倍。
請高手幫忙看看這是是麼原因啊?是否有需要優化的地方?
select
top65036a=
identity
(int
,500,1
) into
#t from
syscolumns a,syscolumns b
insert
t selecta,1
from
#tdrop
table#t
在機房查了一天終於找到原因了,應該是硬體配置問題。發現執行慢的機器都是用的hp proliant dl380/580 g5的伺服器,而dell poweredge 2850或者聯想的伺服器以及我們自己用的pc機執行都非常快啊。
在網上查了乙個網頁說是,hp dl 380伺服器可能要配乙個配件。
後來在hp支援中心查到要在hp伺服器上加乙個bbwc的磁碟讀寫快取,可以提高寫盤速度。預設的是唯讀快取,導致速度很慢。
這個帖子中說的情況和我一樣的,也是基本上一分鐘只能插入1萬條記錄。
把這個情況說一下,希望大家以後遇到這個問題,就不用像我這樣從軟體一直查到硬體了,忙了兩天了。
好像還有乙個問題就是,如果sql server的安裝目錄與資料目錄不在一張盤上,也會導致速度慢。
關於使用GUID和Identity做主鍵的一些思考
通常,給資料庫中的表都新增乙個 無意義 的主鍵,能夠大大地簡化程式的開發。這個主鍵用什麼型別呢?其實各種型別,只要大小不超過900位元組都可以,但我們最常面臨的兩種選擇是 guid uniqueidentifity 和identity int。ado.net 2.0高階程式設計 一書的 5.2.2 ...
提高eclipse使用效率
編輯 常用快捷鍵 格式化 的快捷鍵 ctrl shift f 格式化縮排的快捷鍵是 ctrl i,只能對選中的文字進行縮排 刪除一行的快捷鍵是 ctrl d 當前視窗最大化最小化切換 ctrl m 轉到最後進行修改的位置 ctrl q 快速查詢選中的字元 ctrl k 向下 ctrl shift k...
如何使用Android Studio提高App質量
android studio作為現在谷歌主推的android開發功能,除了提供了大量的功能幫助快速開發android 之外,在 質量控制方面也提供了很多任務具,這些工具都放在analyze選單下,主要有inspect code,code cleanup,analyze dependencies等功能...