Insert
Ushbu qo'llanmada siz jadvalga yangi qator qo'shish uchun PostgreSQL INSERT iborasidan qanday foydalanishni o'rganasiz.
PostgreSQL INSERT bayonoti jadvalga yangi qator qo'shish imkonini beradi.
Quyida INSERT iborasining eng asosiy sintaksisi tasvirlangan:
INSERT INTO table_name(column1, column2, …)
VALUES (value1, value2, …);Ushbu sintaksisda:
Birinchidan,
INSERT INTOkalit so'zlaridan keyin ma'lumotlarni kiritmoqchi bo'lgan jadval nomini (table_name) va vergul bilan ajratilgan ustunlar ro'yxatini (column1, column2, ....) belgilang.Ikkinchidan,
VALUESkalit so'zidan keyin qavslar (value1, value2, ...) ichida vergul bilan ajratilgan qiymatlar ro'yxatini taqdim eting. Ustunlar va qiymatlar ro'yxatidagi ustunlar va qiymatlar bir xil tartibda bo'lishi kerak.
INSERT iborasi quyidagi shaklga ega buyruq tegini qaytaradi:
INSERT oid countOID ob'ekt identifikatoridir. PostgreSQL tizim jadvallari uchun asosiy kalit sifatida OID dan ichkaridan foydalangan. Odatda, INSERT iborasi 0 qiymati bilan OIDni qaytaradi. Hisoblash INSERT bayonoti muvaffaqiyatli kiritilgan qatorlar sonidir.
RETURNING bandi
INSERT iborasida, shuningdek, kiritilgan qator ma'lumotlarini qaytaruvchi ixtiyoriy RETURNING bandi mavjud.
Agar siz butun kiritilgan qatorni qaytarmoqchi bo'lsangiz, RETURNING kalit so'zidan keyin yulduzcha (*) qo'ying:
INSERT INTO table_name(column1, column2, …)
VALUES (value1, value2, …)
RETURNING *;Agar siz kiritilgan qatorning ba'zi ma'lumotlarini qaytarishni istasangiz, RETURNING bandidan keyin bir yoki bir nechta ustunlarni belgilashingiz mumkin.
Masalan, quyidagi ibora kiritilgan qatorning idni qaytaradi:
Qaytarilgan qiymatni qayta nomlash uchun siz AS kalit so'zidan keyin chiqish nomidan foydalanasiz. Masalan:
PostgreSQL INSERT bayonotiga misollar
INSERT bayonotiga misollarQuyidagi bayonot ko'rsatish uchun links deb nomlangan yangi jadval yaratadi:
E'tibor bering, siz keyingi qo'llanmada yangi jadval yaratishni o'rganasiz. Ushbu qo'llanmada siz faqat yangi jadval yaratish uchun uni bajarishingiz kerak.
1. PostgreSQL INSERT - Jadvalga bitta qatorni kiritish
INSERT - Jadvalga bitta qatorni kiritishQuyidagi bayonot links jadvaliga yangi qator qo'shadi:
Bayonot quyidagi natijani qaytaradi:
Belgilar ma'lumotlarini kiritish uchun siz uni bitta qo'shtirnoq ichiga (') qo'shasiz, masalan, "PostgreSQL Tutorial".
Agar siz INSERT bayonotida kerakli ustunlarni o'tkazib yuborsangiz, PostgreSQL xatolik chiqaradi. Agar ixtiyoriy ustunni o'tkazib yuborsangiz, PostgreSQL qo'shish uchun ustunning standart qiymatidan foydalanadi.
Ushbu misolda description ixtiyoriy ustundir, chunki unda NOT NULL cheklovi yo'q. Shuning uchun PostgreSQL tavsif ustuniga kiritish uchun NULL dan foydalanadi.
PostgreSQL avtomatik ravishda ketma-ket ustun uchun ketma-ket raqamni yaratadi, shuning uchun siz INSERT bayonotida ketma-ket ustun uchun qiymat berishingiz shart emas.
Quyidagi SELECT iborasi havolalar jadvalining mazmunini ko'rsatadi:

2. PostgreSQL INSERT - Bitta tirnoqni o'z ichiga olgan belgilar qatorini kiritish
INSERT - Bitta tirnoqni o'z ichiga olgan belgilar qatorini kiritishAgar siz O'Reilly Media kabi bitta qo'shtirnoq (') o'z ichiga olgan qatorni qo'shmoqchi bo'lsangiz, undan qochish uchun qo'shimcha bitta qo'shtirnoq (') dan foydalanishingiz kerak. Masalan:
Chiqish:
Quyidagi bayonot qo'shimchani tasdiqlaydi:

3. PostgreSQL INSERT - Sana qiymatini kiritish
INSERT - Sana qiymatini kiritishDATE turidagi ustunga sana qiymatini kiritish uchun siz "YYYY-AA-KK" formatida sanadan foydalanasiz.
Quyidagi bayonot links jadvaliga belgilangan sana bilan yangi qator qo'shadi:
Chiqish:
4. PostgreSQL INSERT - oxirgi qo'shish identifikatorini olish
INSERT - oxirgi qo'shish identifikatorini olishKiritilgan qatordan oxirgi kiritish identifikatorini olish uchun siz INSERT statementning RETURNING bandidan foydalanasiz.
Masalan, quyidagi ibora links jadvaliga yangi qator qo'shadi va oxirgi qo'shish identifikatorini qaytaradi:
Chiqish:

Jadvalga ma'lumotlarni kiritish uchun PostgreSQL
INSERTiborasidan foydalaning.Kiritilgan qatorlarni olish uchun
RETURNINGbandidan foydalaning.
Last updated
Was this helpful?