2011-01-07 5 views
-1

이 질문을 게시하기 전에 많은 것을 시도했지만 저에게는 도움이되지 않았습니다. 난 다음, SQL 서버 2005에서 테이블의 열 이름을 바꾸려면 내가는 SQL server2005에서 실행 한 쿼리를 원하는 :SQL 서버 2005 쿼리가 실행되지 않음

1) ALTER TABLE Details RENAME COLUMN AccountID TO UID; but it gives me the error: Incorrect syntax near the keyword 'COLUMN'.

2)I have added one new column in the table by query: ALTER TABLE Details ADD BID uniqueidentifier; and then I want to set the coulmn property to not null .

내가 어떻게 할 수 있습니까?

답변

4

AS 미리 사용 sp_Rename 'TableName.Column', 'NewColumnName', 'COLUMN'에서

감사합니다. 당신이 디폴트 값을 지정하지 않으려면 먼저 열을 만들어야합니다,

ALTER TABLE myTable 
     ADD myColumn UNIQUEIDENTIFIER NOT NULL DEFAULT 'some default value' 

:

질문의 두 번째 부분을 수행하기 위해, 당신은 수행해야합니다 NULL. 열이 만들어지면 원하는 값으로 채운 다음 열을 NOT NULL으로 다시 변경할 수 있습니다.

2

1) ALTER TABLE을 사용하는 대신 sp_rename을 사용하지 않으시겠습니까? 예를 들어 :

EXEC sp_rename 'Details.[AccountID]', 'title', 'UID' 

2) 당신은 ALTER TABLE Details ALTER COLUMN BID NOT NULL를 사용할 수 있지만 테이블에 이미 데이터가있는 경우 당신은 아마, 또한 대한 기본 값을 지정할 수 있습니다.

관련 문제