Вметнете во избраната оракулска синтакса. Основи на T-SQL. DML. Вметнување повеќе редови

Покрај изјавата SELECT што беше дискутирана претходно, јазикот за манипулација со податоци (DML) содржи три други изјави: INSERT, UPDATE и DELETE. Како и изјавата SELECT, овие три изјави функционираат или на табели или на прегледи. Оваа статија ја разгледува изјавата INSERT, а другите две изјави се дискутирани во следната статија.

Внесете изјававметнува редови (или делови од редови) во табела. Постојат две различни форми на оваа инструкција:

Внесете го_името на јазичето [(col_list)] СТАНДАРНИ ВРЕДНОСТИ | ВРЕДНОСТИ (( Стандардно | NULL | израз ) [ ,...n]) Вметни ВО tab_име | view_name [(col_list)] (select_statement | execute_statement) Конвенции на синтакса

Првата форма на инструкцијата ви овозможува да вметнете еден ред (или дел од него) во табелата. И втората форма на изјавата INSERT ви овозможува да го вметнете во табела множеството резултати од изјавата SELECT или складирана процедура извршена со изјава EXECUTE. Зачуваната процедура мора да врати податоци што треба да се вметнат во табелата. Кога се користи со изјава INSERT, изјавата SELECT може да избере вредности од различна или иста табела во која се вметнуваат податоците, се додека типовите на податоци на соодветните колони се компатибилни.

За двата формулари, типот на податоци на секоја вметната вредност мора да биде компатибилен со типот на податоци од соодветната колона од табелата. Сите низи и привремени податоци мора да бидат затворени во наводници; Нумеричките вредности не треба да се ставаат во наводници.

Вметнување на еден ред

За двете форми на изјавата INSERT, експлицитното наведување на списокот со колони е изборно. Да не се наведуваат колони е исто како да се специфицираат сите колони во табелата.

DEFAULT VALUES параметарвметнува стандардни вредности за сите колони. Колоните со типот на податоци TIMESTAMP или својството IDENTITY стандардно се вметнуваат со вредности кои автоматски се генерираат од системот. За колони од други типови податоци, соодветната не-нулта стандардна вредност се вметнува ако е достапна, или NULL во спротивно. Ако колоната не дозволува нула вредности и нема дефинирана стандардна вредност, изјавата INSERT не успее и се прикажува порака.

Примерот подолу вметнува редови во табелата Employee во базата на податоци SampleDb, демонстрирајќи ја употребата на изјава INSERT за вметнување мала количина на податоци во базата на податоци:

КОРИСТЕТЕ SampleDb; ВНЕСЕТЕ ВО ВРЕДНОСТИ НА ВРАБОТНИЦИТЕ (34990, „Андреј“, „Батонов“, „д1“); ВНЕСЕТЕ ВО ВРЕДНОСТИ НА ВРАБОТНИЦИТЕ (38640, „Алексеј“, „Васин“, „д3“);

Постојат два различни начинивметнување вредности во нов ред. Изјавата INSERT во примерот подолу експлицитно го користи клучниот збор NULL и вметнува NULL вредност во соодветната колона:

КОРИСТЕТЕ SampleDb; INSERT INTO Employee VALUES (34991, "Andrey", "Batonov", NULL);

За да внесете вредности во некои (но не сите) колони од табелата, обично треба експлицитно да ги наведете тие колони. Неодредените колони мора или да дозволуваат NULL вредности или да имаат дефинирана стандардна вредност.

КОРИСТЕТЕ SampleDb; INSERT INTO Employee(Id, FirstName, LastName) VALUES (34992, „Андреј“, „Батонов“);

Претходните два примери се еквивалентни. Во табелата Employee, единствената колона што дозволува NULL вредности е колоната DepartmentNumber, а сите други колони беа оневозможени со клаузулата NOT NULL во изјавата CREATE TABLE.

Ред на вредности во VALUES понуда INSERT изјавите може да се разликуваат од редоследот наведен во изјавата CREATE TABLE. Во овој случај, нивниот редослед мора да одговара на редоследот по кој соодветните колони се наведени во списокот со колони. Подолу е пример за вметнување податоци по различен редослед од оригиналот:

КОРИСТЕТЕ SampleDb; INSERT INTO Employee (Departament Number, LastName, Id, FirstName) ВРЕДНОСТИ ("d1", "Batonov", 34993, "Andrey");

