ПредишенСледващото

ID (име обект) - дума, състояща се от букви, цифри и долна черта (_), започващи с буква или символ (_). Най-INFORMIX 4GL не се различава малки и големи букви. Затова i_Un1023Tt и I_UN1023TT - със същото име.
не по-дълъг от 10 Името на базата данни.
Имената на други обекти SQL - маси, колони, изглед (псевдо). Синоними - не по-дълъг от 18 години.

описание на данни оператори се използват за описване на (създаване), промяна на описанието и унищожаване на обекти в базата данни.
В SQL, следните типове обекти:


Всеки обект има свое име - идентификатор. Всеки обект има собственик - т.е. потребителя, който го е създал. Името на обекта може да се усъвършенства, като се използва името на своя собственик (собственик-име) в тази форма: moshkow.table1
По-долу са примери за използването на описание на данни оператори. Пълният синтаксис може да се намери в "ръководство за бърза справка за 4GL", или в "справочник INFORMIX-4GL".

Създаване на база данни.


По всяко време можете да имате достъп до обектите, само един - на ток (ток) - база данни. изявление БАЗА ДАННИ прави нова база ток, затваряне на достъпа до обектите, предхождащи текущата база данни. CLOSE оператор БАЗА ДАННИ просто затваря текущата база данни.


И създава маса kadry CEH, съдържащи различни видове колони.


В вече съществуващата масата, ние можем да променим вида на колоната, се добавя нов, разруши стария.


Промяна на резултатите от таблица структура във физическа трансформация на данните в него. Ако промените вида на колоната, данните в него са превърнати в новия тип, а ако това не е възможно, тогава операторът ALTER "пада" с кода на грешката и таблицата остава непроменено състояние.
Вижте - "псевдо" маса на базата на съществуващи таблици.


Се държи точно като истински маса, единственото място на диска под него не е оттеглена, тъй като данните, които стоят зад него всъщност се съхраняват в таблица, на която се основава на гледката.
Index - допълнителна структура към колоните в таблицата, трябва да се ускори търсенето на стойности в колона.


Ние физически да сортирате таблицата в зависимост от индекса. В струпани маса SELECT е по-бързо.


Имената на колони могат да бъдат еднакви в различните таблици. Ако в който и да е SQL изявление се споменава две колони с едни и същи имена, те трябва да се посочи имена на таблици, които ги съдържат. Преди името на всеки обект може да бъде (и понякога е необходимо) да се посочи името на собственика (собствениците си име) - вход с потребителско име, който е създал (Създаване) на този имот.


Синоним за име на таблица се използва за краткост.


Сега навсякъде може (но не задължително) вместо името, използвано petrow.sostoqnie_postow t1.
Базата данни може да има регистър на системните транзакция (лог).


Ако няма регистър на транзакциите на цялата база данни, отделните таблици в базата данни със същата цел, които можете да създадете одитна пътека.


Разбира се, че който и да е създаден в обект на базата данни може да бъде унищожена. Ние трябва само да се помни, че изявленията на дефиниране на данни не се прехвърлят обратно, така че ако изтриете таблица или база данни, трябва да знаете, че това е завинаги.


Ако вашият оператор се опитва да пише в един ред блок друг потребител, операторът е "изхвърлени". Можете да зададете режим за програмата "Изчакайте за деблокиране на линиите."

Базата данни, която няма регистър система не може да се извърши сделката и да се възстанови до текущата отправна точка.
Заради всички добри неща, трябва да плащат, наличието на дневника в базата данни предизвиква значително повишение на режийни и забавяне запитвания. В допълнение, когато се работи със системата за база данни влезете бързо, "набъбва". За да го последва и да се почистват периодично.
Посочете новото дневника база система.


Възстановяване на разрушена (например поради хардуерен срив) база данни, както следва:
В среда UNIX


Ако по време на програма за сделка "срина" на Informix автоматично направи разстояния.


В резултат на списъците ще бъдат изтрити служители четвъртия семинар "Смит", "Смит", "Сидоров" и т.н. Както можете да видите, Informix осигурява националистически лидери погълнати от мощни инструменти за реализация на идеите си.
И този оператор ще унищожи всички редове в kadry на маса, която е собственост на moshkow, но не и самата таблица

Най-простата форма на SELECT изявление.


Третият пример избира имената на служителите на рамки на масата, и имената на магазините, в които работят, от CEH маса.


Ако искаме да чрез вкарване на ред в серийния тип колона автоматично влезе в следващия брояч стойност трябва да бъде поставена в тази графа е постоянна 0. Ако не всички колони вмъква ред се вписват стойност (както се прави в третия отчет), празните колони са пълни с NULL ,


В таблицата в магазините CEH номер 3,4,5, както и в обръщането и леене на първите четири знака в кода на отдел ще бъде заменен с областта на подниз nameceh на един и същи ред.

Клаузата за които може да се намират в някое от обстоятелствата, DELETE, UPDATE, SELECT, когато трябва да се определят условията за линиите, за да бъдат обработени (съответно, унищожи, промяна или изберете). Да разгледаме структурата и примери за използването на клаузата за къде.
Клаузата за КЪДЕ писмено логическо условие, което съединение се получава чрез логически оператори AND, OR и NOT за елементарни сравнения на тип:


