KompyuterlarDasturlash

SQL-so'rovlarni buyrug'i

SQL ma'lumotlar bazasini yaratishda va boshqarishda, shuningdek ma'lumotlar bilan har qanday harakatlarni amalga oshirishda eng keng tarqalgan dasturiy tillaridan biridir.

Amaliyot shuni ko'rsatadiki, ingliz tilining standart lug'atini o'rganish va o'rganish juda oson. Boshqa biron bir dasturlash tilida bo'lgani kabi, SQL o'z mantiqiy va sintaksisini o'z ichiga oladi, ularni ishlatish uchun asosiy buyruqlar to'plami va qoidalar.

SQL tilidagi buyruqlar tasnifi

Barcha standart SQL buyruqlari ularning maqsadlariga qarab hisoblanishi mumkin. Xususiy tasniflash uchun asos bo'lib, quyidagilarni o'z ichiga oladi:

  1. So'rovlarni yaratish buyruqlar.

  2. O'rnatilgan tartib va funktsiyalar uchun buyruqlar.

  3. Trigger va tizim jadvali buyruqlar.

  4. Sana va string o'zgaruvchilari bilan ishlash uchun birikma to'plamlari.

  5. Ma'lumotlar va jadvallar bilan ishlaydigan buyruqlar.

Ushbu tasnif muddatsiz davom ettirilishi mumkin, ammo SQL tilining asosiy buyruqlari bu turlarga asoslanadi.

Tilni tasniflashni hisobga olgan holda, uni qo'llash doirasi ko'rsatilgandek, u universaldir. Ushbu dasturiy til va uning varianti nafaqat standart muhitda, balki boshqa dasturlarda ham qo'llanilgan.

SQLdan foydalanish ko'lamini ofis dasturlarining nuqtai nazaridan ko'rish mumkin, ya'ni Microsoft Access. Bu til, yoki to'g'rirog'i, uning versiyasi - MySQL, Internetdagi ma'lumotlar bazalarini boshqarish imkonini beradi. Hatto Oracle ishlab chiqish muhiti SQL buyruqlarini asos sifatida ishlatadi.

Microsoft Access da SQLdan foydalanish

Ma'lumotlar bazasini dasturlash uchun tilni ishlatishning eng oddiy misollaridan biri MicrosoftOffice dasturiy paketidir. Ushbu dasturiy mahsulotni o'rganish kompyuter fanlari maktabida, 11-sinfda esa MicrosoftAccess ma'lumotlar bazasini boshqarish tizimini ko'rib chiqiladi.

Ushbu dasturni o'rganish davomida o'quvchilar ma'lumotlar bazasini rivojlantirish tili bilan tanishishadi va u erda hamma narsani tushunishadi. Accessning SQL buyruqlar, albatta, agar siz ularga professional tarzda qarasangiz, juda sodda. Bunday buyruqlarni bajarish juda oddiy va ular maxsus kod muharriri ichida yaratiladi.

Keling, aniq bir misolni ko'rib chiqaylik:

Pe_SurName ni tanlang

Forsdan

WHERE Pe_Name = 'Meri';

Buyruqning sintaksisiga asoslanib, u foydalanuvchi nomiga qaytadi, bu holda Meri ismli ayol Kontaktlar bazasidagi jadvalda saqlanadi.

SQLda SQL-dan foydalanish cheklangan bo'lsa-da, ba'zan bunday oddiy so'rovlar topshirilgan vazifani bajarilishini juda osonlashtiradi.

SQL buyruqlarini Oracle-dan foydalanish

Oracle, ehtimol, Microsoft SQL Server uchun yagona jiddiy raqib. Microsoft kompaniyasi dasturiy mahsulotining funktsiyalarini doimiy ravishda yaxshilanishiga olib keladigan ma'lumotlar bazasini yaratish va boshqarish uchun ushbu muhit, chunki raqobat taraqqiyot vositasidir. Oddiy raqobatga qaramay, Oracle SQL buyruqlari SQLni takrorlaydi. Shuni ta'kidlash kerakki, Oracle SQLning deyarli to'liq nusxasi hisoblansa-da, bu tizimning mantiqiy ma'nosi va butun bir til oddiy hisoblanadi.

Oracle tizimi o'ziga xos buyruqlar to'plamini ishlatganda bunday murakkab tuzilishga ega emas. Ushbu ma'lumotlar bazasi ishlab chiqish muhitining imkoniyatlarini hisobga olsak, Oracle ichki so'rovlarni murakkab tuzilishiga ega emas.

