我找不到有关如何更改mysql表的列的VARCHAR编号的信息。
例如我有一张桌子"表1"包含2列:" ID"和#34;回应"。
"响应"正在使用VARCHAR 150,我想将其更改为VARCHAR 2000。
什么是完整的sql命令?
UPDATE `table1` SET `Response`...?
感谢您的帮助。 罗马
答案 0 :(得分:2)
您必须使用alter
table命令来更改列的定义,而不是update
。
alter table `table1` modify response varchar(2000)
并确保还包括其他相关属性,如not null default 'some xyz'
等
答案 1 :(得分:1)
您无法使用UPDATE
更改表格定义。 UPDATE
用于表中的数据。您需要使用ALTER TABLE
命令更改表定义。
要使用的陈述是
ALTER TABLE `table1` MODIFY COLUMN response VARCHAR(2000)
请注意MODIFY COLUMN
之后的部分采用完整的列规范,因此如果为列设置了任何特殊属性(如NOT NULL
或默认值),则必须在此处再次指定它们,因为ALTER TABLE ... MODIFY COLUMN ...
命令不仅会更改指定的属性(例如类型),而是将旧列定义替换为新列。
答案 2 :(得分:0)
ALTER TABLE `Table1`
MODIFY COLUMN `Response` VARCHAR(100)
但你为什么不使用Text?