MySQL кантип ырааттуулукту жаратат? MySQL маалымат базасын түзүү автоматтык өсүү ырааттуулугу жөнүндө билдирүү

MySQLКантип ырааттуулукту түзүү керек?MySQL маалымат базасыАвтоматтык өсүү ырааттуулугун түзүү

MySQL ырааттуулугун колдонуу

MySQL ырааттуулугу бүтүн сандардын жыйындысы: 1, 2, 3, ..., анткени берилиштер таблицасында бир гана талааны автоматтык түрдө көбөйтүүчү негизги ачкыч болушу мүмкүн, эгерде сиз башка талааларды автоматтык түрдө көбөйтүүнү кааласаңыз, MySQL ырааттуулугун колдонуу үчүн колдонсоңуз болот. жетишүү.

Бул бөлүмдө биз MySQL ырааттуулугун кантип колдонууну сүрөттөп беребиз.


AUTO_INCREMENT колдонуңуз

MySQLде ырааттуулукту колдонуунун эң оңой жолу - мамычаларды аныктоо үчүн MySQL AUTO_INCREMENT колдонуу.

Instance

Маалымат таблицасы Insect төмөнкү мисалда түзүлгөн, мында автоматтык өсүш үчүн эч кандай маани көрсөтүлгөн эмес.

mysql > CREATE TABLE昆虫
     - > - > id INT UNSIGNED NOT NULL AUTO_INCREMENT - > PRIMARY KEY id ),- > name VARCHAR 30 NOT NULL #昆虫类型- > 日期DATE NOT NULL #收集日期- > origin VARCHAR 30 NOT NULL #where collected ); 查询OK 0 行受影响0.02 
mysql > 
    
    
     
     
    

 INSERT INTO insects id name date origin VALUES
     - > NULL 'housefly' '2001-09-10' 'kitchen' ),- > NULL 'millipede' '2001-09-10 ' '车道' ),- > NULL 'grasshopper' '2001-09-10' 'front yard' ); 查询OK  
     
     
 记录3 重复0 警告0 
mysql > 选择* 从昆虫ORDER BY ID ; + ---- + ------------- + ------------ + ------------ + | id | 名字         | 日期        | 起源      | + ---- + ------------- + ------------ + ------------ + | 1 | 家蝇     | 2001 - 09 - 10 | 厨房     | | 2 | 千足虫   
       



     
   | 2001 - 09 - 10 | 车道    | | 3 | 蚱蜢| 2001 - 09 - 10 | 前院| + ---- + ------------- + ------------ + ------------ + 3 0.00   
     

  

AUTO_INCREMENT маанисин алыңыз

MySQL кардарында SQLде LAST_INSERT_ID() функциясын колдонуп, таблицага киргизилген акыркы авто-көбөйтүлгөн тилкенин маанисин ала аласыз.

Тиешелүү функциялар PHP же PERL скриптинде да берилген, таблицага киргизилген акыркы автоматтык өсүү тилкесинин маанисин алуу.

PERL мисалы

AUTO_INCREMENT маанисин алуу үчүн mysql_insertid касиетин колдонуңуз.Мисалдар төмөндөгүдөй:

$ dbh - > do “INSERT INTO insect(name,date,origin) 
VALUES('moth','2001-09-14','windowsill')“ ); my $ seq = $ dbh - > { mysql_insertid };

PHP мисалы

PHP mysql_insert_id() функциясы аркылуу аткарылган insert SQL операторундагы AUTO_INCREMENT тилкесинин маанисин алат.

mysql_query “INSERT INTO昆虫(名字,日期,起源)
VALUES('moth','2001-09-14','windowsill')“ $ conn_id ); 
$ seq = mysql_insert_id $ conn_id );

ырааттуулукту калыбына келтирүү

Эгер сиз маалымат таблицасындагы бир нече жазууларды жок кылсаңыз жана калган маалыматтардын AUTO_INCREMENT тилкесин кайра иреттештирүүнү кааласаңыз, аны автоматтык түрдө көбөйтүү тилкесин жок кылып, анан аны кайра кошуу менен кыла аласыз.Бирок, бул операция өтө этият болушу керек.Жок кылуу учурунда жаңы жазуулар кошулуп, маалыматтар чаташып кетиши мүмкүн.Амалдар төмөнкүдөй:

mysql > ALTER TABLE昆虫DROP ID ; 
mysql > ALTER TABLE昆虫
     - > ADD ID INT UNSIGNED NOT NULL AUTO_INCREMENT FIRST - > ADD PRIMARY KEY id );
    

Ырааттуулуктун баштапкы маанисин коюңуз

Жалпысынан, ырааттуулуктун баштапкы мааниси 1, бирок 100 баштапкы маанисин көрсөтүү керек болсо, анда биз муну төмөнкү билдирүү менен жасай алабыз:

mysql > CREATE TABLE昆虫
     - > - > id INT UNSIGNED NOT NULL AUTO_INCREMENT - > PRIMARY KEY id ),- > name VARCHAR 30 NOT NULL - > date DATE NOT NULL - > origin VARCHAR 30 NOT NULL
 engine = innodb auto_increment = 100 charset = utf8 ; 
    
    
     
    
    

Же таблица ийгиликтүү түзүлгөндөн кийин төмөнкү билдирүүнү да колдонсоңуз болот:

mysql > ALTER TABLE t AUTO_INCREMENT = 100 ; 

Hope Chen Weiliang блогу ( https://www.chenweiliang.com/ ) бөлүштү "MySQL ырааттуулукту кантип түзөт? MySQL маалымат базасы, сизге жардам берүү үчүн, өзүн-өзү көбөйтүүчү ырааттуулук билдирүүсүн түзүү.

Бул макаланын шилтемесин бөлүшүүгө кош келиңиз:https://www.chenweiliang.com/cwl-498.html

Акыркы жаңылыктарды алуу үчүн Чен Вейляндын блогунун Telegram каналына кош келиңиз!

🔔 Каналдын башкы каталогунан баалуу "ChatGPT Content Marketing AI куралын колдонуу боюнча колдонмону" биринчилерден болуп алыңыз! 🌟
📚 Бул колдонмо чоң баалуулуктарды камтыйт, 🌟Бул сейрек кездешүүчү мүмкүнчүлүк, аны өткөрүп жибербеңиз! ⏰⌛💨
Бөлүшүп, жакса лайк!
Сиздин бөлүшүүңүз жана лайктарыңыз биздин үзгүлтүксүз мотивациябыз!

 

发表 评论

Электрондук почта дарегиңиз жарыяланбайт. Милдеттүү талаалар колдонулат * 标注

өйдө сыдырыңыз