Вметнување повеќе редови

Втората форма на изјавата INSERT вметнува еден или повеќе редови избрани од подпрашање во табелата. Примерот подолу покажува како да вметнете редови во табела користејќи ја втората форма на изјавата INSERT. Во овој случај, се извршува барање за избор на броеви и имиња на одделенијата лоцирани во Москва, а добиениот сет на резултати се вчитува во нова табела создадена порано.

Новата табела MoscowDepartment создадена во примерот погоре ги има истите колони како и постоечката табела на Одделот, освен колоната Локација што недостасува. Подпрашањето во изјавата INSERT ги избира сите редови во табелата Оддел за кои вредноста на колоната Локација е „Москва“, кои потоа се вметнуваат во новата табела создадена на почетокот на барањето.

Примерот подолу покажува друг начин за вметнување редови во табела користејќи ја втората форма на изјавата INSERT. Во овој случај, се извршува барање за избор на персонални броеви, броеви на проекти и датуми за започнување на проектот за сите вработени со позиција „Менаџер“ кои работат на проектот p2 и потоа се вчитува добиениот резултат поставен во нова табела создадена на почетокот на барањето:

КОРИСТЕТЕ SampleDb; CREATE TABLE ManagerTeam (EmpId INT NOT NULL, Project Number CHAR (4) NOT NULL, EnterDate DATE); INSERT INTO ManagerTeam (EmpId, ProjectNumber, EnterDate) SELECT EmpId, ProjectNumber, EnterDate FROM Works_on WHERE Job = "Manager";

Пред да вметнете редови користејќи ја изјавата INSERT, табелите на MoscowDepartment и ManagerTeam (во примерите погоре) беа празни. Ако табелата веќе постоела и содржела редови со податоци, тогаш на неа би се додале нови редови.

Во претходните делови, ја разгледавме работата за преземање податоци од претходно креирани табели. Сега е време да дознаеме како можеме да креираме/бришеме табели, да додаваме нови записи и да ги избришеме старите. За овие цели во SQLПостојат оператори како што се: КРЕИРАЈ- создава табела, АЛТЕР- ја менува структурата на табелата, КАПКА- брише табела или поле, ВНЕСЕТЕ- додава податоци на табелата. Да почнеме да се запознаваме со оваа група на оператори од операторот ВНЕСЕТЕ.

1. Додавање цели линии

Како што сугерира името, операторот ВНЕСЕТЕсе користи за вметнување (додавање) редови во табела со база на податоци. Додавањето може да се направи на неколку начини:

  • - додадете една целосна линија
  • - додадете дел од линијата
  • - додадете резултати од барањето.

Значи, за да додадеме нов ред во табелата, треба да го одредиме името на табелата, да ги наведеме имињата на колоните и да ја одредиме вредноста за секоја колона користејќи ја конструкцијата Вметнете ВО табела_име (поле 1, поле 2 ...) ВРЕДНОСТИ (вредност 1, вредност 2...). Ајде да погледнеме на пример.

INSERT INTO Sellers (ID, Address, City, Seller_name, Country) VALUES(„6“, „1-ва улица“, „Лос Анџелес“, „Хари Монро“, „САД“)

Можете исто така да го промените редоследот на имињата на колоните, но во исто време треба да го промените редоследот на вредностите во параметарот ВРЕДНОСТИ.

2. Додавање на дел од линиите

Во претходниот пример, при користење на операторот ВНЕСЕТЕексплицитно ги означивме имињата на колоните на табелата. Користејќи ја оваа синтакса, можеме да прескокнеме неколку колони. Ова значи дека внесувате вредности за некои колони, но не ги давате за други. На пример:

ВНЕСЕТЕ ВО ВРЕДНОСТИ на продавачите (ID, Град, Име на продавачот).(„6“, „Лос Анџелес“, „Хари Монро“)

Во овој пример, не наведовме вредност за две колони АдресаИ Земја. Можете да исклучите некои колони од изјавата Вметнете ВО, ако тоа дозволува дефиниција на табелата. Во овој случај, мора да се исполни еден од условите: оваа колона е дефинирана како валидна НУЛА(отсуство на која било вредност) или наведената стандардна вредност во дефиницијата на табелата. Ова значи дека ако не е наведена вредност, ќе се користи стандардната вредност. Ако ви недостасува колона од табелата што не дозволува вредностите да се појавуваат во нејзините редови НУЛАи нема дефинирана стандардна вредност, DBMS ќе генерира порака за грешка и редот нема да се додаде.

