Sayt bo'limlari
Muharrir tanlovi:
- Oddiy skaner yordamida kino negativlarini qanday skanerlash mumkin
- Android-da Wi-Fi tarmog'ini qanday unutish mumkin
- Android uchun tarjimon: eng yaxshi onlayn va oflayn ilovalarni ko'rib chiqish
- Operatsion kuchaytirgichlardan foydalanadigan harmonik signal generatorlari Sof sinus to'lqinli audio generator
- ESR nima. ESR o'lchovi. ESR o'lchash moslamasi. ESR. O'lchash usullari Kondensatorning esr nima va uni qanday o'lchash kerak
- Umumjahon ma'lumotlar almashinuvidan foydalanishning ko'rinishi va xususiyatlari Universal almashinuv 8
- Anti-aon xizmatidan foydalangan holda megafondan qo'ng'iroq qilishda raqamingizni qanday yashirish kerak
- JQuery shablonlari bilan ishlashni o'rganish Cool yorqin jQuery va CSS3 maslahatlari
- Nokia XL Dual SIM smartfonini ko'rib chiqish va sinovdan o'tkazish Mobil aloqa texnologiyalari va ma'lumotlarni uzatish tezligi
- Samsung Galaxy A7 smartfonida skrinshot olish
Reklama
T-SQL asoslari. DML |
Hammaga salom! Qanday qilib buni amalga oshirishingiz mumkin, bu maqolada muhokama qilinadi jadvalga ma'lumotlarni qo'shish Microsoft SQL Serverda, agar siz T-SQL tili bilan hech bo'lmaganda bir oz tanish bo'lsangiz, endi biz INSERT iborasi, shuningdek, jadvalga ma'lumotlarni qo'shish uchun qanday foydalanish haqida gaplashamiz. Keling, odatdagidek, bir oz nazariya bilan boshlaylik. T-SQL da INSERT bayonotiKIRITMOQ T-SQL ko'rsatmasi bo'lib, jadvalga ma'lumotlarni qo'shish uchun mo'ljallangan, ya'ni. yangi yozuvlarni yaratish. Ushbu ko'rsatma jadvalga bitta qator qo'shish va ma'lumotlarni ommaviy kiritish uchun ham ishlatilishi mumkin. INSERT bayonoti ma'lumotlarni kiritish uchun ruxsat talab qiladi ( KIRITMOQ) maqsadli jadvalga. Qo'shilishi kerak bo'lgan ma'lumotlarga INSERT iborasidan foydalanishning bir necha yo'li mavjud:
Soddalashtirilgan sintaksis INSERT [jadval] ( ustunlar ro'yxati ...) QIYMATLAR ( qadriyatlar ro'yxati ...) Yoki SELECT namuna so'rovi Yoki IJRO QILING tartib
INSERT INTO iborasining soddalashtirilgan sintaksisi taxminan shunday ko'rinadi; ko'p hollarda jadvallarga yangi yozuvlar qo'shiladi. Ma'lumotlarni kiritadigan ustunlar ro'yxatini yozish shart emas, bu holda ularning tartibi jadvaldagi ustunlarning haqiqiy tartibidan kelib chiqqan holda aniqlanadi. Tanlash uchun so'rovni kiritish yoki yozish uchun qiymatlarni belgilashda ushbu tartibni eslab qolishingiz kerak. Shaxsan men siz hali ham ma'lumotlarni qo'shishni rejalashtirgan ustunlar ro'yxatini ko'rsatishingizni tavsiya qilaman. Shuni ham yodda tutish kerakki, ustunlar ro'yxati va qiymatlar ro'yxati mos ravishda talab qilinadigan ustunlarni o'z ichiga olishi kerak; bular NULL qiymatini o'z ichiga olmaydi. Agar siz ularni ko'rsatmasangiz va ustun standart qiymatga ega bo'lmasa, xatolik yuz beradi. Shuni ham ta'kidlashni istardimki, siz kiritadigan qiymatlarning ma'lumotlar turi ushbu qiymat kiritiladigan ustunning ma'lumotlar turiga mos kelishi yoki hech bo'lmaganda yashirin konvertatsiya qilishni qo'llab-quvvatlashi kerak. Lekin men sizga ma'lumotlar turini nazorat qilishni maslahat beraman ( format) qiymatlar, ham qiymatlar ro'yxatida, ham SELECT so'rovida. Nazariya yetarli, keling, amaliyotga o‘tamiz. Dastlabki ma'lumotlarJadvalga ma'lumotlar qo'shish uchun bizga jadvalning o'zi kerak, shuning uchun uni yaratamiz va unga yozuvlar qo'shishga harakat qilamiz. Eslatma! Barcha misollar Microsoft SQL Server 2016 Express da ishga tushiriladi. JADVAL YARATISH Test jadvali (IDENTITY(1,1) NULL EMAS, (100) NULL EMAS, NULL EMAS) Bizning sinov jadvalimiz narxlari ko'rsatilgan mahsulotlar ro'yxatini o'z ichiga oladi. Shuningdek, misollarda jadvalga ma'lumotlarni qo'shish uchun jadval qiymatini qaytaradigan protseduradan foydalanamiz, shuning uchun uni ham yarataylik. TARTIBIYI YARATING. TestProtsedurasini BAŞLATIRIB TANGLASH Mahsulot nomi, Test jadvali oxiridan boshlab narxi. Masalan, u yangi yaratilgan TestTable jadvalidan ma'lumotlarni qaytaradi. Eslatma! Siz tushunganingizdek, ushbu materialni o'qish T-SQL tilini biroz bilishni anglatadi, shuning uchun sizga biror narsa tushunarsiz bo'lsa, men quyidagi materiallar bilan tanishib chiqishingizni tavsiya qilaman: 1-misol – Jadval qiymati konstruktori yordamida jadvalga yangi yozuv qo‘shishAvval bitta yozuvni qo'shishga harakat qilaylik va darhol natijani ko'rib chiqaylik, ya'ni. Keling, namuna uchun so'rov yozaylik. Sinov jadvaliga (Mahsulot nomi, narxi) QIYMATLARGA QO'SHISH ("Kompyuter", 100) Test jadvalidan * TANLANGAN O'TISH Ko'ryapsizmi, jadval nomidan keyin biz ma'lumotlarni qo'shadigan ustunlar nomlarini vergul bilan ajratdik, keyin biz kalit so'zni ko'rsatdik. QIYMATLAR Qavslar ichida, shuningdek, bir xil tartibda, vergul bilan ajratilgan holda, biz kiritmoqchi bo'lgan qiymatlarni yozdik. INSERT bayonotidan keyin men SELECT bayonotini yozdim va ularni GO bayonoti bilan ajratdim. Keling, bir nechta qatorlarni qo'shishimiz kerakligini tasavvur qilaylik. Buning uchun quyidagi so'rovni yozamiz. Sinov jadvaliga (Mahsulot nomi, narxi) QIYMATLARNI QO'YISH ("Kompyuter", 100), ("Klaviatura", 20), ("Monitor", 50) TANLASH * Test jadvalidan 2-misol - SELECT so'rovi yordamida jadvalga yangi qatorlar qo'shishKo'pincha jadvalga juda ko'p ma'lumotlarni qo'shish kerak bo'ladi, masalan, tanlangan so'rov asosida, ya'ni. TANLASH. Buning uchun VALUES o'rniga so'rovni ko'rsatish kifoya. Sinov jadvaliga kiriting (mahsulot nomi, narxi) Mahsulot nomi, sinov jadvalidan narxini tanlang. Ushbu misolda biz TestTable jadvalidan ma'lumotlarni qaytaradigan SELECT so'rovini yozdik, lekin hammasi emas, faqat ID 2 dan katta bo'lganlar. Va natija xuddi shu TestTable jadvaliga kiritildi. Jadvalga ustunlar ro'yxatini ko'rsatmasdan qanday qilib yozuvlar qo'shish mumkinligiga misol sifatida keling, yuqoridagi so'rov bilan aynan bir xil ishni bajaradigan boshqa ma'lumotlarni kiritish so'rovini yozamiz, faqat u qo'shiladigan ustunlarni ro'yxatga kiritmaydi. TestJadvaliga QO'SHING. Mahsulot nomini tanlang, Test jadvalidan narxi. Id > 2 O'TING. Bu holda, Test jadvalidagi birinchi ustun mahsulot nomi, ikkinchisi esa Narx ekanligiga ishonchimiz komil, shuning uchun biz buni shunday yozishimiz mumkin. Lekin, yana, amalda ustunlar ro'yxatini ko'rsatish yaxshiroqdir. Agar e'tibor bergan bo'lsangiz, barcha misollarda Id ustunini ko'rsatmadim, lekin bizda bor, hech qanday xatolik yuz bermadi, chunki bu ustun IDENTITY xususiyatiga ega, u avtomatik ravishda identifikatorlarni hosil qiladi, shuning uchun bunday ustunga ma'lumotlarni kiritishni oddiygina qilib bo'lmaydi. 3-misol - Saqlangan protsedura yordamida jadvalga yangi yozuvlar qo'shishEndi saqlangan protsedura bizga qaytib keladigan ma'lumotlarni jadvalga kiritamiz. Bu erda ma'no bir xil, VALUES o'rniga va so'rov o'rniga biz protsedura chaqiruvini ko'rsatamiz. Lekin siz tushunganingizdek, protsedura tomonidan qaytarilgan ustunlar tartibi va soni kiritilishi kerak bo'lgan ustunlar ro'yxatiga to'liq mos kelishi kerak ( ustunlar ro'yxati ko'rsatilmagan bo'lsa ham). Sinov jadvaliga (Mahsulot nomi, narxi) QO'SHING Umid qilamanki, ushbu material sizga ko'rsatmalarni tushunishga yordam berdi. INSERT INTO, va hozircha menda bor narsa shu! Jamoa jadvalga qatorlar qo'shadi yoki asosiy jadval ko'rinishi. Sql INSERT buyruq sintaksisiBuyruq sintaksisini kiritish INSERT buyrug'ining asosiy kalit so'zlari va parametrlari
Bayonot iborasi bilan QIYMATLAR jadvalga bitta qator qo'shadi. Ushbu qatorda ibora bilan belgilangan qiymatlar mavjud QIYMATLAR. INSERT INTO 1-misol
INSERT INTO 2-misol
INSERT INTO 3-misol
4-misolga kiriting
MySQL INSERTMySQL ma'lumotlar bazasiga yangi qatorlarni kiritish uchun foydalaning INSERT buyrug'i, buyruq misollari quyida keltirilgan:
INSERT INTO 2-misol.
Ma'lumotlar bazasida MySQL Bitta buyruq yordamida bir nechta yangi qatorlarni kiritish mumkin.
Ushbu bayonot jadvalga bir yoki bir nechta yozuvlarni qo'shadi (qo'shish so'rovini bajaradi). SintaksisBir nechta yozuvlarni qo'shish uchun so'rov: INSERT INTO final_object [(maydon 1[, maydon 2[, ...]])] Bitta yozuv qo'shish uchun so'rov: INSERT INTO final_object [(maydon 1[, maydon 2[, ...]])] INSERT INTO bayonoti quyidagi elementlardan iborat:
EslatmalarINSERT INTO iborasi yuqoridagi sintaksisdan foydalangan holda jadvalga bitta yozuv qo'shishi mumkin. Bunday holda, siz yozuvdagi har bir maydon uchun nom va qiymatlarni belgilaysiz. Yozuvdagi qiymatlar tayinlangan barcha maydonlarni va tegishli qiymatlarni ko'rsatishingiz kerak. Agar siz maydon qiymatini belgilamasangiz, unga standart qiymat yoki NULL tayinlanadi. Yozuvlar jadvalning oxiriga qo'shiladi. INSERT INTO operatori yuqorida ko'rsatilgandek SELECT... FROM bandidan foydalanib boshqa jadval yoki so'rovdan yozuvlar to'plamini qo'shish uchun ham ishlatilishi mumkin (Bir nechta yozuvlarni qo'shish uchun so'rovlar sintaksisiga qarang). Bunday holda, SELECT bandi ko'rsatilganlarga qo'shiladigan maydonlarni belgilaydi final_object. Manba yoki final_object jadval yoki so'rov bo'lishi mumkin. So'rov berilganda, Microsoft Access ma'lumotlar bazasi mexanizmi o'zi qaytaradigan barcha jadvallarga yozuvlarni qo'shadi. INSERT INTO iborasidan foydalanish ixtiyoriy. Belgilangan bo'lsa, u SELECT iborasidan oldin bo'lishi kerak. Agar maqsadli jadvalda birlamchi kalit mavjud boʻlsa, bir yoki bir nechta asosiy kalit maydonlariga qoʻshgan qiymatlaringiz yagona va farqli ekanligiga ishonch hosil qiling. NULL; aks holda yozuvlar qo'shilmaydi. Hisoblagich maydoni bo'lgan jadvalga yozuvlar qo'shilsa va siz ularni qayta raqamlashni xohlasangiz, so'rovga Hisoblagich maydonini qo'shmang. Agar siz maydondagi asl qiymatlarni saqlamoqchi bo'lsangiz, so'rovga Hisoblagich maydonini qo'shing. IN bandidan foydalanib, boshqa ma'lumotlar bazasidagi jadvalga yozuvlarni qo'shishingiz mumkin. Jadval yaratish uchun SELECT... INTO iborasidan foydalanib, jadval yaratish uchun soʻrov yuboring. Qo'shish so'rovini ishga tushirishdan oldin, qaysi yozuvlar qo'shilishini aniqlash uchun natijalardan foydalanish uchun bir xil tanlov mezonlari bilan tanlangan so'rovdan foydalaning. Qo'shish so'rovi yozuvlarni bir yoki bir nechta jadvaldan boshqa jadvalga ko'chiradi. Bunday holda, qo'shilgan yozuvlarni o'z ichiga olgan jadvallar o'zgarishsiz qoladi. Boshqa jadvaldagi yozuvlarni qo'shish o'rniga, VALUES bandidan foydalanib, har bir maydonning qiymatini alohida yangi yozuvga o'rnatishingiz mumkin. Agar maydonlar ro'yxati o'tkazib yuborilsa, VALUES bandi har bir jadval maydoni uchun mos qiymatlarni o'z ichiga olishi kerak; aks holda INSERT operatsiyasi bajarilmaydi. Yaratmoqchi bo'lgan har bir qo'shimcha yozuv uchun INSERT INTO iborasidan va VALUES bandidan foydalaning. INSERT INTO nima?Ma'lumotlar bazasi tizimlarining asosiy maqsadi ma'lumotlarni jadvallarda saqlashdir. Ma'lumotlar odatda ma'lumotlar bazasi ustida ishlaydigan amaliy dasturlar tomonidan taqdim etiladi. Shu maqsadda SQLda ma'lumotlarni jadvalga saqlash uchun foydalaniladigan INSERT buyrug'i mavjud. The INSERT buyrug'i yangi qator yaratadi ma'lumotlarni saqlash uchun jadvalda.Asosiy sintaksisQuyida ko'rsatilgan SQL INSERT buyrug'ining asosiy sintaksisini ko'rib chiqamiz. INSERT INTO `jadval_nomi`(ustun_1,ustun_2,...) VALUES (qiymat_1,qiymat_2,...);
Yangi jadvalga kiritilishi kerak bo'lgan ma'lumotlar qiymatlarini taqdim etishda turli xil ma'lumotlar turlari bilan ishlashda quyidagilarga e'tibor berish kerak.
Misol: Aytaylik, bizda ma'lumotlar bazasiga qo'shilishi kerak bo'lgan yangi kutubxona a'zolarining quyidagi ro'yxati mavjud.
Maʼlumotlarni birma-bir INSERT qilaylik. Biz Leonard Xofstadterdan boshlaymiz. Biz aloqa raqamini raqamli maʼlumotlar turi sifatida koʻrib chiqamiz va raqamni bitta qoʻshtirnoq ichiga qoʻymaymiz. INSERT INTO `a'zolar` (`to'liq_ismlar`,`jins`,`jismoniy_manzil`,`aloqa_raqami`) VALUES ("Leonard Hofstadter","Erkak","Woodcrest",0845738767); Yuqoridagi skript bajarilsa, Leonardning aloqa raqamidan 0 tushiriladi. Buning sababi, qiymat raqamli qiymat sifatida qabul qilinadi va boshida nol (0) tushiriladi, chunki u muhim emas. Bunday muammolarni oldini olish uchun qiymat quyida ko'rsatilganidek, bitta tirnoq ichiga olinishi kerak - INSERT INTO `a'zolar` (`to'liq_ismlar`,`jins`,`jismoniy_manzil`,`aloqa_raqami`) VALUES ("Sheldon Kuper","Erkak","Woodcrest", "0976736763"); Yuqoridagi holatda nol (0) tushirilmaydi To'g'ri qiymatlar to'g'ri ustunlarga moslangan bo'lsa, ustunlar tartibini o'zgartirish INSERT so'roviga ta'sir qilmaydi. Quyida ko'rsatilgan so'rov yuqoridagi fikrni ko'rsatadi. INSERT INTO `a'zolar` (`kontakt_raqami`,`jins`,`to`liq_ismlar`,`jismoniy_manzil`)VALUES ("0938867763","Erkak","Rajesh Koothrappali","Woodcrest"); Yuqoridagi so'rovlar tug'ilgan sana ustunini o'tkazib yubordi, sukut bo'yicha MySQL INSERT so'rovida o'tkazib yuborilgan ustunlarga NULL qiymatlarni kiritadi. Keling, tug'ilgan sanasi ko'rsatilgan Lesli uchun rekordni joylashtiramiz. Sana qiymati "YYYY-AA-KK" formatidan foydalangan holda bitta tirnoq ichiga olinishi kerak. INSERT INTO `a'zolar` (`to'liq_ismlar`,`tug'ilgan_sana`,`jins`,`jismoniy_manzil`,`kontakt_raqami`) VALUES ("Leslie Winkle","1984-02-14","Erkak","Woodcrest"," 0987636553"); Yuqoridagi barcha so'rovlar ustunlarni ko'rsatdi va ularni qo'shish bayonotidagi qiymatlar bilan taqqosladi. Agar biz jadvaldagi HAMMA ustunlar uchun qiymatlarni taqdim etsak, unda biz qo'shish so'rovidan ustunlarni o'tkazib yuborishimiz mumkin. INSERT INTO `members` VAVAES (9,"Howard Wolowitz","Male","1981-08-24","SouthPark","P.O. Box 4563", "0987786553", "lwolowitzemail.me"); Endi a'zolar jadvalidagi barcha qatorlarni ko'rish uchun SELECT iborasidan foydalanamiz. SELECT * FROM `members`;
E'tibor bering, Leonard Xofstadterning aloqa raqami kontakt raqamidan nolni (0) tushirdi. Boshqa aloqa raqamlari boshida nolni (0) tushirmagan. Boshqa jadvaldan jadvalga kiritishINSERT buyrug'i boshqa jadvaldagi jadvalga ma'lumotlarni kiritish uchun ham ishlatilishi mumkin. Asosiy sintaksis quyida ko'rsatilgandek. INSERT INTO jadval_1 TANLASH * FROM jadval_2; Keling, amaliy misolni ko'rib chiqaylik, biz namoyish qilish uchun film toifalari uchun qo'g'irchoq jadval yaratamiz. Biz yangi toifalar jadvalini kategoriyalar_arxiv deb nomlaymiz. Quyida ko'rsatilgan skript jadvalni yaratadi. JADVAL YARATING `toifalar_arxivi` (`category_id` int(11) AUTO_INCREMENT, `category_name` varchar(150) DEFAULT NULL, `remarks` varchar(500) DEFAULT NULL, PRIMARY KEY (`kategoriya) Jadvalni yaratish uchun yuqoridagi skriptni bajaring. Keling, toifalar jadvalidagi barcha qatorlarni toifalar arxivi jadvaliga kiritamiz.Quyida ko'rsatilgan skript bizga bunga erishishga yordam beradi. `Kategoriyalar_arxiv` INTO INSERT * FROM `categories`; Yuqoridagi skriptni bajarish toifalar jadvalidagi barcha qatorlarni toifalar arxiv jadvaliga kiritadi. Skript ishlashi uchun jadval tuzilmalari bir xil bo'lishi kerakligiga e'tibor bering. Qo'shish jadvalidagi ustun nomlarini ma'lumotlarni o'z ichiga olgan jadvaldagilar bilan taqqoslaydigan yanada mustahkam skript. Quyida ko'rsatilgan so'rov uning ishlatilishini ko'rsatadi. INSERT INTO `categories_archive`(category_id,category_name,remarks) SELECT toifa_id,category_name,FROM `categories`; SELECT so'rovini bajarish `Kategoriyalar_arxivi` dan * TANLANING quyida ko'rsatilgan quyidagi natijalarni beradi.
Xulosa
|
Mashhur:
Tarmoq adapteri - bu nima? |
Yangi
- Android-da Wi-Fi tarmog'ini qanday unutish mumkin
- Android uchun tarjimon: eng yaxshi onlayn va oflayn ilovalarni ko'rib chiqish
- Operatsion kuchaytirgichlardan foydalanadigan harmonik signal generatorlari Sof sinus to'lqinli audio generator
- ESR nima. ESR o'lchovi. ESR o'lchash moslamasi. ESR. O'lchash usullari Kondensatorning esr nima va uni qanday o'lchash kerak
- Umumjahon ma'lumotlar almashinuvidan foydalanishning ko'rinishi va xususiyatlari Universal almashinuv 8
- Anti-aon xizmatidan foydalangan holda megafondan qo'ng'iroq qilishda raqamingizni qanday yashirish kerak
- JQuery shablonlari bilan ishlashni o'rganish Cool yorqin jQuery va CSS3 maslahatlari
- Nokia XL Dual SIM smartfonini ko'rib chiqish va sinovdan o'tkazish Mobil aloqa texnologiyalari va ma'lumotlarni uzatish tezligi
- Samsung Galaxy A7 smartfonida skrinshot olish
- Noutbukda ishlamay qolish sabablari va ularni qanday tuzatish kerak Kompyuterdagi sana va vaqt sozlamalari yo'qolgan