MySQL MBBTda jadvallarni hosil qilishni batafsil ko‘rib chiqdik. Ma’lumotlar bazasi bu — axborotlar bilan to‘latilgan jadvallardir, demak yaratgan jadvallarimizga axborotlarni kiritamiz. Axborotlar tartiblangan va jadval ustunlariga mos kelgan holda kiritilishi lozim, biz axborotlarni jadvallarda tartibli saqlash uchun, jadvallar ochishda parametrlarni ishlatdik.

Keling dastlab «test» nomli baza ochib, uning ichida «akmx» nomli jadval yaratamiz.

mysql> create database if not exists test;
mysql> use test;
mysql> create table akmx(id int(3), name varchar(10), year int(4));

Jadval yaratib bo‘ldik, endi uni to‘ldiramiz. Buning uchun SQLning «insert» komandasidan foydalanamiz. Dastlab qaysi ustunlarga qo‘shishimizni e’lon qilamiz, undan keyin axborot qo‘shamiz.

mysql> insert into akmx (id, name, year) values(1, 'Beckham', 1975);

agar barcha ustunga qo‘shilsa, ustunlar nomini olib tashlash ham mumkin.

mysql> insert into akmx  values(2, 'Valencia', 1986);

ba’zi ustunlarga qo‘shish ham mumkin, undan tashqari har xil ketma-ketlikda ham mumkin.

mysql> insert into akmx(year, name)  values(1988, 'Rafael');

Eng asosiysi ko‘rsatilayotgan ustun nomi va axborot mos tushishi lozim, agar tipi mos tushmasa «tip noto‘g‘ri» degan xatolik beriladi. Agar biror ustuniga hech narsa kiritmasak NULL qiymat avtomat kiritiladi(agar jadval yaratilayotganda defaul deb biror qiymat berilmagan bo‘lsa), Null qiymatni qo‘lda ham kiritish mumkin.

mysql> insert into akmx(id, year, name)  values(null,1988, 'Rafael');

Agar jadval yaratilayotganda biror ustun AUTO_INCREMENT deb qo‘yilgan bo‘lsa, u ustunga axborot kiritish shart emas, u ustun o‘zi bitta ortib ko‘payaveradi(tartib raqam ko‘rinishida 1,2,3,…).

Hosil bo‘lgan jadvalni SQL komandasi(select) orqali ko‘ramiz

mysql> select * from akmx;

load_1

Shu tariqa jadval to‘latilib boriladi.

Endi navbat, biror fayldagi ma’lumotlarni «akmx«jadvalimizga yuklaymiz. Dastlab biror «txt» fayl yaratamiz va uning ichiga TAB orqali ma’lumotlarni kiritamiz. Fayldagi ma’lumotlar tipi jadval ustunlari tiplari bilan bir xil bo‘lishi lozim. Har bir yangi ma’lumotlardan so‘ng, ENTER orqali pastga tushamiz, xullas natija quyidagicha bo‘lishi lozim:

load_2

Har bir so‘z orasi bitta TAB tugmasi. Bu faylni saqlaymiz(D:\load.txt). Endi shu faylni «akmx» jadvaliga yuklaymiz. Uning uchun quyidagi kodni yozamiz:

mysql> load date infile 'D:\load.txt' into table akmx lines terminated by '\n';

Kod manimcha tushunarli, faqat «lines terminated by«, bu keyingi qator uchun ma’lumotlar kiritilishi «\n» enter dan so‘ng amalga oshirilishi kerakligini anglatmoqda. «\n» enter tushunchasidir. Jadvaln tekshiramiz va ma’lumotlar kiritilganini ko‘ramiz.

select * from akmx;

Agar qandaydir ogoxlantiruvchi xabar(Warnings) chiqsa, «show warnings» orqali xabarni ko‘rishingiz mumkin bo‘ladi(mysql> show warnings).

Keling endi load.txt faylni o‘zgartiramiz. Har bir ustunga kiritiladigan ma’lumotdan so‘ng undov(!) belgisini qo‘yamiz va har bir keyingi qator uchun yulduzcha(*) belgisini qo‘yamiz va saqlaymiz.

load_3

Endi shu fayldagi ma’lumotlarni jadvalga yuklaymiz, yuqoridagi kodni biroz o‘zgartiramiz.

mysql> load date infile 'D:\load.txt' into table akmx fields terminated by '!' lines terminated by '*';

Ko‘rib turganingizdek, ustunlar ‘!’ bilan ajratilgan va u «fields terminated by» kalit so‘zi bilan bildirilmoqda, qatorlar esa ‘*‘ bilan ajratilib, » lines terminated by» nomi bilan bildirilmoqda.

Agar biror fayldagi birinchi qator kerak bo‘lmasa, «ignore 1 rows» kalit so‘zi orqali jadvalga kiritmaslik ham mumkin. Bunda birinchi qator tashlab yuboriladi, «ignore 2 rows» bo‘lsa, yuqoridan ikkita qator tashlab yuboriladi.