2014-01-10 49 views
0

這裏是可以編碼如果我們在SQL Server中定義varchar,會有多少個字符?

Create table dbo.EXA 
(
    Name VARCHAR, 
    ID INT 
) 

因爲我沒有定義的大小多少字符將持有的數據類型VARCHAR

或定義

NAME VARCHAR 

它自己錯了嗎?

+0

去TEXT到位VARCHAR的,如果你不能確定你的領域 –

+0

@HardikBhalani大小是保持: **不要再使用**'TEXT'!它是(a)被棄用的,(b)難以使用的,以及(c)通常意味着太多的數據。這是**非常糟糕的建議! –

+0

哦..感謝您的回覆..我會記住這一點 –

回答

2

您將得到正確的一個字符 - 這通常不是你想要的。在您定義SQL Server變量,存儲過程或表列的參數的情況下。

如果在使用CONVERTCAST轉換的上下文中沒有指定任何長度VARCHAR,則默認值爲30個字符。

我的建議是ALWAYS明確定義的長度 - 那麼很顯然(對你,對T-SQL,一個可憐的傢伙誰需要保持一年你的代碼),你想要什麼/需要

0

我連接到SQL Server 2005,運行上述並在完成後檢查表並將其自動設置爲一個字符。

0

VARCHAR等同於VARCHAR(1)
我想這段代碼檢查了這一點 Demo

相關問題