3. Додавање избрани податоци

Во претходниот пример, вметнувавме податоци во табели со рачно внесување во барањето. Сепак, операторот Вметнете ВОни овозможува да го автоматизираме овој процес доколку сакаме да вметнеме податоци од друга табела. За таа цел во SQL постои таква конструкција како Вметни ВО ... ИЗБЕРИ .... Овој дизајн ви овозможува истовремено да избирате податоци од една табела и да ги вметнувате во друга. Да претпоставиме дека имаме друга табела Продавачи_ЕУсо список на продавачи на нашите стоки во Европа и треба да ги додадеме во општата табела Продавачи. Структурата на овие табели е иста (ист број на колони и исти имиња), но податоците се различни. За да го направите ова, можеме да го напишеме следново барање:

ВНЕСЕТЕ ВО продавачите (ID, адреса, град, име на продавачот, земја) ИЗБЕРЕТЕИД, адреса, град, име на продавачот, земја од продавачи_ЕУ

Треба да обрнете внимание за да не се повторуваат вредностите на внатрешните клучеви (поле ИД), во спротивно ќе се појави грешка. Оператор ИЗБЕРИможе да вклучува и предлози КАДЕза филтрирање на податоците. Исто така, треба да се забележи дека DBMS не обрнува внимание на имињата на колоните содржани во изјавата ИЗБЕРИ, ѝ е важен само редоследот по кој се наредени. Затоа, податоците во првата наведена колона што беше избрана поради ИЗБЕРИ, во секој случај ќе се пополни во првата колона од табелата Продавачи, наведено по операторот Вметнете ВО, без оглед на името на полето.

4. Копирање податоци од една табела на друга

Често кога работите со бази на податоци, има потреба да се креираат копии од какви било табели со цел да се направи резервна копија или модификација. Да направиш целосна копијатабели во SQL постои посебен оператор ИЗБЕРЕТЕ ВО. На пример, треба да создадеме копија од табелата Продавачи, ќе треба да го напишете барањето на следниов начин:

ИЗБЕРЕТЕ * ВО Продавачите_new ОД Продавачи

За разлика од претходниот дизајн Вметни ВО ... ИЗБЕРИ ...Кога податоците се додаваат на постоечка табела, дизајнот ги копира податоците во новата табела. Може да се каже и дека првата конструкција увезува податоци, а втората извезува. При користење на дизајнот Изберете ... во ... од ...Треба да се земе предвид следново:

  • - Можете да користите какви било реченици во операторот ИЗБЕРИ, како ГРУПА ПОИ ИМАЊЕ
  • - можете да користите приклучување за да додадете податоци од повеќе табели
  • - податоците може да се додадат само на една табела, без разлика од колку табели се земени.

Тим додава редови на табелатаили приказ на главната маса.

SQL INSERT COMMAND SYNTAX

Вметнете командна синтакса


Основни клучни зборови и параметри на командата INSERT
  • шема- идентификатор на дозвола, обично одговара на името на некој корисник
  • приказ на маса- името на табелата во која треба да се вметнат редовите; ако е одреден приказ, редовите се вметнуваат во главната табела на приказот
  • подпрашање_1- подпрашање што серверот го обработува на ист начин како приказ
  • колона- табела или приказ колона во која се внесува вредноста од фразата за секој вметнат ред ВРЕДНОСТИили подпрашање; ако една од колоните на табелата е испуштена од оваа листа, вредноста на колоната за вметнатиот ред е стандардната вредност на колоната дефинирана при креирањето на табелата. Ако списокот со колони е целосно испуштен, клаузулата ВРЕДНОСТИили барањето мора да ги одреди вредностите за сите колони во табелата
  • ВРЕДНОСТИ- дефинира низа вредности што ќе бидат вметнати во табелата или приказот; значењето мора да се дефинира во реченицата ВРЕДНОСТИза секоја колона во листата на колони
  • подпрашање_2- подпрашање што враќа редови вметнати во табелата; избраната листа на ова подпрашање мора да има ист број на колони како и списокот со колони со исказ

