Հոդվածների տեղեկատու
MySQLԻնչպե՞ս ստեղծել հաջորդականություն:MySQL տվյալների բազաՍտեղծեք ավտոմատ աճող հաջորդականության հայտարարություն
MySQL հաջորդականության օգտագործումը
MySQL հաջորդականությունը ամբողջ թվերի մի շարք է՝ 1, 2, 3, ..., քանի որ տվյալների աղյուսակը կարող է ունենալ միայն մեկ դաշտի ավտոմատ ավելացման հիմնական բանալի, եթե ցանկանում եք հասնել այլ դաշտերի ավտոմատ ավելացման, կարող եք օգտագործել MySQL հաջորդականությունը՝ հասնել.
Այս գլխում մենք նկարագրելու ենք, թե ինչպես օգտագործել MySQL-ի հաջորդականությունները:
Օգտագործեք AUTO_INCREMENT
MySQL-ում հաջորդականություններ օգտագործելու ամենահեշտ ձևը MySQL AUTO_INCREMENT օգտագործելն է՝ սյունակներ սահմանելու համար:
օրինակ
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 հաճախորդում դուք կարող եք օգտագործել LAST_INSERT_ID() ֆունկցիան SQL-ում, որպեսզի ստանաք աղյուսակում տեղադրված վերջին ավտոմատ ավելացված սյունակի արժեքը:
Համապատասխան գործառույթները տրամադրվում են նաև PHP կամ PERL սկրիպտում՝ աղյուսակում տեղադրված վերջին ավտոմատ աճող սյունակի արժեքը ստանալու համար:
PERL օրինակ
Օգտագործեք mysql_insertid հատկությունը՝ AUTO_INCREMENT-ի արժեքը ստանալու համար:Օրինակները հետևյալն են.
$ dbh - > do (“INSERT INTO insect(name,date,origin) VALUES('moth','2001-09-14','windowsill')“ ); my $ seq = $ dbh - > { mysql_insertid };
PHP օրինակ
PHP-ն ստանում է AUTO_INCREMENT սյունակի արժեքը կատարված ներդիր SQL հայտարարության մեջ mysql_insert_id() ֆունկցիայի միջոցով:
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 ;
Հույս Chen Weiliang բլոգ ( https://www.chenweiliang.com/ ) կիսվել է «Ինչպե՞ս է MySQL-ն ստեղծում հաջորդականություն: MySQL տվյալների շտեմարան՝ ստեղծելու ինքնուրույն աճող հաջորդականության հայտարարություն», որը կօգնի ձեզ:
Բարի գալուստ՝ կիսելու այս հոդվածի հղումը.https://www.chenweiliang.com/cwl-498.html
Բարի գալուստ Chen Weiliang-ի բլոգի Telegram ալիք՝ վերջին թարմացումները ստանալու համար:
📚 Այս ուղեցույցը պարունակում է հսկայական արժեք, 🌟Սա հազվագյուտ հնարավորություն է, բաց մի՛ թողեք այն։ ⏰⌛💨
Տարածեք և հավանեք, եթե հավանեցիք:
Ձեր տարածումը և հավանումները մեր շարունակական շարժառիթն են: