Скачиваний:
8
Добавлен:
27.11.2023
Размер:
2.27 Mб
Скачать

Insert into…values

INSERT…VALUES buyrıǵı kestege taza jazıwlardı kirgizedi. Sintaksisi tómendegishe:

INSERT INTO table_name VALUES (values,…)

VALUES operatorınan keyin qawsırmanıń ishinde útir menen ajıratılǵan maydanlar mánisleri keltiriledi.

Mısal ushın authors kestesine bir neshe paydalanıwshılar haqqında maǵlıwmatlardı jazamız:

mysql> INSERT INTO authors VALUES (1, 'Azizbek', '123', 'azizbek@umail.uz ', 'www.lugat.uz', '222-01-02', '','programmist', '', '', 0, 0);

mysql> INSERT INTO authors VALUES (2, 'Alisher', '123', 'alisher@umail.uz', 'http://alik.uz/', '223-03-04', 'Programmist', '', '', 407, 0);

mysql> INSERT INTO authors VALUES (3, 'Quwanish', '212', quwanish@umail.uz', 'http://www.uztelecom.uz/', '226-07-08', 'Dizayner', '', '', 408, 0);

DELETE

DELETE FROM table_name [WHERE definition]

DELETE buyrıǵı table_name kestesinen definition bóliminde keltirilgen shártlerge qanaatlandırıwshı barlıq jazıwlardı óshiredi hám óshirilgen qatarlar sanın qaytaradı.

Mısalı ushın, authors kestesinen barlıq jazıwlardı óshiriwi ushın:

mysql> DELETE FROM authors;

DELETE, UPDATE hám SELECT buyrıqlardıń áhmiyetli bir operatorı bul WHERE operatorı. WHERE járdeminde biz jazıwlardı tańlaw shártin belgilewimiz múmkin. Tómende keltirilgen soraw kesteden dáslepki gilti 1 ge teń bolǵan paydalanıwshını óshiredi:

mysql> DELETE FROM authors WHERE id_author = 1;

Tańlaw shártler quramalı bolıwı da múmkin, mısalı ushın tómendegi sorawda paroli «123» ke teń hám dáslepki gilti 10 nan úlken bolǵan paydalanıwshılar óshiriledi:

mysql> DELETE FROM authors WHERE passw = '123' AND id_author > 10;

AND operatorı logikalıq XӘM operatorı bolıp esaplanadı. Bunnan tısqarı, sorawlarda OR (YAMASA) logikalıq operatorlardı qollawımız múmkin.

SELECT

SELECT buyrıǵı bir yamasa bir neshe kesteden maǵlıwmatlardı oqıp alıw ushın kerek hám onıń ulıwma kórinisi tómendegishe:

SELECT column,...

[FROM table WHERE definition]

[ORDER BY col_name [ASC | DESC], ...]

[LIMIT [offset], rows]

Bul jerde column – tańlanatuǵın baǵananıń atı. Siz útir menen ajıratılǵan bir neshe baǵana kórsetiwińiz da múmkin. Еger barlıq baǵanalardı oqıp alıwımız kerek bolsa, «*» juldızsha belgisinen paydalansaq boladı. FROM gilt sózi kesteniń atın belgileydi. WHERE gilt sózi, DELETE operatorı sıyaqlı qatarlardı tańlaw shártin belgileydi. ORDER BY gilt sózi qatarlardı col_name baǵanası boyınsha ósiw (ASC) yamasa kemeyiw (DESC) tártibinde shıǵarıwǵa kórsetpe beredi. LIMIT gilt sózi MySQL ge offset te belgilengen pozitsiyadan baslap tek ǵana rows qatarlardı shıǵarıwǵa kórsetpe beredi.

Еndi biz forums kestesine bir neshe jazıw kirgizip, olardı SELECT buyrıǵı arqalı oqıp alamız.

mysql> INSERT INTO forums VALUES (1, 'Forum1', '', '', 1, 0);

mysql> INSERT INTO forums VALUES (2, 'Forum2', '', '', 2, 0);

mysql> INSERT INTO forums VALUES (3, 'Forum3', '', '', 3, 0);

mysql> INSERT INTO forums VALUES (4, 'Forum4', '', '', 4, 0);

mysql> INSERT INTO forums VALUES (5, 'Forum5', '', '', 5, 0);

forums kestesin kórip shıǵıw ushın tómendegishe sorawdı orınlaymız:

mysql> SELECT * FROM forums;

Demek, barlıq baǵanalardı oqıp alamız. Nátiyje tómendegishe:

Kerek bolsa, tek ǵana kerekli baǵanalardı tańlasaq boladı, bul ushın kerekli baǵanalardı anıq kórsetiwimiz shárt:

mysql> SELECT id_forum, name FROM forums;

Bul jaǵdayda MySQL tek ǵana eki baǵananı shıǵarıp beredi, bul id_forum dáslepki giltke iye baǵana hám forum atı – name:

LIMIT operatorı SELECT buyrıǵı menen qaytarılatuǵın qatarlar sanın sheklew ushın qollanıladı. Mısalı ushın:

mysql> SELECT * FROM forums LIMIT 3;

Nátiyjede 5 qatardan tek ǵana birinshi 3 qatarı ekranǵa shıǵarıladı:

LIMIT operatorı eki pútin sanlı argument qabıllawı múmkin. Bunday jaǵdayda aqırǵı argument qaytarılatuǵın qatarlar sanın, birinshisi bolsa qaysı qatardan baslap nátiyje qaytarıw kerek ekenligin belgileydi.

mysql> SELECT * FROM forums LIMIT 1,3;

Bul jaǵdayda 2, 3 hám 4 qatarlar qaytarıladı.

SELECT buyrıǵında WHERE operatorı DELETE buyrıǵı sıyaqlı qollanıladı. Mısalı ushın, kesteden tek ǵana id_forum ekiden úlken bolǵan jazıwlardı oqıp alamız:

mysql> SELECT * FROM forums WHERE id_forum > 2;

Tártiplestiriw qaǵıydaların ORDER BY operatorı arqalı belgilewimiz múmkin:

mysql> SELECT * FROM forums WHERE id_forum > 2 ORDER BY pos DESC;

Bul SQL-sorawda id_forum maydanı ekiden úlken, hám pos maydanı boyınsha ósiw tártibinde bolǵan jazıwlardı shıǵaradı.

UPDATE

UPDATE table

SET col_name1=expr1 [, col_name2=expr2 ...]

[WHERE definition]

[LIMIT rows]

UPDATE buyrıǵı table kesteniń baǵanaların olardıń taza mánislerine sáykes etip jańalap beredi. SET anıqlamasında qaysı baǵanalardı ózgertiw kerek hám olarǵa qanday mánisler jazılıw kerek ekenligi kórsetiledi. Еger WHERE gilt sózi keltirilgen bolsa, bul qaysı qatarlardı jańalaw kerek ekenligin belgileydi. Keri jaǵdayda barlıq qatarlar jańalanadı. LIMIT gilt sózi jańalanatuǵın qatarlar sanın sheklewge imkaniyat beredi.

Tómendegi SQL-sorawda dáslepki giltti ekige teń bolǵan forum bólimine taza atama (PHP) qoyıladı hám hide maydanı birge teńlestiriledi:

UPDATE forums SET name='PHP', hide=1 WHERE id_forum=2;

SHOW

Bul buyrıqtan biz aldın maǵlıwmatlar bazaları dizimin hám kesteler dizimin kórip shıǵıw ushın paydalandıq. Еndi bul buyrıqtı qosımsha bir neshe usılda qollanıwdı kórip shıǵamız.

Tańlanǵan kesteniń barlıq baǵanaların shıǵarıw ushın tómendegi sorawdan paydalanamız:

mysql> SHOW FIELDS FROM authors;

Nátiyje tómendegishe:

Sonday-aq, kesteniń barlıq indekslerin shıǵarıwımız múmkin:

mysql> SHOW INDEX FROM authors;

SHOW PROCESSLIST buyrıǵı járdeminde sistemada házirgi waqıtta orınlanıp atırǵan barlıq sorawlardı kóriwimiz múmkin:

Соседние файлы в предмете Программирование для Web