Ushbu farq ma'lumotlar bilan ishlashni ko'p marta tezlashtirishga imkon beradi, ammo aksincha, ayrim hollarda xotira samarasiz ishlatilishiga olib keladi. Oracle tarkibiga asosan vaqtinchalik jadvallar va ulardan foydalanish kiradi. Masalan, bu tizimdagi SQL buyruqlari SQL tilining standartlari bilan o'xshashlik bilan yaratilgan bo'lsa-da, ular ahamiyatsiz va undan farq qiladi.

SELECTCONCAT (CONCAT (CONCAT (CONSTANT), CONCAT (SUBSTR (fname, 0, 1), SUBSTR (otch, 0, 1)), CONCAT ('Qabul qilingan, qabul qilinadi)) XODIMLARNI qabul qiling> to_date ('01 .01.80 ',' dd.mm.yyyy ');

Ushbu so'rov muayyan vaqt mobaynida yollangan xodimlar haqidagi ma'lumotlarni qaytaradi. Spamning tuzilishi Microsoft SQL Serverdan farq qilsa-da, bu tizimlarda SQL buyruqlar bajarilishi kichik tafsilotlar bundan mustasno.

Internetda SQLdan foydalanish

World Wide Web-ning paydo bo'lishi, ya'ni Internet, SQL tilidan foydalanish ko'lami kengaymoqda. Ma'lumki, tarmoq ko'p ma'lumotni saqlaydi, ammo u xaotik emas, balki saytlarda va serverlarda ma'lum mezonlar bo'yicha joylashtirilgan.

Internetdagi ma'lumotlarni boshqa joyda bo'lgani kabi saqlash ham to'g'ridan-to'g'ri ma'lumotlar bazalarining javobgarligi va saytlar boshqaruv tizimlari hisoblanadi. Odatda, saytlar va ularning kodlari turli dasturlash tillarida tashkil etiladi, ammo ma'lumotlar bazasi SQL navlarining biriga asoslangan, ya'ni MySQL veb-interfeyslariga asoslangan ma'lumotlar bazasini yaratish tili.

Ushbu tilning sintaksisi va asosiy buyruqlar to'plami odatdagi SQL-ni to'liq nusxasini oladi, ammo Microsoft tSQL-serverdan farqni keltiruvchi ba'zi qo'shimchalari bilan.

SQL buyruqlari faqat sintaksikda emas, balki standart so'zi bilan ham o'xshashdir. Farqi faqat so'rovning tuzilishi va chaqiruvida. Masalan, yangi jadval yaratish uchun so'rovni ko'rib chiqishingiz mumkin, bu bolalar kompyuter fanlari bo'yicha maktablarda o'rganadigan birinchi narsa:

$ Link = mysqli_connect ('localhost', 'root', 'tester');

Agar (! $ Link) o'lib qolsa ("Xato");

$ Query = 'jadval foydalanuvchilarni yaratish (

Kirish VARCHAR (20),

Password VARCHAR (20)

) ';

Agar (mysqli_query ($ link, $ query)) echo "Jadval yaratiladi.";

Elseecho "Jadval yaratilmagan:" .mysqli_error ();

Mysqli_close ($ link);

Ushbu so'rov natijasida yangi jadval "Foydalanuvchilar" olishingiz mumkin, bu ikki maydonga ega bo'ladi: login va parol.

Matnni sintaksisi vebga o'zgartirildi, ammo MicrosoftSQLServer komandalariga asoslangan.

Microsoft SQL Server uchun so'rovlarni yaratish

Muayyan ma'lumotlar majmui jadvalidan tanlov asosiy SQL vazifalaridan biridir. Bunday amaliyotlar uchun SQL-dagi tanlangan buyruqlar berilgan. Quyida muhokama qilinadi.

Buyruqni tuzish qoidalari juda oddiy va SQL-dagi tanlangan buyruqlar quyidagi tarzda yaratilgan. Misol uchun, xodim haqida ma'lumot mavjud bo'lgan jadval mavjud, masalan, shaxs nomi. Jadvalda joriy yilning yanvar oyidan boshlab joriy yilning mart oyigacha bo'lgan vaqt oralig'ida tug'ilgan xodimlar to'g'risidagi ma'lumotni tanlash kerak bo'lgan vazifani belgilaylik. Bunday namuna uchun faqat standart qurilishga ega emas, shuningdek, tanlov shartini bajaradigan SQL buyrug'ini bajarish kerak:

Shaxsdan * ni tanlang

Bu erda P_BerthDay> = '01 / 01/2016 'va P_BerthDay <= '03 / 01/2016'

Bunday buyruqning bajarilishi tug'ilgan kuningiz siz tomoningizdan belgilangan davrda ishlaydigan xodimlar to'g'risidagi ma'lumotlarni qaytarib beradi. Ba'zan topshiriq faqatgina xodimning familiyasi, ismi va otasining ismini aniqlash uchun bo'lishi mumkin. Buning uchun so'rov biroz boshqacha tarzda qurilishi kerak, masalan, bu tarzda:

SelectP_Name - bu ism

P_SurName - familiyasi

P_Patronimic - otasining ismi

Shaxsdan

Bu erda P_BerthDay> = '01 / 01/2016 'va P_BerthDay <= '03 / 01/2016'

Biroq, bu faqat bitta narsani tanlashdir. U, aslida, hech narsa ta'sir qilmaydi, faqat ma'lumot beradi. Ammo SQLni jiddiy qabul qilishga qaror qilsangiz, ma'lumotlar bazalariga qanday o'zgarishlar qilishni o'rganishingiz kerak bo'ladi, chunki ularni yaratish imkonsizdir. Bu qanday amalga oshiriladi, quyida muhokama qilinadi.

Ma'lumotlarni o'zgartirish uchun asosiy SQL buyruqlar

Tilning sintaksisi faqat so'rovlar uchun emas, balki ma'lumotlar manipulyatsiyasi uchun ham yaratilgan. Asosan, ma'lumotlar bazasi dasturchilarining vazifasi namunalar va hisobotlarga ssenariylarni yozadi, lekin ba'zan jadvallarni tahrir qilish kerak. Bunday xatti-harakatlar uchun SQL buyruqlari ro'yxati kichik va uchta asosiy buyruqdan iborat:

  1. Qo'shish.

  2. Yangilang.

  3. O'chir.

Ushbu buyruqlar maqsadini aniqlash oson, chunki buning uchun faqatgina ismlarini tarjima qilish etarli bo'ladi. Ushbu buyruqlarni ishlatish oson va murakkab tuzilish sxemasiga ega emas, biroq ularning ayrimlari noto'g'ri ishlatilgan bo'lsa ma'lumotlar bazasiga tuzatib bo'lmaydigan shikast etkazishi mumkin.

Odatda, bunday MSSQL buyruqlarini ishlatishdan oldin ularni o'ylash kerak va ularni amalga oshirishning barcha mumkin bo'lgan oqibatlarini inobatga olish kerak.

Ushbu buyruqlarni o'rganib, ma'lumotlar bazasi jadvallari bilan ishlay boshlaysiz, natijada uni o'zgartirib, ba'zi bir yangi parametrlarni kiritishingiz yoki eski fayllarni o'chirishingiz mumkin.

Qo'shish buyrug'i

Jadvalga ma'lumot kiritish uchun eng xavfsiz buyruqni kiriting - Qo'shing. Noto'g'ri kiritilgan ma'lumotlar har doim o'chirilishi va ma'lumotlar bazasiga qayta kiritilishi mumkin.

Qo'shish buyrug'i jadvalga yangi ma'lumotlarni kiritish uchun ishlatiladi va siz ham to'ldiruvchi va ham tanlangan parametrlarni kiritish imkonini beradi.

Misol uchun, oldindan tavsiflangan shaxs jadvalidagi kiritish buyrug'ini ko'rib chiqing. Jadvalga ma'lumotlarni kiritish uchun, SQL-buyrug'ini bajarishingiz kerak, bu esa barcha ma'lumotlarni jadvalga qo'shish yoki tanlangan shaklda to'ldirish imkonini beradi.

Insonga kiring

"Grigoriev", "Vitaliy", "Petrovich", "01/01/1988"

Ushbu reja bo'yicha MS SQL SERVER buyruqlar avtomatik ravishda belgilangan jadvaldagi barcha xujayralarni to'ldiradi. Ishchining nomiga ega bo'lmagan holatlar mavjud, masalan, Germaniya almashish uchun kelgan. Bunday holda, faqatgina jadvalda nimani talab qilayotganini ko'rsatadigan ma'lumotlarni kiritish buyrug'i bajarish kerak. Ushbu buyruqning sintaksisi:

Insertintoperson (P_Name, P_SurName, P_BerthDay)

Qadriyatlar ('David', 'Hook', '02 / 11/1986 ')

Bunday buyruq faqat belgilangan hujayralarni to'ldiradi, va qolganlarning hammasi nol bo'ladi.

Ma'lumotlarni o'zgartirish buyrug'i

Barcha satr yoki ba'zi hujayralar uchun ma'lumotlarni yangilash uchun Update SQL buyrug'idan foydalaning. Bunday buyruqni bajarish uchun faqatgina ma'lum bir shart bilan, ya'ni aniqlik bilan qaysi qatorda o'zgarishlarni kiritish kerakligini aniqlab olish kerak.

Update SQL buyrug'i oddiy sintaksisga ega. To'g'ri foydalanish uchun qaysi ma'lumotlarni, qaysi ustunni va qaysi uskuna o'zgartirish kerakligini aniqlang. Keyin, skriptni kompilyatsiya va ijro eting. Keling, bir misolni ko'rib chiqaylik. Deyvid Xookning tug'ilgan sanasini o'zgartirish kerak, u 5-sonli xodimlar jadvaliga kiritilgan.

Shaxsni yangilash

P_BerthDay = '02 / 10/1986 'ni tanlang, bu erda P_ID = 5

Vaziyat (bu skriptda) jadvaldagi barcha yozuvlardagi tug'ilish sanasini o'zgartirishga ruxsat bermaydi, faqat kerakli bo'lganlarni yangilaydi.

Programmers ko'pincha foydalanadigan bu buyruq, chunki u barcha ma'lumotlarga jiddiy ziyon etkazmasdan jadvaldagi ma'lumotlarni o'zgartirishi mumkin.

O'rnatilgan tartib va funktsiyalardan foydalanish buyruqlar

SQL-dan foydalanib, siz so'rovlarni yaratibgina qolmay, balki ma'lumotlar bilan ishlash uchun o'rnatilgan mexanizmlarni yaratib berasiz. Odatda, bir so'rovning tanasida ilgari yozilgan namunani ishlatishingiz kerak bo'lgan vaqtlar mavjud.

Agar siz mantiqan to'g'ri qaror qilsangiz, siz namunadagi matnni nusxalashingiz va uni to'g'ri joyga joylashtirishingiz kerak, ammo siz oddiyroq echim bilan foydalanishingiz mumkin. Keling, Excelda aytadigan hisobotni chop etish uchun ishchi interfeysida tugmani ko'rsatadigan misolni ko'rib chiqaylik. Ushbu operatsiya zarur bo'lganda amalga oshiriladi. Bunday maqsadlar uchun ichki saqlangan tartiblar qo'llaniladi. SQL so'rovlar buyrug'i , bu holda, protsedura va SQLExec buyrug'i yordamida chaqiriladi.

Xodimlarning tug'ilgan kunini oldindan aytib o'tilgan shaxslar jadvalidan chiqarish uchun protsedura yaratilgan deb taxmin qiling. Bunday holatda, butun so'rovni yozishga hojat yo'q. Kerakli ma'lumotlarni olish uchun Exec buyrug'ini bajarish kifoya. [Yordan nomi] va tanlash uchun kerakli parametrlarni uzatish kifoya. Misol tariqasida, ushbu turdagi tartibni yaratish mexanizmini ko'rib chiqishingiz mumkin:

CREATEPROCEDURPRrintPerson

@DB kichik hajmdagi vaqt

@DEkdan kam vaqt

AS

MODE NOCOUNT ON;

SELECT * dan shaxs

HumanResources.vEmployeeDepartmentHistory dan

WHERE P_BerthDay> = @DB va P_BerthDay <= @DE

ANDEndDateISNULL;

GO

Ushbu tartibda tug'ilgan kuni ma'lum vaqt ichida ishlaydigan xodimlar to'g'risidagi barcha ma'lumotlarni qaytarib beradi.

Ma'lumotlarning yaxlitligini tashkil etish. Triggerlar

Ba'zi MS SQL buyruqlari, hatto dizaynlarni ham aytishi mumkin, faqat ma'lumotni manipulyatsiya qilishni emas, balki ularning yaxlitligini ta'minlashga imkon beradi. Ushbu maqsadlar uchun dasturiy vositani yaratadigan til dizayni ishlab chiqilgan. Ular ma'lumotni boshqarish imkonini beradigan tetiklerdir.

Bunday holatda, standart SQL so'rovlar buyruqlar vaziyatni tekshirishni tartibga solish uchun ishlatiladi. Triggerlardagi ma'lumotlarga kirish uchun emas, balki ma'lumotlarni o'chirib tashlash, o'zgartirish yoki qo'shishga yordam beradigan ma'lumotlar bilan ishlash uchun juda ko'p shartlar va cheklovlar yaratishingiz mumkin.

Triggerda ishlatilishi mumkin bo'lgan SQL buyruqlarining turlari cheklanmagan. Misolni ko'rib chiqaylik.

Triggerni yaratish mexanizmini tavsiflab beradigan bo'lsangiz, SQL buyruqlar turlari protsedurani yaratishda bo'lgani kabi bir xil bo'ladi. Algoritm o'zi quyida tasvirlanadi.

Birinchi qadam, Triggerlar yaratish uchun xizmat buyrug'ini tavsiflashdan iborat:

TRIGGER TANLASHI

Keyin, qanday jadval uchun tanlang:

ONPerson

Ma'lumotlar bilan ishlashni aniqlang (bizning holatda bu ma'lumotni o'zgartirish operatsiyasi).

Keyingi qadam jadvallar va o'zgaruvchilarni ko'rsatishdir:

Declare @ID int. @ Kichkina o'lchovni ko'rsating @nID int. @nDatesmalldatetime

Keyinchalik, ma'lumotlarni o'chirish va qo'shish jadvallaridan ma'lumotlarni tanlash uchun kursorlarni e'lon qilamiz:

Tanlangan P_ID, P_BerthDay uchun kiritilgan uchun C1 o'qi kursori

Tanlangan P_ID, P_BerthDay uchun o'chiriladi

Ma'lumotlarni tanlash bo'yicha bosqichlarni aniqlang. Keyinchalik, kursorning tanasida biz uning holatini va reaktsiyasini yozamiz:

Agar @ID = @ nID va @nDate = '01 / 01/2016 '

Boshlang

SMasseges 'Amal bajarilmaydi. Sana mos emas '

Tugatish

Shuni eslatib o'tish joizki, tetik faqatgina yaratilishi mumkin emas, balki bir muddat ham ishlamaydi. Ushbu manipulyatsiyani faqat SQL SERVER buyruqlarini bajarish orqali dasturchilar amalga oshirishi mumkin:

AltertablePERSONdisabletriggerall - bu jadval uchun yaratilgan barcha triggerlarni o'chirib qo'yish va shunga mos ravishda altertablePERSONenabletriggerall - ularni yoqish uchun.

Ushbu asosiy SQL buyruqlar ko'pincha ishlatiladi, biroq ularning kombinatsiyasi juda xilma-xil bo'lishi mumkin. SQL juda moslashuvchan dasturlash tili bo'lib, ishlab chiquvchiga maksimal imkoniyatlar beradi.

Xulosa

Yuqoridagilarning barchasidan bitta xulosa chiqarishingiz mumkin: SQL tilini bilish dasturga jiddiy yondashadiganlar uchun kerak. U internet va uy ma'lumotlar bazalarida amalga oshiriladigan barcha operatsiyalarning markazida yotadi. Shuning uchun kelajakdagi dasturchilar ushbu tilning ko'pgina buyruqlarini bilishlari kerak, chunki ularning yordamida siz faqat kompyuter yordamida muloqot qilishingiz mumkin.

Albatta, bu dunyodagi hamma narsada bo'lgani kabi kamchiliklar ham bor, lekin ular juda katta ahamiyatga ega emaslar, chunki ular faqatgina mahorat bilan o'ynashadi. Barcha dasturlash tillari orasida SQL deyarli bir xil, chunki u universaldir va skriptlar va kodlarni yozish bo'yicha bilim deyarli barcha saytlarning markazida joylashgan.

Keyin barcha, u maktab müfredatına kim u, chunki SQL bezogovorchno asosiy afzalligi, uning oddiyligi, deb atash mumkin. hatto bir Ajam programcı qo'yish mumkin beri, albatta, tilda bilimdon emas.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 uz.birmiss.com. Theme powered by WordPress.