A. sql Server 2005是如何突破行大小(8K)限制的
但是對於一個特定列來說,仍然不允許超過8K的限制襲陵,除了LOB類型。比如你不能定義varchar(9000)或者nvarchar(5000)類型,有人說可以定義varchar(max)或nvarchar(max),但是很可惜,這兩種新加類型是LOB類型,跟varchar,nvarchar本質不同。
我們回歸正題,但是我們可以聲明總和超過8096bytes的row,比如 mytable(a varchar(1000),b nvarchar(4000)),這在2005是允許的。那麼2005是如何在內部處理這些過大的行的呢?其實在內部,它會先判叢禪禪斷你實際數據的大小,如果你執行了insert into mytable select 'a','b',實際row的大小是3bytes(不包含page頭信息),sql server會把這行存在IN_ROW_DATA類型的page中,這種page速度最快。如果你你執行了insert into mytable select 'a',replacate('b',4000),那麼大小為8003bytes,超過了8000bytes,(96bytes為page頭信息)那麼列b將被重新分配到一個ROW_OVERFLOW_DATA 類型的page中,在原IN_ROW_DATA頁中記錄新頁的地址信息。這就是為什麼2005能使行大小突破8k限制的原滲塵因。
B. SQL server 2005 完全安裝要多大的空間
20MB左右. 可能是日誌文件及垃圾文件過多,你的系統用了很久了吧.可用windows的"磁碟清理"刪除不必要的文件,釋放空間.當然,用windows優化大師或超級兔子也可以了.如果還不行,乾脆重做一下系統吧. 另外,理論上SQL Server設計資料庫及資料庫表是不需要象ACCESS那樣需要設置資料庫的大小,用SQL Server做資料庫,資料庫及資料庫表的大小是跟你的硬碟空間有關,也就是說你資料庫在不斷增大,你安裝資料庫的文件夾也在增大,對應的盤符也在增大,你需要的硬碟空間也就越大,對內存一般要求不會很高,一般有128m的機子應該都沒問題,不過建議還是在256以上,資料庫內查找數據的速度,很大程度上取決與你的資料庫結構,以及你代碼中操作資料庫數據的合理性 回答:2006-04-08 19:46提問者對答案的評價:
C. 如何壓縮SQL Server 2005指定資料庫文件和日誌的大小
下面有兩個SQL語句可以達到在SQL
Server
2005/2008壓縮指定資料庫文件和日誌的大小的效果:
1、DBCC
SHRINKDATABASE
(Transact-SQL)
收縮指定資料庫中的數據文件和日誌文件的大小。
語法
DBCC
SHRINKDATABASE
(
'database_name'
|
database_id
|
0
[
,target_percent
]
[
,
{
NOTRUNCATE
|
TRUNCATEONLY
}
]
)
[
WITH
NO_INFOMSGS
]
參數
'database_name'
|
database_id
|
0
要收縮的資料庫的名稱或
ID。如果指定
0,則使用當前資料庫。
target_percent
資料庫收縮後的資料庫文件中所需的剩餘可用空間百分比。
NOTRUNCATE
通過將已分配的頁從文件末尾移動到文件前面的未分配頁來壓縮數據文件中的數據。target_percent
是可選參數。
文件末尾的可用空間不會返回給操作系統,文件的物理大小也不會更改。因此,指定
NOTRUNCATE
時,資料庫看起來未收縮。
NOTRUNCATE
只適用於數據文件。日誌文件不受影響。
TRUNCATEONLY
將文件末尾的所有可用空間釋放給操作系統,但不在文件內部執行任何頁移動。數據文件只收縮到最近分配的區。如果與
TRUNCATEONLY
一起指定,將忽略
target_percent。
TRUNCATEONLY
只適用於數據文件。日誌文件不受影響。
D. 我下了個sql server 2005 但是軟體大小才五十兆。請問為什麼這么小,能用嗎還是它只是個插件。
沒有這么小,有可能你的是sql server 2005 express版本(精簡版)。
E. 安裝SQL Server 2005企業版需要佔用多大磁碟空間
我在添加刪除裡面看了一下御乎棚
sql
server
2005
924M
sql
server
2005
mobile
developer
tools
68M
sql
server
2005
聯頃游機叢書
138M
其餘的鎮則都是20M左右的.大概4個.就算100M吧.加起來2G還是夠用的