数据库_MySQL_添加自增长_ auto_increment

如何实现MySQL设置自增字段是许多人都问到的问题,下面就为您介绍MySQL设置自增字段的相关知识,希望对您学习MySQL数据库能有所启迪。

示例:

DROP TABLE IF EXISTS good;

CREATE TABLE good(
  id INT PRIMARY KEY auto_increment,
  price FLOAT
);

MySQL设置自增字段的相关语句:

alter table album change ALBUM_ID ALBUM_ID bigint not null auto_increment;
alter table album auto_increment=1;

创建:
mysql>create table cc(id int auto_increment,name varchar(20),primary key(id));
修改:
mysql> alter table cc change id id int primary key auto_increment;

注:只有int类型且为primary key 才可以使用auto_increment.

如果用hibernate作为持久层,那么主键ID处用identity类型.

对于一个表主键的选择,从架构设计角度来说,尽量设计一个与业务无关的字段来作为主键会对系统更好
当然,这势必会增加表数据量的大小,可能有些人会认为这个副作用不值得而选择一个有业务意义的字段(或者多个字段)来作为主键

但是对于大多数时候,这个字段所增加的物理存储空间实际上是很小的,并没有很多人想象的那么可怕。而带来逻辑上的简单是很可观的。

另外,是否选择自增类型作为主键,这个可以说是各有好处,如果用自增,应用可以不care这个主键的值得设定,但是有在高并发下成为瓶颈的风险,当然如果并发并不是非常非常高的话,一般不会成为瓶颈。如果自己控制这个主键值的话,更需要付出一点点代价来生成这个值,并发问题可以通过扩展应用集群来解决。

以上就是MySQL设置自增字段相关知识的介绍。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值