Нийтлэлийн лавлах
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() функцээр дамжуулан гүйцэтгэгдсэн 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 сувагт тавтай морил, хамгийн сүүлийн үеийн мэдээг аваарай!
📚 Энэхүү гарын авлага нь асар их үнэ цэнийг агуулсан, 🌟Энэ бол ховор боломж, бүү алдаарай! ⏰⌛💨
Хэрэв танд таалагдвал лайк дарж, хуваалцаарай!
Таны хуваалцах, дуртай зүйл бол бидний байнгын урам зориг юм!