我试图在不丢失内容的情况下将varchar列的长度从255个字符更新为500。我之前已经删除并重新创建了表,但我从来没有接触过alter语句,这是我认为我需要使用的。我在这里找到了文档:ALTER TABLE (Transfact-SQL),但我不能让它的头或尾。
到目前为止,我有以下(不幸的是,基本上没有):
alter table [progennet_dev].PROGEN.LE
alter column UR_VALUE_3
我该怎么做呢?有没有更好的关于这条语句的文档(我搜索了一些示例语句,但一无所获)?
你需要
ALTER TABLE YourTable ALTER COLUMN YourColumn <<new_datatype>> [NULL | NOT NULL]
但如果需要,请记住显式指定NOT NULL。
ALTER TABLE YourTable ALTER COLUMN YourColumn VARCHAR (500) NOT NULL;
如果你不指明,如下所示…
ALTER TABLE YourTable ALTER COLUMN YourColumn VARCHAR (500);
然后该列将默认为允许空值,即使它最初定义为NOT NULL。例如,在ALTER TABLE中省略规范…ALTER COLUMN总是被视为。
ALTER TABLE YourTable ALTER COLUMN YourColumn VARCHAR (500) NULL;
这种行为不同于用ALTER TABLE(或在CREATE TABLE时)创建的新列。默认的可空性取决于ANSI_NULL_DFLT设置。
你需要
ALTER TABLE YourTable ALTER COLUMN YourColumn <<new_datatype>> [NULL | NOT NULL]
但如果需要,请记住显式指定NOT NULL。
ALTER TABLE YourTable ALTER COLUMN YourColumn VARCHAR (500) NOT NULL;
如果你不指明,如下所示…
ALTER TABLE YourTable ALTER COLUMN YourColumn VARCHAR (500);
然后该列将默认为允许空值,即使它最初定义为NOT NULL。例如,在ALTER TABLE中省略规范…ALTER COLUMN总是被视为。
ALTER TABLE YourTable ALTER COLUMN YourColumn VARCHAR (500) NULL;
这种行为不同于用ALTER TABLE(或在CREATE TABLE时)创建的新列。默认的可空性取决于ANSI_NULL_DFLT设置。