mysql create table auto_increment_mysql create table primary key auto_increment

mysql> create table ss(id int unsigned not null primary key auto_increment, user_name varchar(15) not null);

Query OK, 0 rows affected (0.00 sec)

mysql>

mysql> insert into ss(id,user_name) values(1, 'jojo');

Query OK, 1 row affected (0.00 sec)

mysql> insert into ss(id,user_name) values(37, 'liz');

Query OK, 1 row affected (0.00 sec)

mysql>

mysql> select id, user_name from ss;

+----+-----------+

| id | user_name |

+----+-----------+

|  1 | jojo      |

| 37 | liz       |

+----+-----------+

2 rows in set (0.00 sec)

mysql>

===========================================

mysql> create table uu(id int unsigned not null primary key auto_increment, user_name varchar(15) not null) auto_increment=100;

Query OK, 0 rows affected (0.01 sec)

mysql>

=================================

mysql> insert into uu(id,user_name) values(1, 'jojo');

Query OK, 1 row affected (0.00 sec)

mysql> insert into uu(id,user_name) values(37, 'liz');

Query OK, 1 row affected (0.00 sec)

mysql> select id, user_name from uu;

+----+-----------+

| id | user_name |

+----+-----------+

|  1 | jojo      |

| 37 | liz       |

+----+-----------+

2 rows in set (0.00 sec)

mysql> desc uu

-> ;

+-----------+------------------+------+-----+---------+----------------+

| Field     | Type             | Null | Key | Default | Extra          |

+-----------+------------------+------+-----+---------+----------------+

| id        | int(10) unsigned | NO   | PRI | NULL    | auto_increment |

| user_name | varchar(15)      | NO   |     | NULL    |                |

+-----------+------------------+------+-----+---------+----------------+

2 rows in set (0.00 sec)

mysql>

当插入记录时,没有为AUTO_INCREMENT明确指定值,则等同插入NULL值

把0插入AUTO_INCREMENT数据列的效果与插入NULL值一样。但不建议这样做,还是以插入NULL值为好。

如果把一个NULL插入到一个AUTO_INCREMENT数据列里去,MySQL将自动生成下一个序 列编号。编号从1开始,并1为基数递增。

因为上面指定了auto_increment=100,所以编号从100开始,递增1。

mysql> insert into uu(user_name) values('Nicky');

Query OK, 1 row affected (0.00 sec)

mysql> select id, user_name from uu;

+-----+-----------+

| id  | user_name |

+-----+-----------+

|   1 | jojo      |

|  37 | liz       |

| 100 | Nicky     |

+-----+-----------+

3 rows in set (0.00 sec)

mysql> insert into uu(user_name) values('Lucy');

Query OK, 1 row affected (0.00 sec)

mysql> select id, user_name from uu;

+-----+-----------+

| id  | user_name |

+-----+-----------+

|   1 | jojo      |

|  37 | liz       |

| 100 | Nicky     |

| 101 | Lucy      |

+-----+-----------+

4 rows in set (0.00 sec)

mysql>

mysql建表设置两个默认CURRENT_TIMESTAMP的技巧

create table t (ids int not null auto_increment primary key,

name1varchar(20),

t1timestamp default '0000-00-00 00:00:00',

t2timestamp default now() on update now())

insert into t(name1) values ('tom')

a381a630b7cab7f950730b9c89b6e42b.png

insert into t(name1,t1, t2) values ('jerry', null, null)

9b6ce25a95a2f9443e3d9671a78c8f14.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值