كيف تنشئ MySQL التسلسلات؟ بيان تسلسل زيادة إنشاء قاعدة بيانات MySQL تلقائيًا

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 ; 

مدونة Hope Chen Weiliang ( https://www.chenweiliang.com/ ) شارك "كيف تنشئ MySQL تسلسلاً؟ قاعدة بيانات MySQL لإنشاء بيان تسلسل ذاتي التزايد "، لمساعدتك.

مرحبا بكم في مشاركة رابط هذه المقالة:https://www.chenweiliang.com/cwl-498.html

لاكتشاف المزيد من الحيل المخفية🔑، مرحبًا بك في الانضمام إلى قناتنا على Telegram!

مشاركة ومثل إذا كنت ترغب في ذلك! مشاركاتك وإعجاباتك هي حافزنا المستمر!

 

发表 评论

لن يتم نشر عنوان بريدك الإلكتروني. 必填 项 已 用 * 标注

انتقل إلى الأعلى