mysql 操作表和列

· 您可以在一个ALTER TABLE语句里写入多个ADD, ALTER, DROP和CHANGE子句,中间用逗号分开。这是MySQL相对于标准SQL的扩展。在标准SQL中,每个ALTER TABLE语句中每个子句只允许使用一次。例如,在一个语句中取消多个列:

· mysql> ALTER TABLE t2 DROP COLUMN c, DROP COLUMN d;

[b]创建表[/b]
以下例子展示了ALTER TABLE的使用。首先展示表t1。表t1采用如下方法创建:

mysql> CREATE TABLE t1 (a INTEGER,b CHAR(10));
[code="java"][b]修改表名[/b]
把表t1重新命名为t2:

mysql> ALTER TABLE t1 RENAME t2;
[b]修改列的类型,名称[/b]
把列a从INTERGER更改为TINYINT NOT NULL(名称保持不变),并把列b从CHAR(10)更改为CHAR(20),同时把列b重新命名为列c:

mysql> ALTER TABLE t2 MODIFY a TINYINT NOT NULL, CHANGE b c CHAR(20);
[b]添加列[/b]
添加一个新的TIMESTAMP列,名称为d:

mysql> ALTER TABLE t2 ADD d TIMESTAMP;
[b]添加索引[/b]
在列d和列a中添加索引:

mysql> ALTER TABLE t2 ADD INDEX (d), ADD INDEX (a);
[b]删除列[/b]
删除列c:

mysql> ALTER TABLE t2 DROP COLUMN c;
[b]添加自动增长列[/b]
添加一个新的AUTO_INCREMENT整数列,名称为c:

mysql> ALTER TABLE t2 ADD c INT UNSIGNED NOT NULL AUTO_INCREMENT,
-> ADD PRIMARY KEY (c);
注意我们为c编制了索引(作为PRIMARY KEY),因为AUTO_INCREMENT列必须编制索引。同时我们定义c为NOT NULL,因为主键列不能为NULL。


-------
ps:添加自动增长我就没成功过.-0-~

附上 创建带有自动增长列的表
CREATE TABLE test_table(
Id int(6) unsigned NOT NULL auto_increment,
name varchar(10),
primary key (id)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
-------
成功了...
必须将自动增长列设为主键
这句话 primary key (id)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值