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 недоцільно.


 

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

30547. Схема ЭЦП построенная на симметричной криптосистеме, схема ЭЦП построенная на асимметричной криптосистеме. Доверие к открытому ключу и цифровые сертификаты (основные определения, стандарт X.509, сравнение версий сертификатов стандарта X.509, классы сертиф 67.22 KB
  Доверие к открытому ключу и цифровые сертификаты основные определения стандарт X. Доверие к открытому ключу и цифровые сертификатыЦентральным вопросом схемы открытого распределения ключей является вопрос доверия к полученному открытому ключу партнера который в процессе передачи или хранения может быть модифицирован или подменен.В системах где отсутствует возможность предварительного личного контакта партнеров необходимо использовать цифровые сертификаты выданные и заверенные ЭЦП доверенного посредника удостоверяющего или...
30548. Криптографической системы с открытым ключом 25.48 KB
  Основные компоненты PKI Удостоверяющий центр Сертификат открытого ключа Регистрационный центр Репозиторий Архив сертификатов Конечные пользователи Основные задачи Основные задачи системы информационной безопасности которые решает инфраструктура управления открытыми ключами: обеспечение конфиденциальности информации; обеспечение целостности информации; обеспечение аутентификации пользователей и ресурсов к которым обращаются пользователи; обеспечение возможности подтверждения совершенных пользователями действий с...
30549. Сетевая модель доверительных отношений 189.15 KB
  Вышестоящий центр может передать подчиненному C часть своих функций по выпуску сертификатов. Оконечный центр C предназначен для выдачи сертификатов пользователям PKI в то время как промежуточный C рекомендуется использовать только для выдачи сертификатов подчиненным ему центрам C. В модели P2P существует два метода установления доверительных отношений: с помощью списков сертификатов заслуживающих доверия Сertificte Trust List CTL и кросссертификатов.inf можно устанавливать параметры регулируемых доверительных отношений для сертификатов C...
30550. Классификация демаскирующих признаков и их характеристики 39 KB
  Доска Классификация признаков Демаскирующие признаки характеристик объекта: видовые признаки; признаки сигналов; признаки веществ. Выступление Признаки позволяющие отличить один объект от другого называются демаскирующими. Демаскирующие признаки объекта описывают его различные состояния характеристики и свойства. В общем случае демаскирующие признаки объектов разделяются на опознавательные признаки и признаки деятельности.
30551. Технические каналы утечки информации, классификация и характеристика 26.65 KB
  Для исключения утечки персональных данных за счет побочных электромагнитных излучений и наводок в информационных системах 1 класса могут применяться следующие методы и способы защиты информации: использование технических средств в защищенном исполнении; использование средств защиты информации прошедших в установленном порядке процедуру оценки соответствия; размещение объектов защиты в соответствии с предписанием на эксплуатацию; размещение понижающих трансформаторных подстанций электропитания и контуров заземления; обеспечение...
30552. Оптические каналы утечки информации 67.52 KB
  Отраженный от объекта свет содержит информацию о его внешнем виде видовых признаках а излучаемый объектом свет о параметрах излучений признаках сигналов. Длина протяженность канала утечки зависит от мощности света от объекта свойств среды распространения и чувствительности фотоприемника. Способы и средства противодействия наблюдению в оптическом диапазоне В интересах защиты информации об объекте его демаскирующих признаков необходимо уменьшать контраст объект фон снижать яркость объекта и не допускать наблюдателя близко к объекту.
30553. Структура оптического канала утечки информации 87.73 KB
  Выступление: Оптические каналы утечки информации Структура оптического канала утечки информации Объект наблюдения в оптическом канале утечки информации является одновременно источником информации и источником сигнала потому что световые лучи несущие информацию о видовых признаках объекта представляют собой отраженные объектом лучи внешнего источника или его собственные излучения. Излучаемый свет содержит информацию об уровне и спектральном составе источников видимого света а в инфракрасном диапазоне по характеристикам излучений можно также...
30554. Радиоэлектронные каналы утечки информации 18.65 KB
  Радиоэлектронный канал относится к наиболее информативным каналам утечки в силу следующих его особенностей: независимость функционирования канала от времени суток и года существенно меньшая зависимость его параметров по сравнению с другими каналами от метеоусловий; высокая достоверность добываемой информации особенно при перехвате ее в функциональных каналах связи за исключением случаев дезинформации; большой объем добываемой информации; оперативность получения информации вплоть до реального масштаба времени; скрытность перехвата...
30555. Акустические каналы утечки информации 701.6 KB
  Часть III дополнительно Оценка громкости звука Уровень звука дБ Источник звука Очень тихий 0 10 Усредненный порог чувствительности уха Тихий шепот 1. Порог слышимости соответствует мощности звука 1012 Вт или звуковому давлению на барабанную перепонку уха человека 2105 Па Абсолютный порог минимальное значение воздействующего раздражителя при котором возникает ощущение. Под воздействием звука Рак = 70 дБ кирпичная стена толщиной 05 м совершает вибрационные колебания с ускорением а≈3·105g.