MySql 设置ID主键自增,从0开始,请问怎么设?
DROPTABLEIFEXISTSmessages;CREATETABLEmessages(chatIdintunsignedNOTNULLauto_increment,...
DROP TABLE IF EXISTS messages;
CREATE TABLE messages (
chatId int unsigned NOT NULL auto_increment,
toUserName varchar(50) DEFAULT NULL,
PRIMARY KEY (`chatId`)
) ENGINE=MyISAM AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;
这样是不ok的.
INSERT INTO messages(chatId,toUserName) VALUES(0,'saf');
INSERT INTO messages(chatId,toUserName) VALUES(1,'4653');
我添加这两条数据的话,第一个还是从1开始,插入这样的数据以后,数据库里就显示:2-saf,1-4653了. 展开
CREATE TABLE messages (
chatId int unsigned NOT NULL auto_increment,
toUserName varchar(50) DEFAULT NULL,
PRIMARY KEY (`chatId`)
) ENGINE=MyISAM AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;
这样是不ok的.
INSERT INTO messages(chatId,toUserName) VALUES(0,'saf');
INSERT INTO messages(chatId,toUserName) VALUES(1,'4653');
我添加这两条数据的话,第一个还是从1开始,插入这样的数据以后,数据库里就显示:2-saf,1-4653了. 展开
展开全部
第一条为0的只能手工操作,在命令上输入:SET sql_mode='NO_AUTO_VALUE_ON_ZERO'
如下:
mysql> SET sql_mode='NO_AUTO_VALUE_ON_ZERO';
Query OK, 0 rows affected (0.00 sec)
mysql> insert app_config(id, name) values(0, 'ttt');
如下:
mysql> SET sql_mode='NO_AUTO_VALUE_ON_ZERO';
Query OK, 0 rows affected (0.00 sec)
mysql> insert app_config(id, name) values(0, 'ttt');
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
有时候我们在测试网站的时候,删除测试数据导致id不是从0开始,那如果想id是从0开始怎么办呢?
mysql默认自增ID是从1开始了,但当我们如果有插入表或使用delete删除id之后ID就会不会从1开始了.
使用mysql时,通常表中会有一个自增的id字段,但当我们想将表中的数据清空重新添加数据时,希望id重新从1开始计数,用以下两种方法均可.
通常的设置自增字段的方法,创建表格时添加:
create table table1(id int auto_increment primary key,...)
mysql默认自增ID是从1开始了,但当我们如果有插入表或使用delete删除id之后ID就会不会从1开始了.
使用mysql时,通常表中会有一个自增的id字段,但当我们想将表中的数据清空重新添加数据时,希望id重新从1开始计数,用以下两种方法均可.
通常的设置自增字段的方法,创建表格时添加:
create table table1(id int auto_increment primary key,...)
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在建表语句中加入
id int identity(0,1) not null,
mysql 的语句是
id mediumint not null auto_increment, 你的已经有了啊
id int identity(0,1) not null,
mysql 的语句是
id mediumint not null auto_increment, 你的已经有了啊
更多追问追答
追问
INSERT INTO messages(chatId,toUserName) VALUES(0,'saf');
INSERT INTO messages(chatId,toUserName) VALUES(1,'4653');
我插入这两条语句,数据库里面显示的第一条语句Id 不是0啊.
追答
自增序列的内容是系统产生的,你插入没有用
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
autoincrement本身就是从1开始计数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询