修改SQL-SERVER数据库表结构的SQL命令附sql命令行修改数据库
具体不废话了,请看下文代码详细说明吧。
向表中增加一个varchar列:
ALTERTABLEdistributorsADDCOLUMNaddressvarchar(30);
从表中删除一个字段:
ALTERTABLEdistributorsDROPCOLUMNaddressRESTRICT;
在一个操作中修改两个现有字段的类型:
ALTERTABLEdistributors
ALTERCOLUMNaddressTYPEvarchar(80),
ALTERCOLUMNnameTYPEvarchar(100);
使用一个USING子句,把一个包含UNIX时间戳的integer字段转化成timestampwithtimezone:
ALTERTABLEfoo
ALTERCOLUMNfoo_timestampTYPEtimestampwithtimezone
USING
timestampwithtimezone'epoch'+foo_timestamp*interval'1second';
对现存字段改名:
ALTERTABLEdistributorsRENAMECOLUMNaddressTOcity;
更改现存表的名字:
ALTERTABLEdistributorsRENAMETOsuppliers;
给一个字段增加一个非空约束:
ALTERTABLEdistributorsALTERCOLUMNstreetSETNOTNULL;
从一个字段里删除一个非空约束:
ALTERTABLEdistributorsALTERCOLUMNstreetDROPNOTNULL;
给一个表增加一个检查约束:
ALTERTABLEdistributorsADDCONSTRAINTzipchkCHECK(char_length(zipcode)=5);
删除一个表和它的所有子表的监查约束:
ALTERTABLEdistributorsDROPCONSTRAINTzipchk;
向表中增加一个外键约束:
ALTERTABLEdistributorsADDCONSTRAINTdistfkFOREIGNKEY(address)REFERENCESaddresses(address)MATCHFULL;
给表增加一个(多字段)唯一约束:
ALTERTABLEdistributorsADDCONSTRAINTdist_id_zipcode_keyUNIQUE(dist_id,zipcode);
给一个表增加一个自动命名的主键约束,要注意的是一个表只能有一个主键:
ALTERTABLEdistributorsADDPRIMARYKEY(dist_id);
把表移动到另外一个表空间:
ALTERTABLEdistributorsSETTABLESPACEfasttablespace;
ps:SQL命令行修改数据库
增加列:
altertabletableNameaddcolumnNamevarchar(30)
修改列类型:
altertabletableNamealtercolumncolumnNamevarchar(4000)
修改列的名称:
EXECsp_rename'tableName.column1','column2'(把表名为tableName的column1列名修改为column2)
删除列:
altertabletableNamedropcolumncolumnName
以上内容就是本文的全部叙述,希望对大家有所帮助。