如何在MySQl数据库中给已有的数据表添加自增ID?

时间:2022-10-01 12:22:27

由于使用MySQL数据库还没有多久的缘故,在搭建后台往数据库导入数据的时候发现新增的表单是没有自增id的,因次就有了上面这个问题。

解决方法

1、给某一张表先增加一个字段,这里我们就以node_table这张表来举例,在数据库命令行输入下面指令 :

alter table node_table add id int

2、更改id字段属性为自增属性,在数据库命令行输入下面指令 :

alter table `node_table` change id id int not null auto_increment primary key; 

这样我们就可以很轻松的给node_table这张表添加了自增id。

基础知识拓展(数据库表操作)

create创建数据库表

create table tbl_name(create_definition,...) [type =table_type] 
create_definition:col_name type [not null | null][default default_value] [auto_increment][primary_key]

create table是固定的关键字,后面紧跟要创建的表的名称,括号里面是字段的内容,内容可选有:是否为空,是否有默认值,是否为主键,是否自增长等等,例如:

create table test01_02(id varchar(50) not null auto_increment primary key,
name nvarchar(40) null default "002",
age int(5)null default 444);

select创建数据库表

用select 语句来创建,看下面语法:

create table tb_new_name select * from tb_old_name;

上述语句表示,从后者的表中复制一份,添加到新的数据库表中,前面是新的数据库表,之前是不存在的。例如:

create table test01_03 select * from test01_01;

alter修改表结构

改变一下现有表的结构

增加列

alter table tbl_name add col_name type

例如增加一个weight列:

alter table test01_01 add weight int;

修改列

alter table test01_01 modify weight varchar(50);

删除列

alter table test01_01 drop weight;

另外一种常用方式,例如:

给列更名

alter table test01_01 change weight wei int;

给表更名

alter table test01_01 rename test01_04; 

drop删除数据库表

drop table删除一个或多个数据库表。语法如下:

drop table [if exists] tbl_name [, tbl_name,...] 

例如删除test01_04这个表,要删除多个表,在后面用逗号隔开即可。例句:

drop table if exists test01_04; 

查看更多文章请点击进入我的个人博客