Изјава со фразата ВРЕДНОСТИдодава еден ред на табелата. Оваа линија ги содржи вредностите дефинирани со фразата ВРЕДНОСТИ.
Изјава со подпрашањенаместо фраза ВРЕДНОСТИги додава сите редови вратени од подпрашањето во табелата. Серверот обработува подпрашањеи го вметнува секој вратен ред во табелата. Ако подпрашањето не избере ниту еден ред, серверот не вметнува ниеден ред во табелата.
Подпрашањеможе да пристапи до која било табела или приказ, вклучително и целната табела за тврдења . Серверот доделува вредности на полињата во нови редови врз основа на внатрешната позиција на колоните во табелата и редоследот на вредностите на фразата ВРЕДНОСТИили во листата за избор на барање. Ако недостасуваат колони од списокот со колони, серверот им ги доделува стандардните вредности дефинирани кога е креирана табелата. Ако некоја од овие колони има ограничување NOT NULL, тогаш серверот враќа грешка што покажува дека ограничувањето е прекршено и ја прекинува изјавата INSERT.
Кога ќе се издаде изјава за вметнување, овозможено е активирање на активирање на вметнување на табелата.

Вметнете ВО Пример 1

Вметнете ВОодд ВРЕДНОСТИ(50, „ПРОИЗВОДИ“, „САН ФРАНЦИСКО“);

Вметнете ВОКлиенти (град, име, број) ВРЕДНОСТИ('Лондон', 'Хофман', 2001);

Вметнете ВО Пример 2
Следната команда ги копира податоците на вработените во компанијата чии комисии надминуваат 25% од приходот во табелата за бонуси:

Вметнете ВОбонус изберете го Емај, работа, сол, команда од ЕМП каде Комара> 0,25 * Сал;

Вметнете ВО Пример 3
Ако треба да вметнете НУЛА-Ве, мора да ја наведете како нормална вредност како што следува:

Вметнете ВОВРЕДНОСТИ на продавачите (1001,'Peel',NULL,12);

Вметнете ВО Пример 4
Командата може да се користи за враќање на вредностите од една табела и да ги постави во друга со помош на барање. За да го направите ова, доволно е да ја замените реченицата ВРЕДНОСТИна соодветното барање:

Вметнете ВО LondonStaff Select * Од продавачите каде град = 'Лондон';

MySQL INSERT

За да вметнете нови редови во базата на податоци MySQL, користете INSERT команда, примери за команди се дадени подолу:
Вметнете ВО Пример 1.
Вметнете нова линијана табелата table_name.

Вметнете ВО

Вметнете ВО Пример 2.
Вметнување нов ред во табелата табела_ име што укажува на вметнување на податоци во колоните што ни се потребни.

Вметнете ВОтабела_име VALUES('1','165','0', 'име');

Во базата на податоци MySQLМожно е да вметнете повеќе нови линии со помош на една команда.
Вметнете ВО Пример 3.
Вметнување повеќе редови во името на табелата на табелата.

