php从入门到精通 php从入门到精通PHP是什么php环境搭建php echo/print 打印输出PHP date()函数:日期和时间PHP语法PHP 变量PHP 常用数据类型PHP常量PHP运算符PHP if语句PHP Switch语句PHP for和foreach 循环PHP while 循环PHP退出循环PHP 函数PHP 类与对象PHP命名空间PHP超全局变量PHP 表单 PHP表单提交PHP 表单验证PHP 日常操作 PHP多维数组PHP Include和require用法PHP 打开/读取/输出/关闭文件PHP 创建/写入文件PHP 上传文件PHP 复制/移动/删除文件PHP判断目录文件是否存在PHP获取文件属性和权限PHP cookiePHP SessionPHP Mysql数据库 创建/选择/删除Mysql数据库创建/删除Mysql数据表修改/重命名Mysql数据表Mysql数据管理PHP 连接MySQL数据库PHP 创建MySQL数据库PHP创建Mysql数据表PHP插入Mysql数据PHP查询Mysql数据PHP MySQL Order By排序PHP MySQL UPDATE更新数据PHP MySQL Delete删除数据

修改/重命名Mysql数据表

在操作数据库表时难免会出错,如何修改数据表呢?

PHPmyadmin修改表结构

35.gif

命令行修改数据表结构

修改表结构是指增加或者删除字段、修改字段或者是字段类型、设置取消索引、设置取消主键外键和修改表注解等。修改表结构使用alter table命令。

语法:

ALTER [IGNORE] TABLE tbl_name [alter_specification [, alter_specification] ...]
注意当指定IGNORE时,如果出现重复的行,则只执行一行,其他重复的行被删除,其中,alter_specification子句定义要修改的内容,的语法。

alter_specification语法:

| ADD [COLUMN] column_name column_definition [FIRST | AFTER column_name]   --添加新字段
| ADD INDEX[index_name](index_column_name...)                              --添加索引名称
| ADD UNIQUE[index_name](index_column_name...)                             --添加唯一索引名称
| ADD PRIMARY KEY(index_column_name...)                                    --添加主键名称
| CHANGE [COLUMN] old_column_name new_column_name column_definition
        [FIRST|AFTER column_name]                                          --修改字段名称和类型
| DROP PRIMARY KEY                                                         --删除主键
| DROP [COLUMN] column_name                                                --删除字段
| DROP INDEX index_name                                                    --删除索引

'user2'表添加为整形ccc字段不为空的字段

ALTER TABLE  `user2` ADD  `ccc` INT NOT NULL

'user2'表已将 id和Name2字段设为索引

ALTER TABLE  `user2` ADD INDEX (  `id` ,  `Name2` ) ;

'user2'表已将 password字段设为唯一索引

ALTER TABLE  `user2` ADD UNIQUE (`password`)

'user2'表已将 ccc字段设为主键

ALTER TABLE `user2` ADD PRIMARY KEY(`ccc`)

'user2'表已将 Name2字段改名为Name(长255的字符类型)

ALTER TABLE  `user2` CHANGE  `Name2`  `Name` CHAR( 255 )

删除'user2'表的主键

ALTER TABLE `user2` DROP PRIMARY KEY;

删除'user2'表的`ccc`字段

ALTER TABLE `user2` DROP `ccc`

删除'user2'表的`id`索引

ALTER TABLE `user2` DROP INDEX `id`

重命名数据表

为了理解自己项目,在一般情况下会经常修改数据表,我们使用rename table 命令实现对数据表的重命名。

语法:

RENAME TABLE
    tbl_name TO new_tbl_name
    [, tbl_name2 TO new_tbl_name2] ...

翻译语法:

RENAME TABLE 数据库名加表名 TO 数据库名加新表名

案例:

把test数据库的user表改名为user2表

RENAME TABLE  `test`.`user` TO  `test`.`user2` ;