68922

СУБД MySQL. Поля та їх типи

Лекция

Информатика, кибернетика и программирование

Програмне забезпечення яке управляє базою даних створює нові бази даних таблиці а також дозволяє використовувати вже створені об’єкти називається системою управління базою даних СУБД. Проте для написання нескладних сценаріїв роботи з базою даних приведеного матеріалу буде досить.

Украинкский

2014-09-27

77.5 KB

0 чел.

Лекція № 15

Тема: СУБД MySQL. Поля та їх типи.

План

  1.  Загальні положення
  2.  Базова термінологія
  3.  Поля та їх типи

База даних, таблиці запису

База даних — це сукупність зв'язаних двомірних таблиць, що містять певну інформацію. Програмне забезпечення, яке управляє базою даних (створює нові бази даних, таблиці, а також дозволяє використовувати вже створені об'єкти), називається системою управління базою даних (СУБД). Варто відразу ж обмовитися, що цей розділ не претендує на повноту інформації: СУБД MYSQL і мові SQL присвячені цілі томи, об'єми яких перевищують цю книгу. Проте для написання нескладних сценаріїв роботи з базою даних приведеного матеріалу буде досить.

Клієнтська і серверні частини MYSQL

Почнемо з клієнтської частини СУБД MYSQL. База даних в MYSQL — це звичайний каталог (зазвичай, це підкаталог каталога /var/lib/ mysql - в Linux або c:\mysql\data - в Windows). Таблиця фізично представляється файлами з розширеннями frm, MYD, MYI. Логічно — таблиця є сукупністю записів. У свою чергу, запис — це сукупність полий різного типу (тип полів може повторюватися). Ім'я бази даних унікальне в межах системи, таблиці — в межах бази даних, а поля — в межах таблиці.

Зручною програмою для проглядання структури бази даних є mysqlshow. Введіть наступну команду:

mysqlshow -p mysql

Ви побачите список таблиць, які знаходяться в базі даних mysql.

Програма mysqlshow може викликатися з додатковими параметрами.

Для самих же операцій з даними використовується програма mysql. Вона і є клієнтом сервера. У цій програмі можна використовувати ті ж опції, що і mysqlshow. Серед численних параметрів програма mysql має один дуже важливий параметр "-s". Я рекомендую вам завжди його використовувати. Цей параметр пригнічують більшість непотрібних повідомлень, що виводяться клієнтом. На повільних лініях зв'язку це повинно підвищити продуктивність. Та і спостерігати за всіма рамочками і непотрібними повідомленнями особливо не хочеться. Для підключення до серверу mysql необхідно запустити клієнт:

mysqlu rootp

де:

-u – опція вибору користувача

-p – опція вказування паролю

-h – опція вибору хоста.

Створити базу даних можна за допомогою програми mysqladmin. Природно, що використовувати цю програму може тільки адміністратор, наприклад:

mysqladmin -u admin -p create my_db

Як працює сервер SQL? Клієнт посилає запит, в якому він указує, яку інформацію він хоче отримати від сервера, або яку операцію з даними він хоче виконати, сервер посилає клієнтові відповідь, в якій указується, чи виконав сервер запит клієнта, і, якщо сервер виконав запит, результат запиту.

Мова SQL

Для опису запитів клієнта була розроблена ціла мова — SQL (Structured Query Language — структурована мова запитів). За допомогою запитів SQL ви можете:

Створювати бази даних і таблиці.

Додавати інформацію в таблиці.

Видаляти інформацію.

Модифікувати інформацію.

Отримувати потрібні вам дані.

Природно, користувач admin, крім того, що повинен існувати, повинен володіти відповідними правами. Кожен запит MYSQL повинен закінчуватися крапкою з комою. Якщо ви введете
SELECT * FROM test клієнт mysql чекатиме введення крапки з комою:

->

Базова термінологія

Якщо ви раніше працювали з якою-небудь СУБД (Система Управління Базою Даних), ви сміливо можете пропустити цей пункт — нічого нового для себе ви не прочитаєте. Але якщо ви стикаєтеся з СУБД вперше, без основних термінів вам не обійтися.

Поле (field) — це базовий елемент даних в БД. Поле має ім'я і тип. Наприклад, поле Tovar_No і позначаюча кількість товару, швидше за все, буде цілим. Докладніше про типи полий ми поговоримо трохи пізніше.

