我需要在數據庫中保存字符串。每個字符串的大小從1到N不等。我認爲這個限制大約是10000,也許更多。 nvarchar(MAX)是解決這個問題的最好方法嗎?SQL存儲字符串
Q
SQL存儲字符串
1
A
回答
4
在SQL Server 2005
及更高版本中,NVARCHAR(MAX)
是存儲長度超過4000
個字符的字符串的最佳方式。
這是推薦用於SQL Server 2005
及更高版本的唯一方法,但它仍支持TEXT
列以實現向後兼容性。
請注意,您無法在NVARCHAR(MAX)
列上創建索引。
要使用索引,請創建一個計算列並將其用於索引搜索。它可以作爲一種有效的粗過濾器:
CREATE TABLE foo (id INT NOT NULL, mytext NVARCHAR(MAX) NOT NULL, mytext_index AS CAST(mytext AS NVARCHAR(450))
CREATE INDEX ix_foo_mytext (mytext_index)
SELECT *
FROM mytext
WHERE mytext_index LIKE 'L%'
1
nvarchar的是正確的,如果它們是的unicode(或其他非-7-或-8-比特串)。如果它們是例如ASCII latin-1文本(在很多情況下足夠了),varchar(MAX)將節省空間。
相關問題
- 1. 存儲字符串
- 2. 存儲字符串
- 3. 存儲字符串
- 4. 在字符串內存儲字符串?
- 5. 在字符串中存儲字符串
- 6. 存儲XML爲字符串
- 7. Jasmin ByteCode存儲字符串
- 8. 存儲在字符串
- 9. 存儲連接字符串
- 10. 字符串常量存儲
- 11. 存儲字符串中有
- 12. LINQ - 存儲爲字符串
- 13. 存儲字符串的my.settings
- 14. 存儲XML字符串
- 15. 存儲反轉字符串
- 16. 基於存儲在SQL Server XML數據中的字符串構建字符串
- 17. 存儲SQL字符串保留換行符
- 18. 如何在SQL SERVER中存儲AD八位字節字符串?
- 19. 使用Strtok存儲一串字符串
- 20. 用SQL存儲過程中的字符串中的另一個子字符串替換特定子字符串
- 21. 執行存儲爲字符串的SQL算法(存儲過程?c#?)
- 22. 存儲靜態JSON字符串成字符串
- 23. 將字符串的地址存儲在字符串數組中
- 24. 如何在字符串標籤中存儲字符串
- 25. 分割字符串並存儲在一個新的字符串
- 26. 在kdb中存儲一個字符串作爲字符串
- 27. 在二維字符串數組中存儲很多字符串
- 28. 比較字符串存儲在Android的字符串資源?
- 29. 將部分字符串存儲在字符串數組中
- 30. 存儲在字符串池中唯一字符串lliterals?
超過4000,因爲我們正在談論nvarchar – 2009-04-27 15:31:41