Loading...

Дайындарды кошуу. INSERT буйругу

MySQL маалымат базасына маалыматтарды кошуу үчүн төмөнкү формалдуу синтакс бар INSERT командасын колдонуңуз: 

@A@

INSERT [INTO] имя_таблицы [(список_столбцов)] VALUES (значение1, значение2, ... значениеN)

 

@A@

Периштелердеги INSERT INSERT билдирүүсүнөн кийин сиз маалыматтарды кошууну каалаган колонналардын комма-бөлүнгөн тизмесин көрсөтө аласыз, акырында, VALUES деген сөздөн кийин колонналар үчүн кошулуучу баалуулуктар саналып өткөн. 

Мисалы, productsdb маалымат базасына төмөнкү Products таблицасы бар сыягы: 

@A@

CREATE DATABASE productsdb; 

USE productsdb; 

CREATE TABLE Products 

    Id INT AUTO_INCREMENT PRIMARY KEY, 

    ProductName VARCHAR(30) NOT NULL, 

    Manufacturer VARCHAR(20) NOT NULL, 

    ProductCount INT DEFAULT 0, 

    Price DECIMAL NOT NULL 

); 

@A@

Төмөнкү кодду колдонуу менен бул таблицага бир катар кошолу: \

@A@

INSERT Products(ProductName, Manufacturer, ProductCount, Price)  

VALUES ('iPhone X', 'Apple', 5, 76000); 

@A@

Бул учурда баалуулуктар позиция боюнча колонналарга берилет. Башкача айтканда, ProductName колоннасы "iPhone X" сапынан өтүп, Manufacturer - строка "Apple" сапынан өтүп жатат. 

Колонналардын баалуулуктары менен маалыматтар түрлөрүнүн ортосунда дал келүү маанилүү. Мисалы, ProductName колоннасы сап болуп эсептелген varchar түрүн билдирет. Ошого жараша, биз бул колоннага бир цитата белгилеринде сап наркын өткөрүп бере алабыз. Ал эми ProductCount түрү бир int билдирет, башкача айтканда, интегер, ошондуктан саптарды эмес, бул колоннага интегерлерди өткөрүү керек. 

MySQL Workbench-та ийгиликтүү аткарылгандан кийин, чыгуу талаасында жашыл маркер жана "1 row(s) affected": кабары пайда болушу керек: 

INSERT и добавление данных в MySQL 

Маалыматтарды кошууда таблицанын бардык колонналары үчүн баалуулуктарды көрсөтүүнүн зарылдыгы жок. Мисалы, жогорудагы мисалда сиз id колоннасынын наркын көрсөтпөйсүңөр. Бирок, AUTO_INCREMENT атрибуты бул колонна үчүн аныкталгандыктан, анын наркы автоматтык түрдө түзүлөт. 

Биз ошондой эле жокко чыгарууну колдогон же дефолт наркы бар колонналарды, башкача айтканда, жокко чыгарууга же DEFAULT ка ээ боло алабыз. Мисалы, Products таблицасында ProductCount колоннасынын DEFOULT наркы 0. Ошондуктан, кошуу учурунда бул колоннаны алып которууга болот, жана 0 номери ага өткөрүлөт: 

@A@

INSERT Products(ProductName, Manufacturer, Price)  

VALUES ('Galaxy S9', 'Samsung', 63000); 

@A@

Нарктын DEFOULT наркы же NULL наркы боло тургандыгын көрсөтүү үчүн DEFAULT жана NULL ачкыч сөздөрүн колдонсоңор болот: 

@A@

INSERT Products(ProductName, Manufacturer, Price, ProductCount)  

VALUES ('Nokia 9', 'HDM Global', 41000, DEFAULT); 

@A@

или 

@A@

INSERT Products(ProductName, Manufacturer, Price, ProductCount)  

VALUES ('Nokia 9', 'HDM Global', 41000, NULL); 

@A@

Бир нече кошумча 

Биз ошондой эле бир эле учурда бир нече саптарды кошууга болот: 

@A@

INSERT Products(ProductName, Manufacturer, Price, ProductCount)  

VALUES 

('iPhone 8', 'Apple', 51000, 3), 

('P20 Lite', 'Huawei', 34000, 4), 

('Galaxy S8', 'Samsung', 46000, 2); 

@A@

Бул учурда дасторконго үч катар кошулат.