ALTER TABLE Physician
Modify (RefLastName nvarchar(500),
RefFirstName nvarchar(500));
獲得不正確的語法錯誤......這個查詢有什麼錯誤?
ALTER TABLE Physician
Modify (RefLastName nvarchar(500),
RefFirstName nvarchar(500));
獲得不正確的語法錯誤......這個查詢有什麼錯誤?
您是要添加列或改變大小?
您可能會先嚐試查找BOL中的alter table,然後再返回這裏,如果這沒有幫助。
您使用ALTER TABLE
的方式與CREATE TABLE
不同。您提到對錶格元素的更改,而不是從頭開始指定所有列。像:
ALTER TABLE TableName
ADD LastName NVARCHAR(100) NOT NULL
你的語法錯誤是什麼?
我看着http://www.techonthenet.com/sql/tables/alter_table.php
與也許嘗試:
ALTER TABLE Physician
Modify (RefLastName varchar2(500),
RefFirstName varchar2(500));
我不知道你想做什麼。你在改變尺寸嗎?如果是這樣,這就夠了:
ALTER TABLE Physician ALTER COLUMN RefLastName nvarchar(500)
GO
ALTER TABLE Physician ALTER COLUMN RefLastName nvarchar(500)
GO
(您可能需要強制重建索引的。)
是的我正在嘗試使用SqlCommand從c#代碼更改列大小。 – Jango 2009-11-23 20:59:25
奧克。我的問題是我使用C#代碼更新列大小。如果我使用上面的語句沒有去統計,SqlCommand(cmd.ExuecteNonQuery)更新列大小,但返回-1。如果我使用Go Statment,它會在'Go'附近提供錯誤的語法。我不知道你是否可以幫助我使用C#代碼。如果你想我也可以粘貼我的C#代碼。 – Jango 2009-11-23 21:03:49
ExecuteNonQuery可以返回-1。這很正常。從MSDN:「對於UPDATE,INSERT和DELETE語句,返回值是受命令影響的行數[...]對於所有其他類型的語句,返回值爲-1。」 – 2009-11-23 21:14:26
你到底用這個來完成?我不知道你使用的是什麼版本,但我不認爲修改是一個有效的選項,請參閱http://msdn.microsoft.com/en-us/library/ms190273.aspx – StevenWilkins 2009-11-23 20:53:12