както и елементарни сравнения на специален вид:


Можете да разберете дали символният низ съвпада с конкретен модел или не. За това сравнение, двете операции се използват от шаблона - както и мачове.


КАТО е прост шаблон. Тя използва само два заместващи (%) е обозначение за номер от символи (_) означава точно един символ. Всички други знаци в модела стоят сами за себе си. Ако искаме да се включат в шаблон% или _ премахването им специално значение, трябва да се постави пред тях ESC символа (по подразбиране (\)).
Да кажем, че ние трябва да изберете от tab8 на масата всички редове, в която колона характер, съдържа string1 "+" символ и предпоследната буква в него - "Y". декларация образец ще изглежда така:


МАЧОВЕ използва специални символи като модел: *. [,] ^, -.


Ако искате да използвате специални символи като нормална, използвайте избяга-Чар. Ако бягство-Чар = "", а след това \? Той представлява просто символ. \ * Обозначава символ * \\ представлява \ характер. Но кавичките ( ") в рамките на шаблона трябва да определят две кавички (" ").
Избор на всички клиентски данни в името на фирмата, че второто писмо не е в диапазона от G до L, а третото писмо век. (Между другото, кодовете на руски букви на най-добрите отиват направо, но за разлика от латинските букви, руски не е сортиран по азбучен ред.)


Избор на всички клиентски данни в името на които има въпросителен знак.


Този пример използва ESC-символ "I", за да отмените spetssmysla символ "?".


условията за използване с подзаявка.


Тук подзаявка връща една стойност - максималната стойност на заплатите. Външният SELECT изявление намира имената на притежателите им.


Тук поиска изходи данни за водачите, които са получили финансиране и работа в Урал.


Това искане (с помощта на корелативна подзаявка) съдържа списък на всички продукти, чиято обща цена е не по-малко от два пъти минималната цена на продуктите, изброени в същия ред.
Можете да се свържете с произволен брой на горните условия, като използва логическите оператори не, както и, OR.

изявление разтоварят нулира данните от таблица във файл в изгледа на печат. Всеки ред се превръща в отделен профил, стойността на колоните са разделени от "|".
След съставяне на акта


в kadry19.unl файл може да бъде открит, както следва:

Оферти В, В TEMP, ОТ.


Можете да избирате от различни таблици. В този случай ние приемаме всички възможни комбинации от редове от първата таблица с втория. Да приемем, че TAB1 на маса 6 реда и tab2 - 7 линии. Резултатът от следния пример - таблица, съдържаща три колони, и 7 * 6 = 42 реда.


Ние няма да се уточни къде точно е поставен в резултат на масата. Но това може да се използва по различни начини: тя може да се дестилира (В TEMP) в временна таблица, тя може да бъде дадена на обработката на друг агент (ако вземането на проби се извършва под-заявка), можете да създадете курсора ( "буфер" с указател към текущия ред) за него, и можете то (в) поставя проста програмиран променлива (ако не и повече от един ред е избран).
Избрани линии може да се поръча във възходящ (низходящ ред) стойности в колоната (колони)


В ORDER BY клауза вместо името на колона, можете да посочите серийния му номер в списъка за избор (изберете списък). Горепосочените изявления са еквивалентни.
Сложете стойностите на колоните в променливите: (Както lname се използва като име на променлива, и като име на колона, името на колона се предшества от знака (@)

Към избран ред може да се прилага общата функции COUNT (*) - брой, MAX (колона) и минути (колона) - максималната и минималната стойност в колоната, SUM (колона) - сума от всички стойности в колона, AVG (колона) - средната стойност колона.
Сложете в променлив брой Броят редове в таблицата с поръчки, в който колоната е customer_num 101:


Пример съединения се използват таблици. Разположен заплата Средната стойност над 300 (zarplata колона принадлежи към една от масите), при условие съвпадение dolvnost колони в двете таблици.


Вземете броя на служителите и тяхната средна работна заплата за всяка позиция на персонала.


Еквивалентно пост.
КАТО клауза налага допълнителни условия на групата.


Тази заявка връща броя на поръчките, а средната TOTAL_PRICE в приложения за всички поръчки с най-малко две приложения.

маси външна връзка.


Запитване намира имената на компании и броя на поръчките, които са изпратени. Ако компанията не изпрати поръчки, името й все още ще бъде избран и номера на поръчката, в този ред ще бъде равна на празно. (И ако изпълните заявката, без да използвате външната, имената на тези компании няма да съществуват в извадката.)

Операторите манипулират данни - най-мощният компонент на SQL.
Следващият пример елиминира kadry същия ред в таблицата.


Следващият пример променя информацията в редовете на ключовата стойност:


Същата операция може да се направи с едно изявление UPDATE използване подзаявка:


Пример променя информация в линии на стойност на ключа, когато условията. наложено на мене ред:

Свързани статии

Подкрепете проекта - споделете линка, благодаря!