MySQL的列值自增长:auto_increment(一)

来源:互联网 发布:js的object对象 编辑:程序博客网 时间:2024/05/16 19:09

问题1:当创建一个用户表时,希望每个用户拥有一个唯一的id,而这个id又不需要用户手动输入,怎么解决?

解答:可以在这一列上使用 auto_increment关键字,要求该列为整数类型,默认每插入一条数据时该列会被自动赋值。

问题2:创建表时怎么使用该关键字?
解答:代码如下,创建一个用户表users,有三列,分别为u_id(用户id),u_name(用户名称),u_pw(用户密码)。

/*用户表auto_increment*/create table users(    /*用户id*/    u_id int primary key auto_increment,    /*用户昵称*/    u_name varchar(20),    /*用户密码*/    u_pw varchar(32));

问题3:在上面创建数据库表的语句中,把u_id字段设置为了主键,auto_increment属性是不是只能与主键一起使用?

不是这样,使用了auto_increment字段的列确实必须要建立索引,但并不一定要求是主键索引。
记住两点:
1. 脱离索引单独使用必定报错。
2. 只是习惯上常与主键配合使用,与其它索引配合也可以。

问题4:如何向表中插入字段?
现在向表中插入两条记录:

/*在自增长列上插入null的方式插入*/INSERT INTO users VALUES(NULL,'碧瑶','dfsjalslef');/*空出自增长列的方式插入*/INSERT INTO users(u_name,u_pw) VALUES ('金瓶儿','dsfaewrg');

现在查看一下表中数据:

这里写图片描述

后续文章MYSQL的列值自增长:auto_increment(二)

欢迎评论,欢迎指正,会有更多的编程小经验上传,欢迎关注