修改库名

首先:

  1. 不管存储引擎是InnoDB还是MyISAM直接去修改data下的文件夹名称都是不可行的。
  2. rename database oldname TO newname;也是不可行的。

可采取的方法:
方法一:
新建数据库,导出旧库数据,删除旧数据库,具体如下:
1.创建需要改成新名的数据库。
2.mysqldum 导出要改名的数据库。
3.删除原来的旧库。
该方法在数据量大时会比较慢。
方法二:
创建一个数据库,将旧数据库里的表都移动(重命名)到数据库内,删除旧数据库,具体如下:
假设源库名是old,目标库名是new
1.首先创建目标库。

  1. create database new;

2.获取所有源库的表名。

  1. use information_schema;
  2. select table_name from tables where table_schema=old;
  3. 或者是直接:
  4. select table_name from information_schema.tables where table_schema=old

3.然后按照以下命令一个个修改。

  1. rename table old.[tablename] to new.[tablename];
  2. # 批量修改
  3. rename table old.[tablename1] to new.[tablename1],
  4. old.[tablename2] to new.[tablename2],
  5. old.[tablename3] to new.[tablename3];

修改数据表(AlTER TABLE 语句)

MySQL中可以使用ALTER TABLE语句来改变原有表的结构,例如增加或删除列、创建或取消索引、更改原有列类型、重新命名列或表等。

基本语法

修改表指的是修改数据库中已经存在的数据表的结构。MySQL 使用 ALTER TABLE 语句修改表。常用的修改表的操作有修改表名、修改字段数据类型或字段名、增加和删除字段、修改字段的排列位置、更改表的存储引擎、删除表的外键约束等。
常用的语句如下:

  1. ALTER TABLE <表名> [修改选项]

修改选项的语法如下:

  1. { ADD COLUMN <列名> <类型>
  2. | CHANGE COLUMN <旧列名> <新列名> <新列类型>
  3. | ALTER COLUMN <列名> { SET DEFAULT <默认值> | DROP DEFAULT }
  4. | MODIFY COLUMN <列名> <类型>
  5. | DROP COLUMN <列名>
  6. | RENAME TO <新表名> }

添加字段

随着业务的变化,可能需要在已经存在的表中添加新的字段,一个完整的字段包括字段名、数据类型、完整性约束。添加字段的语法格式如下:

  1. ALTER TABLE <表名> ADD <新字段名> <数据类型> [约束条件] [FIRST|AFTER 已存在的字段名]

新字段名为需要添加的字段的名称;FIRST 为可选参数,其作用是将新添加的字段设置为表的第一个字段;AFTER 为可选参数,其作用是将新添加的字段添加到指定的已存在的字段名的后面。

修改字段数据类型

修改字段的数据类型就是把字段的数据类型转换成另一种数据类型。在 MySQL 中修改字段数据类型的语法规则如下:

  1. ALTER TABLE <表名> MODIFY <字段名> <数据类型>

其中,表名指要修改数据类型的字段所在表的名称,字段名指需要修改的字段,数据类型指修改后字段的新数据类型。

删除字段

删除字段是将数据表中的某个字段从表中移除,语法格式如下:

  1. ALTER TABLE <表名> DROP <字段名>

其中,字段名指需要从表中删除的字段的名称。

修改字段名称

MySQL 中修改表字段名的语法规则如下:

  1. ALTER TABLE <表名> CHANGE <旧字段名> <新字段名> <新数据类型>

其中,旧字段名指修改前的字段名;新字段名指修改后的字段名;新数据类型指修改后的数据类型,如果不需要修改字段的数据类型,可以将新数据类型设置成与原来一样,但数据类型不能为空。

修改表名

MySQL 通过 ALTER TABLE 语句来实现表名的修改,语法规则如下:

  1. ALTER TABLE <旧表名> RENAME [TO] <新表名>

其中,TO 为可选参数,使用与否均不影响结果。