Запис (record) — це набір полий, що містять зв'язану інформацію. Наприклад, запис з полями C_No, C_Name і C_Address містить інформацію про клієнта — його номер, ім'я і адреса.

Таблиця (table) — це набір записів однієї структури полий. Якщо у нас є запис структури C_No, C_Name, C_Address, то всі записи в таблиці Clients матимуть такуюструктуру.

База даних (database) — це сукупність зв'язаних таблиць. Наприклад, в одній таблиці може зберігатися інформація про клієнта, а в іншій — інформація про замовлення, яке зробило клієнт, і т.д.

Індекс (index) — використовується для швидкого пошуку потрібного запису в базі даних. Зазвичай пошук проводиться по значенню одного поля або по значенню декілька полий.

Первинний індекс (index) — управляє порядком відображення записів в таблиці. Поле первинною індексу повинно бути унікальним, тобто в одній таблиці не повинні бути два поля (по якому будувався первинних індекс) з одним і тим же значенням. У нашій таблиці clients, очевидно, первинний індекс повинен будуватися по полю c_No — по номеру клієнта, який повинен бути унікальний.

Вторинний індекс (secondary index) — на відміну від первинного індексу, може будуватися по декількох полях і необов'язково повинен бути унікальним. Вторинні індекси використовуються для скріплення таблиць (про це ми поговоримо пізніше).

Запит (query) — оператор, що вибирає записи і поля з однієї або декількох таблиць. При цьому вибирані записи і поля повинні відповідати умові, заданій оператором.

Індекси також називаються ключами. Відповідно, первинний індекс називається первинним ключем, а вторинний — вторинним ключем.

Поля та їх типи

Ми вже знаємо, що база даних з погляду MYSQL (і деяких інших СУБД) — це звичайний каталог, що містить бінарні файли певного формату — таблиці. Таблиці складаються із записів, а записи, у свою чергу, складаються з полів. Поле має два атрибути — ім'я і тип.

Тип поля може бути:

Цілим.

Дійсним..

Строковим.

Бінарним.

Дата і час.

Перерахування і множини.

Можливі типи даних, діапазони і описи представлені у відповідних таблицях.

Цілочисельні типи:

Тип

Діапазон

TINYINT

-128... +127

SMALLINT

-32768... +32767

MEDIUMINT

-8 388 608... +8 388 607

int

-2 147 483 648... -2 147 483 647

BIGINT

-9 223 372 036 854 775 808 ... ±9 223 372 036 854 775 807

Дійсні типи записуються у вигляді:

ТИП (ДОВЖИНА, ЗНАКИ) [UNSIGNED]

ДОВЖИНА — це кількість знакомісць, в яких буде розміщено все число при його передачі, а ЗНАКИ — це кількість знаків після десяткової крапки, які враховуватимуться. Якщо вказаний модифікатор UNSIGNED, знак числа враховуватися не буде.

Дійсні типи

Тип

Опис

FLOAT

Невелика точність

DOUBLE

Подвійна точність

REAL

Те ж, що і DOUBLE

DECIMAL

Дробове число, зберігається у вигляді рядка

NUMERIC

Те ж, що і DECIMAL

Будь-який рядок — це масив символів. При пошуку за допомогою оператора SELECT не враховується регістр символів: рядки "HELLO" і "HElLo" вважаються однаковими.

Можна набудувати базу даних на те, що автоматичне перекодувало символів — в цьому випадку в базі даних рядка зберігатимуться в одному кодуванні, а виводитися — в іншій.

В більшості випадків вас влаштує тип VARCHAR або просто CHAR, що дозволяє зберігати рядки, що містять до 255 символів. У дужках після типу указується довжина рядка:

VARCHAR(20);

CHAR(20);

Якщо ж 255 символів для вашого завдання — це дуже мало, можна використовувати інші типи, наприклад, TEXT.

Символьні типи

Тип

Опис

TINYTEXT

Максимальна довжина рядка — 255 символів

TEXT

Максимальна довжина рядка — 65535 символів (64 Кб)

MEDIUMTEXT

Максимальна довжина рядка — 16 777 215 символів

LONGTEXT

Максимальна довжина рядка — 4 294 967 295 символів

