包含altertablechange的词条

http://www.itjxue.com  2023-01-21 00:24  来源:未知  点击次数: 

ALTER TABLE相关命令及change和modify的区别

表结构改变的时候,比如添加列alter table 表名 add 列名 类型,修改列alter table 表名 modify(列名 类型) ,添加约束alter table 表名 add constraint 约束名 primary key (字段) using index;

sql语句中ALTER TABLE MODIFY和ALTER TABLE CHANGE的区别?

modify能修改字段类型和约束,而change不能。

change用来字段重命名,不能修改字段类型和约束;

modify不用来字段重命名,只能修改字段类型和约束;

试验比较:

1、字段重命名:

1)change

mysql alter table t1 change number id char(2);

Query OK, 0 rows affected (0.08 sec)

Records: 0 Duplicates: 0 Warnings: 0

2)modify

mysql alter table t1 modify id num int(2);

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'num int(2)' at line 1

mysql

结论:能用change重命名,而modify不能。

2、修改字段类型和约束

1)modify

mysql alter table t1 modify id int(2);

Query OK, 0 rows affected (0.06 sec)

Records: 0 Duplicates: 0 Warnings: 0

mysql alter table t1 modify id int(2) not null;

Query OK, 0 rows affected (0.08 sec)

Records: 0 Duplicates: 0 Warnings: 0

2)change

mysql alter table t1 change id char(2);

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'char(2)' at line 1

mysql alter table t1 change id char(2) not null;

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'char(2) not null' at line 1

结论:modify能修改字段类型和约束,而change不能。

最终结论:change用来字段重命名,不能修改字段类型和约束;

modify不用来字段重命名,只能修改字段类型和约束;

alter table 如何删除一列,SQL 中的alter 语句用来删除一张表的一列。具体的句法是什么了?

1、用alter语句添加一个字段sex,格式如图alter table [表名] add [字段名] [字段数据类型]。

2、查看表,有没有成功添加。

3、用alter语句加change修改一个字段sex名称,格式如图,alter table [表名] change[旧字段名] [新字段名][字段数据类型]。

4、查看表,有没有成功修改。

5、用alter语句加drop删除一个字段,格式如图,alter table [表名] drop[字段名]。

6、查看表,有没有成功删除。

mysql中alter语句中change和modify的区别

区别:

1、CHANGE 对列进行重命名或更改列的类型,需给定旧的列名称和新的列名称、当前的类型MODIFY 可以改变列的类型,此时不需要重命名(不需给定新的列名称)

2、案例

以使用CHANGE old_col_namecolumn_definition子句对列进行重命名。重命名时,需给定旧的和新的列名称和列当前的类型。例如:要把一个INTEGER列的名称从a变更到b,需要如下操作:

· mysql ALTER TABLE t1 CHANGE a b INTEGER;

如果想要更改列的类型而不是名称, CHANGE语法仍然要求旧的和新的列名称,即使旧的和新的列名称是一样的。例如:

mysql ALTER TABLE t1 CHANGE b b BIGINT NOT NULL;

也可以使用MODIFY来改变列的类型,此时不需要重命名:

mysql ALTER TABLE t1 MODIFY b BIGINT NOT NULL;

mysql alter 语句用法,添加、修改、删除字段等

//主键549830479

alter table tabelname add new_field_id int(5) unsigned default 0 not null auto_increment ,add primary key (new_field_id);

//增加一个新列549830479

alter table t2 add d timestamp;

alter table infos add ex tinyint not null default '0';

//删除列549830479

alter table t2 drop column c;

//重命名列549830479

alter table t1 change a b integer;

//改变列的类型549830479

alter table t1 change b b bigint not null;

alter table infos change list list tinyint not null default '0';

//重命名表549830479

alter table t1 rename t2;

加索引549830479

mysql alter table tablename change depno depno int(5) not null;

mysql alter table tablename add index 索引名 (字段名1[,字段名2 …]);

mysql alter table tablename add index emp_name (name);

加主关键字的索引549830479

mysql alter table tablename add primary key(id);

加唯一限制条件的索引549830479

mysql alter table tablename add unique emp_name2(cardnumber);

删除某个索引549830479

mysqlalter table tablename drop index emp_name;

修改表:549830479

增加字段:549830479

mysql ALTER TABLE table_name ADD field_name field_type;

修改原字段名称及类型:549830479

mysql ALTER TABLE table_name CHANGE old_field_name new_field_name field_type;

删除字段:549830479

mysql ALTER TABLE table_name DROP field_name;

删除主键: alter table Employees drop primary key;

(责任编辑:IT教学网)

更多