Вметнете ВО Table_name (TBL_ID, CHISLO, CHISLOTWO, име) Вредности ('1 ′,' 159 ′, '34', 'Name1 ′), (' 2 ′, '14', '61', 'name2 ′), (' 3 ','356','8', 'име3');

SQL пребарување вметнете во смисла кога е креирана табела за бази на податоци. Тоа е, табелата постои, има име, креирани редови и колони. Табелата е креирана од операторот :, Табелата е изменета од операторот.

sql барање INSERT INTO - синтакса на барање

sql барањето INSERT INTO ја има следнава синтакса:

INSERT INTO table_name (во загради, доколку е потребно, вметнете листа на колони каде што сакате да вметнете податоци) VALUES вметнати податоци1, вметнати податоци2, вметнати податоци3.

Можете да вметнете опција IGNORE помеѓу INSERT и INTRO. Тоа не е потребно. Потребни се за заштита на примарните клучеви при уредување табела. Во спротивно, ако при уредувањето се случи дуплирање на примарните клучеви, тогаш при вметнување на опцијата ИГНОРИ, првиот ред со примарниот клуч ќе остане во табелата што се уредува.Другите примарни клучеви ќе бидат избришани. Стандардно, ја испуштаме оваа опција.

Има изборни опции LOW_PRIORITY и DELAYED. Тие ги одредуваат приоритетите за додавање информации во базата на податоци. Првиот специфицира чекање за објавување на базата на податоци, вториот значи баферирање на информации.

Линијата во барањето: INSERT со фразата VALUES ќе ви овозможи да додадете еден ред во табелата со база на податоци. Клаузулата VALUES ги содржи вредностите на овие податоци.

Подпрашањата може да се наведат наместо фразата VALUES. INSERT со подпрашање ги додава редовите вратени од подпрашањето во табелата. Серверот на базата на податоци го обработува подпрашањето и ги вметнува сите вратени редови во табелата. Серверот не вметнува редови освен ако подпрашањето не ги избере.

  • subquery_1 - подпрашање што серверот го обработува на ист начин како приказот
  • subquery_2 е подпрашање што враќа редови вметнати во табелата. Списокот на ова подпрашање мора да има ист број на колони како и списокот со колони INSERT.

Подпрашањата практично не се користат во базата на податоци на MySQL.

Примери на sql барање INSERT INTO во MySQL база на податоци

Вметнуваме нови редови во базата на податоци MySQL користејќи ја командата INSERT INTRO.

Прв пример.

Вметнете нови редови во табела table_name.

INSERT INTO table_name VALUES ('2','145','1', 'име');

Ова значи дека сакаме да ги вметнеме вредностите 2,145,1, name во колоните табела_име на табелата. Бидејќи колоните не се наведени, вредностите се пополнуваат во сите колони од табелата.

Пример два.

Вметнете информации во бараните (наведени) колони од табелата име на табела.

INSERT INTO табела_име (клиент_клиент, клиент_подклиент, клиент_пошта) VALUES („име1“, „подиме 1“,“ [заштитена е-пошта]"), ("име 2", "потиме 2"," [заштитена е-пошта]'), ('име3','потиме3',(' [заштитена е-пошта]′);

Игор Серов специјално за страницата "".

Изјавата INSERT вметнува нови записи во табела. Во овој случај, вредностите на колоните може да бидат буквални константи или да бидат резултат на извршување на подпрашање. Во првиот случај, посебна изјава INSERT се користи за вметнување на секој ред; во вториот случај, ќе се вметнат онолку редови колку што се вратени од подпрашањето.

Синтаксата на операторот е како што следува:

    ВНЕСЕТЕ ВО [ (,...) ]

    (VALUES (,…))

  1. | (СТАНДИРАНТНИ ВРЕДНОСТИ)

Како што можете да видите од претставената синтакса, списокот на колони е опционален (ова е кажано квадратни заградиво описот на синтаксата). Доколку недостасува, списокот со вметнати вредности мора да биде комплетен, односно да обезбеди вредности за сите колони од табелата. Во овој случај, редоследот на вредностите мора да одговара на редоследот наведен во изјавата CREATE TABLE за табелата во која се вметнати редовите. Покрај тоа, овие вредности мора да бидат од ист тип на податоци како и колоните во кои се внесени. Како пример, размислете да вметнете ред во табелата Производ создаден со следнава изјава CREATE TABLE:

    КРЕИРАЈ ТАБЕЛА производ

    белег на производителот (1) НЕ НУЛЛ,

    модел varchar(4) НЕ NULL,

    тип varchar(7) НЕ NULL

Да претпоставиме дека сакате да го додадете моделот на компјутер 1157 од производителот B на оваа табела. Ова може да се направи со следнава изјава:

    Вметнете ВО Производот

    ВРЕДНОСТИ („Б“ , 1157 , „ПЦ“ );

Ако наведете список на колони, можете да го промените нивниот „природен“ редослед:

    Вметнете во производот (тип, модел, производител)

    ВРЕДНОСТИ („ПЦ“ , 1157 , „Б“);

Се чини дека ова е сосема непотребна карактеристика, што само го прави дизајнот понезгоден. Сепак, победува ако колоните имаат стандардни вредности. Размислете за следнава структура на табелата:

    КРЕИРАЈ ТАБЕЛА производ_Д

    белег на производителот (1) NULL,

    модел varchar(4) NULL,

    тип varchar (7 ) НЕ НУЛЛ ПОСТАНДЕН „ПЦ“

Забележете дека овде вредностите на сите колони имаат стандардни вредности (првите две се NULL, а последната колона е тип - PC). Сега би можеле да напишеме:

    Вметни ВО Product_D (модел, производител)

    VALUES (1157, "B");

Во овој случај, вредноста што недостасува при вметнување на ред ќе се замени со стандардната вредност - PC. Забележете дека ако на колоната не и се даде стандардна вредност во изјавата CREATE TABLE и е наведено ограничување NOT NULL за да се забрани употребата на NULL во таа колона од табелата, тогаш се претпоставува стандардната вредност на NULL.

Се поставува прашањето: дали е можно да не се наведе список на колони и, сепак, да се користат стандардните вредности? Одговорот е да. За да го направите ова, наместо експлицитно да ја наведете вредноста, користете го резервираниот збор DEFAULT:

    ВНЕСЕТЕ ВО Product_D

    ВРЕДНОСТИ („Б“ , 1158 , ЗАДОЛЖЕН ) ;

Бидејќи сите колони имаат стандардни вредности, за да вметнете ред со стандардни вредности, можете да напишете:

    ВНЕСЕТЕ ВО Product_D

    ВРЕДНОСТИ (СТАНДУВАЊЕ, ПОСТАВЕНИ, ПОСТАВНИ);

Меѓутоа, за овој случај постои посебна конструкција DEFAULT VALUES (види синтакса на операторот), со која горенаведениот оператор може да се препише во форма

    ВНЕСЕТЕ ВО Стандардните вредности на производот_D;

Забележете дека кога се вметнува ред во табела, се проверуваат сите ограничувања наметнати на оваа табела. Овие можат да бидат ограничувања на примарен клуч или уникатен индекс, ограничувања за ПРОВЕРУВАЊЕ или ограничувања за референцијален интегритет. Ако било прекршено ограничување, вметнувањето на редот ќе биде одбиено. Ајде сега да го разгледаме случајот со користење на подпрашање. Да претпоставиме дека треба да ги вметнеме во табелата Product_D сите редови од табелата за производи поврзани со моделите на персонални компјутери (тип = 'PC'). Бидејќи вредностите што ни се потребни се веќе во некоја табела, рачното генерирање на вметнати редови е, прво, неефикасно и, второ, може да дозволи влезни грешки. Користењето на подпрашање ги решава овие проблеми:

Употребата на симболот „*“ во подпрашањето е оправдана во овој случај, бидејќи редоследот на колоните е ист за двете табели. Ако тоа не беше случај, списокот со колони ќе треба да се примени или во изјавата INSERT, во подпрашањето или во двете, што ќе одговара на редоследот на колоните:

Овде, како и досега, можете да ги наведете не сите колони ако сакате да ги користите постојните стандардни вредности, на пример:

Во овој случај, колоната тип од табелата Product_D ќе биде заменета со стандардната вредност PC за сите вметнати редови.

Забележете дека кога се користи подпрашање што содржи предикат, ќе се вметнат само оние редови за кои вредноста на предикатот е ВИСТИНА (не НЕПОЗНАТ !). Со други зборови, ако колоната за тип во табелата Производ е NULLable, а таа вредност е присутна во голем број редови, тогаш тие редови нема да бидат вметнати во табелата Product_D.

Вештачката техника на користење на подпрашање што формира ред со клаузулата UNION ALL ви овозможува да го надминете ограничувањето за вметнување на еден ред во изјавата INSERT кога го користите конструкторот на редови во клаузулата VALUES. Значи, ако треба да вметнеме неколку редови користејќи една изјава INSERT, можеме да напишеме:

    ВНЕСЕТЕ ВО Product_D

    SELECT "B" AS производител, 1158 AS модел, тип "PC" AS

    УНИЈА СИТЕ

    SELECT "C" , 2190 , "Laptop"

    УНИЈА СИТЕ

    SELECT "D" , 3219 , "Printer" ;

Користењето на UNION ALL е подобро од UNION дури и ако е загарантирано отсуството на дупликат редови, бидејќи во овој случај нема да се изврши проверка за да се елиминираат дупликатите.

Треба да се забележи дека вметнувањето на повеќе торки со помош на конструкторот на редови е веќе имплементирано во Систем за управување со релациона база на податоци (DBMS), развиен од Microsoft Corporation.Структурен јазик за пребарување) е универзален компјутерски јазик што се користи за креирање, менување и манипулирање со податоци во релациони бази на податоци. SQL Server 2008. Со оглед на оваа можност, последното барање може да се преработи како:

    ВНЕСЕТЕ ВО ВРЕДНОСТИ Производ_Д

    („Б“, 1158, „ПЦ“),

    ("C", 2190, "лаптоп"),


Врв