Мова запитів SQL
РефератМова запитів SQLМова запитівSQL є стандартною мовою для роботи з реляційними БД і в даний час підтримується всіма продуктами представленими на ринку. Її було розроблено в компанії ІВМ на початку 70-х років. Поточний стандарт цієї мови, на який ми будемо посилатися, має назву SQL/92.Створення будь-якої таблиці передбачає визначення типу даних. Тип даних стовпчика визначає тип інформації, яка в ньому зберігається. Для того щоб визначити тип стовпчика необхідно після імені стовпчика вказати одне з ключових слів, яким позначається тип. Назви типів є регістрово незалежними. Після визначення тип стовпчика буде зберігатися як його характеристика, яку змінити неможна.Розглянемо всі стандартні типи даних, які можна використовувати.Тип даних: цілі числаЦілі числа складають великий клас даних, які можна зберігати в БД.Тип даних: числа з плаваючою комоюПроблеми, які виникають з дійсними числами, це – округлення як при використанні у виразах, так і при виведенні результата. При цьому в памяті їх представлення не змінюється. Виникнення похибки. Їх деколи називають наближеними типами числових даних, адже ці значення можна представити лише з певною точністю. Тому слід уникати виконання операції порівняння (наприклад у конструкції WHERE) над даними, які належать наближеному типу. До наближених типів належать:Тип REALРозмір: 2 байти; Діапазон: -3,4Е-38 до +3,4Е+38Точність: до 7 цифер.Тип FLOAT[(n)] Розмір: 8 байт;Діапазон: -1,7Е-308 до +1,7Е+308Точність: до 15 цифер.Якщо вказати значення n типу float в інтервалі від 1 до 7, значення займатиме 4 байти, а від 8 до 15 – 8 байт. Те саме відбудеться якщо явно не вказати точність. За замовчуванням – точність 15.Тип DECIMAL[(p[, s])] та NUMERIC[(p[, s])]Ці типи, на відміну від двох попередніх, дозволяють зберігати десяткові числа точно, без змін. Допустимий діапазон значень визначається значеннями параметрами p і s і змінюється від (-10Е-38) до (+10Е+38).Розмір: 2 – 17 байт.Параметр р визначає точність, з якою можна зберігати десяткове число (тобто загальну кількість цифр, що зберігаються). Параметр s визначає кількість цифр після десяткової крапки (воно повинно бути менше або рівне р). Якщо ці параметри не вказати явно, їм будуть присвоєні стандартні значення (р=18, s=0).Текстові типи данихСтандарт Unicode, що підтримується у більшості сучасних СКБД, був розроблений з метою подолання обмежень, властивих стандартним наборам символів. В цьому стандарті для збереження символів використовується 2 байти. Їх достатньо для кодування майже всіх символів, що використовуються в світі. Наприклад, загальний набір китайських ієрогліфів складає 21000 з 65536 можливих у Юнікод символів. Оскільки для збереження символьної інформації використовується вдвічі більше місця в памяті, використовується декілька типів символьної інформації, до складу назв яких входить слово CHAR.Тип CHAR(n)Діапазон: до 8000 ANSI-символівРозмір: 1 байт для кожного символа.Розмір: число в дужках, яке визначає кількість байт, що виділяються для кожного значення у стовпчику.Максимум: 15 символів. (значення за замовчуванням).Нприклад, якщо тип стовпчика визначено CHAR(15), а вводите менше 15 символів, решта позицій заповнюються пропусками. Тобто все рівно виділятиметься 15 байт.Тип NCHARПрактично ті самі характеристики, що і попередник. Єдина відмінність між ними полягає в тому, що дані цього типу можуть містити не більше 4000 символів Unicode.Тип VARCHAR (varying char)Діапазон: до 8000 символів.Розмір памяті змінюється в залежності від кількості введених символів у елементах стовпчика.Наприклад, ви визначили тип стовпчика VARCHAR(15), але ввели менше символів, в цьому випадку пропускаи не будуть додаватися, тобто подібний елемент займатиме менше ніж 15 байт. Можна зекономити місце на диску....