MySQL тізбектерді қалай жасайды? MySQL дерекқорын жасау реттілігін автоматты түрде арттыру туралы мәлімдеме

MySQLТізбекті қалай құруға болады?MySQL деректер қорыАвтоматты түрде ұлғайтылатын тізбек мәлімдемесін жасаңыз

MySQL реттілігін пайдалану

MySQL тізбегі бүтін сандар жиыны болып табылады: 1, 2, 3, ..., өйткені деректер кестесінде тек бір өрісті автоматты ұлғайту негізгі кілті болуы мүмкін, егер сіз басқа өрістердің автоматты өсуіне қол жеткізгіңіз келсе, MySQL пайдалана аласыз. жету реттілігі.

Бұл тарауда біз MySQL тізбектерін пайдалану жолын сипаттайтын боламыз.


AUTO_INCREMENT пайдаланыңыз

MySQL жүйесінде тізбектерді пайдаланудың ең оңай жолы - бағандарды анықтау үшін MySQL AUTO_INCREMENT пайдалану.

Дана

Жәндік деректер кестесі келесі мысалда жасалған, мұнда автоматты өсу үшін мән көрсетілмеген.

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() функциясы арқылы орындалған кірістіру 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 мазмұнды маркетингтік AI құралын пайдалану нұсқаулығын" бірінші болып алыңыз! 🌟
📚 Бұл нұсқаулықта үлкен құндылық бар, 🌟Бұл сирек мүмкіндік, оны жіберіп алмаңыз! ⏰⌛💨
Ұнаса лайк басып, бөлісіңіз!
Сіздің бөлісулеріңіз бен лайктарыңыз - біздің үздіксіз мотивациямыз!

 

Пікірлер

Сіздің электрондық пошта мекен-жайыңыз жарияланбайды. 必填 项 已 用 * 标注

жоғарыға жылжытыңыз