Бінарні дані також можна використовувати для зберігання тексту, але при пошуку враховуватиметься регістр символів. До того ж, будь-який текстовий тип можна перетворити на бінарний, вказавши модифікатор BINARY:

VARCHAR(20) BINARY;

Бінарні типи

Тип

Опис

TINYBLOB

Максимум

— 255 символів

BLOB

Максимум

— 65535 символів

MEDIUMBLOB

Максимум

- 16 777 215 символів

LONGBLOB

Максимум

— 4 294 967 295 символів

Примітка.

Бінарні дані не перекодують на льоту, якщо встановлена та, що перекодувала символів.

Дата та час

Тип

Опис

DATE

Дата у форматі ГГГГ-ММ-ДД

TIME

Час у форматі 44:MM:CC

TIMESTAMP

Дата і час у форматі timestamp, проте при відображенні воно виводиться у вигляді ГГГГММДДЧЧММСС

DATETIME

Дата і час у форматі ГГГГ-ММ-ДД 44:MM:CC

Інші типи даних MYSQL розглядати ми не будемо, оскільки їх використання в PHP недоцільно.


 

А также другие работы, которые могут Вас заинтересовать

16961. Перевод ЭБ в состояние холодный останов 83 KB
  Тема: Перевод ЭБ в состояние холодный останов. План лекции Введение Исходное состояние реакторной установки перед подготовкой к пуску после перегрузки топлива. Подготовительные операции по переводу реакторной установки в €œхолодный останов€.
16962. Імпорт таблиць. Встановлення звязків між таблицями 54 KB
  Практична робота №1 Тема: Імпорт таблиць. Встановлення звязків між таблицями. Мета: навчитися імпортувати таблиці MS Excel в таблиці Ms Access а також навчитися звязувати таблиці. Устаткування: ПК. Операційна система Windows СУБД Ms Access. Правила ТБ. Методичні реком...
16963. Імпорт таблиць. Встановлення звязків між таблицями 423.5 KB
  Практична робота №1 Тема: Імпорт таблиць. Встановлення звязків між таблицями. Мета: навчитися імпортувати таблиці MS Excel в таблиці Ms Access а також навчитися звязувати таблиці. Устаткування: ПК. Операційна система Windows СУБД Ms Access. Правила ТБ. Методичні реко
16964. Пошук даних 137 KB
  Практична робота №2 Тема: Пошук даних. Мета: Навчитися будувати динамічні набори записів користуватися вбудованою функцією Построитель выражений. Устаткування: ПК. Операційна система Windows СУБД Ms Access. Правила ТБ. Методичні рекомендації. Інд
16965. Динамічні набори записів 105.5 KB
  Практична робота №3 Тема: Пошук даних. Мета: Навчитися будувати динамічні набори записів користуватися вбудованою функцією Построитель выражений. Устаткування: ПК. Операційна система Windows СУБД Ms Access. Створити групові запити які визначають для ринк...
16966. Технічне обслуговування і ремонт рухомого складу. Організація технічного обслуговування та ремонту 21.02 KB
  В процесі експлуатації пристроїв параметри технічних складових змінюються від початкових. Основною причиною зносу є супроводжуючі експлуатаційний знос, втрати міцнісних якостей, порушення звязків та інше. Великий вплив на інтенсивність змінних параметрів надає режим роботи.
16967. Використовування умов для відбору даних. Сортування даних, що виводяться 80 KB
  Практична робота №9 Тема: Використовування умов для відбору даних. Сортування даних що виводяться. Мета: Навчитися використовувати в запитах вираз Where а також упорядковувати дані з використанням ключового слова Order by. Обладнання: персональний комп'ютер з встано
16968. Операції порівняння і логічні операції в SQL 94 KB
  Практична робота №10 Тема: Операції порівняння і логічні операції в SQL. Мета: Ознайомитися з основними логічними операціями і операціями порівняння мови SQL. Закріпити одержані теоретичні відомості виконуючи запити різного рівня складності. Обладнання: персональни
16969. Операції заперечення і арифметичні операції в SQL 71.5 KB
  Практична робота №11 Тема: Операції заперечення і арифметичні операції в SQL. Мета: Ознайомитися з основними операціями заперечення і арифметичними операціями мови SQL. Закріпити одержані теоретичні відомості виконуючи запити різного рівня складності. Обладнання: пе