با عرض سلام و وقت بخیر خدمت کاربران سایت پی وی لرن ، و کاربرانی که دوره آموزش SQLite را دنبال می کنند. تاکنون با مباحث مهمی در SQLite از جمله ایجاد و حذف دیتابیس و جداول آن آشنا شدیم، تمام این عملیات برای فراهم کردن زمینه های ذخیره و مدیریت داده ها در جداول انجام می شود، پس بعد از آشنایی با چگونگی ایجاد جداول و جزئیات آن در SQLite ، باید با چگونگی درج رکوردها در جداول آشنا شوید، تا بتوانید داده های مرتبط با هر جدول را در فیلدهای مربوط به آن ذخیره کنید، برای این هدف باید با ساختار اصلی دستور INSERT در SQLite و سینتکس اصلی آن آشنایی داشته باشید، در این خصوص از دستور INSERT INTO در SQLite برای درج داده ها استفاده می شود. در ادامه ی این مباحث برای آشنایی چگونگی کار با این دستور با ما همراه باشید.
مطالب این آموزش شما را با سینتکس و چگونگی کار با دستور INSERT در SQLite آشنا خواهد کرد.
سینتکس عمومی SQL برای دستور INSERT INTO در SQLite به منظور درج داده در جداول SQLite به صورت زیر است :
1 2 | INSERT INTO TABLE_NAME [(column1, column2, column3,...columnN)] VALUES (value1, value2, value3,...valueN); |
در کد فوق، عبارات column1, column2,…columnN نام ستون های جدولی است که می خواهید داده ها را در آن ها درج کنید.
اگر مقدار ستون های جدول را نیز اضافه می کنید، ممکن است نیازی به مشخص کردن نام ستون (ها) در query sqlite نباشد.
روش درج مقادیر در ستون های جدول بدون ذکر نام آن ها و بر اساس ترتیب قرارگیری آن ها به صورت زیر است:
1 | INSERT INTO TABLE_NAME VALUES (value1,value2,value3,...valueN); |
مثال
ابتدا برای نمونه جدول COMPANY را در دیتابیس testDB.db به صورت زیر ایجاد می کنیم :
1 2 3 4 5 6 7 | sqlite> CREATE TABLE COMPANY( ID INT PRIMARY KEY NOT NULL, NAME TEXT NOT NULL, AGE INT NOT NULL, ADDRESS CHAR(50), SALARY REAL ); |
حالا در کد زیر ۶ رکورد را به جدول COMPANY اضافه می کنیم :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (1, 'Paul', 32, 'California', 20000.00 ); INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (2, 'Allen', 25, 'Texas', 15000.00 ); INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (3, 'Teddy', 23, 'Norway', 20000.00 ); INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (4, 'Mark', 25, 'Rich-Mond ', 65000.00 ); INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (5, 'David', 27, 'Texas', 85000.00 ); INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (6, 'Kim', 22, 'South-Hall', 45000.00 ); |
همچنین می توانید از سینتکس زیر نیز برای درج یک رکورد به جدول COMPANY استفاده کنید :
1 | INSERT INTO COMPANY VALUES (7, 'James', 24, 'Houston', 10000.00 ); |
تمام دستورات فوق، رکوردهای زیر را در جدول COMPANY ایجاد می کنند:
1 2 3 4 5 6 7 8 9 | ID NAME AGE ADDRESS SALARY ---------- ---------- ---------- ---------- ---------- 1 Paul 32 California 20000.0 2 Allen 25 Texas 15000.0 3 Teddy 23 Norway 20000.0 4 Mark 25 Rich-Mond 65000.0 5 David 27 Texas 85000.0 6 Kim 22 South-Hall 45000.0 7 James 24 Houston 10000.0 |
شما می توانید داده های موجود در یک جدول را از طریق دستورات جداگانه بر روی یک جدول دیگر قرار دهید.
جدول دیگر دارای مجموعه ای از فیلدهاست، که برای پرکردن جدول اولی لازم است.
سینتکس این کار بصورت زیر است :
1 2 3 4 | INSERT INTO first_table_name [(column1, column2, ... columnN)] SELECT column1, column2, ...columnN FROM second_table_name [WHERE condition]; |
مباحث گفته شده در آموزش های قبل، از جمله چگونگی ایجاد دیتابیس ، جداول و فیلدهای آن در SQLite برای این منظور انجام می شود که زمینه را برای درج داده ها در دیتابیس فراهم کند، به همین خاطر در این بخش به بررسی طرز کار با دستور INSERT INTO در SQLite برای درج داده ها در جداول پرداختیم.