mysql qt自增_mysql自增设置
MySQL設(shè)置自增字段的相關(guān)語句:
alter table album change ALBUM_ID ALBUM_ID bigint not null auto_increment;
alter table album auto_increment=1;
創(chuàng)建:
mysql>create table cc(id int auto_increment,name varchar(20),primary key(id));
mysql>create table cc(id int auto_increment not null primary key)
修改:
mysql> alter table cc change id id int primary key auto_increment;
mysql>alter table cc add name varchar(20)
mysql>insert into table_name (name) values('huangkai1')
OPTIMIZE table tt 釋放空間
1.ceil () 向上取整???? ?例: ceil(1.2) = 2
2.floor () 向下取整???? 例: floor(1.2) = 1
3.round() 四舍五入
4.year(birthday)
5.moth((birthday))
6.day(birthday)
select name,CEIL((TO_DAYS(NOW())-TO_DAYS(name2))/365) birthday from? tt where name2 is not null
SELECTCEIL(ct/500)*500?cct?,COUNT(*)FROMuser_answercount
GROUPBYcct
SELECTfloor(ct/500)*500?cct?,COUNT(*)FROMuser_answercount
GROUPBYcct
SELECTROUND(ct/500)*500?cct?,COUNT(*)FROMuser_answercount
GROUPBYcct
注:只有int類型且為primary key 才可以使用auto_increment.
如果用hibernate作為持久層,那么主鍵ID處用identity類型.
對于一個表主鍵的選擇,從架構(gòu)設(shè)計角度來說,盡量設(shè)計一個與業(yè)務(wù)無關(guān)的字段來作為主鍵會對系統(tǒng)更好
當(dāng)然,這勢必會增加表數(shù)據(jù)量的大小,可能有些人會認(rèn)為這個副作用不值得而選擇一個有業(yè)務(wù)意義的字段(或者多個字段)來作為主鍵
但是對于大多數(shù)時候,這個字段所增加的物理存儲空間實(shí)際上是很小的,并沒有很多人想象的那么可怕。而帶來邏輯上的簡單是很可觀的。
另外,是否選擇自增類型作為主鍵,這個可以說是各有好處,如果用自增,應(yīng)用可以不care這個主鍵的值得設(shè)定,但是有在高并發(fā)下成為瓶頸的風(fēng)險,當(dāng)然如果并發(fā)并不是非常非常高的話,一般不會成為瓶頸。如果自己控制這個主鍵值的話,更需要付出一點(diǎn)點(diǎn)代價來生成這個值,并發(fā)問題可以通過擴(kuò)展應(yīng)用集群來解決。
總結(jié)
以上是生活随笔為你收集整理的mysql qt自增_mysql自增设置的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怎么做mysql查询系统_mysql数据
- 下一篇: mysql 1005 - can't c