ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 18.05.2024

Просмотров: 539

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

1. Історія php

2. Можливості php

3. Установка і настройка по

3.1. Установка Apache 1.3.29 під Windows xp

3.2. Установка php 4.3.4 під Windows

1. Основний синтаксис

1.1 Розділення інструкцій

1.2 Коментарі

2. Змінні, константи і оператори

2.3 Константи

2.4 Оператори

1. Основний синтаксис

1.1 Розділення інструкцій

1.2 Коментарі

2. Змінні, константи і оператори

2.3 Константи

2.4 Оператори

1.2 Оператор else

1.3 Оператор elseif

1.4 Оператор switch

2 Цикли

3 Оператори передачі управління

4 Оператори включення

4. Лекція

2 Типи серверів

3 Протокол http і способи передачі даних на сервер

4 Методи

5 Використання html-форм для передачі даних на сервер

5. Лекція:

1 Функції, створені користувачем

2 Аргументи функцій

3 Списки аргументів змінної довжини

4 Статичні змінні

5 Значення, що повертаються

6 Повернення посилання

7 Внутрішні (убудовані) функції

6. Лекція:

2 Ініціалізація змінних

4 Спадкування extends

5 Оператор ::

6 Оператор parent

7. Лекція:

1 Масиви

2 Операції з масивами

3 Функції обробки масивів

4 Сортування масивів

5 Виділення підмасива

8. Лекція:

2 Запис даних у файл

3 Читання даних з файлу

4 Перевірка існування файлу

5 Видалення файлу

6 Завантаження файлу на сервер

10. Лекція:

1 Бази даних: основні поняття

2 Ключі

3 Індексація

4 Субд MySql

5 Язик sql

6 Основні оператори язика sql

6.1 Оператор create table

6.2 Оператор drop table

6.3 Оператор alter table

7 Оператор select

8 Оператор insert

9 Оператор update

10 Оператор delete

11. Лекція:

1 Побудова інтерфейсу для додавання інформації

2 Запис даних в базу даних

3 Відображення даних, що зберігаються в MySql

1 Побудова інтерфейсу для додавання інформації

2 Запис даних в базу даних

3 Відображення даних, що зберігаються в MySql

12. Лекція:

2 Механізм сесій

3 Настройка сесій

4 Робота з сесіями

4.1 Створення сесії

4.2 Реєстрація змінних сесії

4.3 Видалення змінних сесії

5 Безпека

Всі дані про користувачів MySQL зберігає в таблиці user в спеціальній базі даних mysql, доступ до якої має тільки адміністратор серверу. Тому, щоб змінити який-небудь пароль, потрібно змінити цю таблицю. Пароль задається за допомогою функції PASSWORD, яка кодує введені дані. Окрім зміни пароля адміністратора, потрібно ще видалити всіх користувачів, що не мають логіна (команда DELETE ). Команда Flush Privileges примушує вступити в дію зміни, що відбулися в системній базі даних (mysql).

Тепер створимо базу даних, з якою працюватимемо (ми все ще працюємо як адміністратор серверу):

mysql>create database book;

Якомога помітити, всі команди в MySQL закінчуються крапкою з комою. Якщо ви забули поставити цей знак, то видається запрошення його поставити до тих пір, поки це не буде зроблено:

mysql> show tables

->

->

Тепер остання дія – створимо простого користувача, надамо йому доступ до створеної бази даних, і почнемо працювати.

mysql> GRANT ALL PRIVILEGES ON book.* TO vasia@localhost IDENTIFIED '123';

Команда GRANT наділює користувача vasia, що зайшов на сервер з цієї ж машини (з localhost) і що ідентифікується паролем "123", певними правами (в даному випадку всіма) на всі таблиці бази даних book. Тепер ми можемо вийти і зайти як користувач vasia з відповідним паролем:

shell>mysql -u vasia -p

Enter password: ***

Welcome to MySQL monitor!...

mysql>

Якщо ви збираєтеся користуватися базою даних на чужому сервері, то його адміністратор виконає всі описані вище дії за вас, тобто все набудує і створить користувача і базу даних. В наступному розділі описані команди язика SQL, які стануть в нагоді для роботи з даними, що зберігаються в СУБД MySQL.


5 Язик sql

Отже, ми у загальних рисах познайомилися з основними поняттями теорії баз даних, встановили і налаштували для роботи MySQL. Тепер самий час навчитися маніпулювати даними, що зберігаються в базах даних. Для цього нам знадобиться SQL – структурований язик запитів. Цей язик дає можливість створювати, редагувати і видаляти інформацію, що зберігається в базах даних, створювати нові бази даних і багато що інше. SQL є стандартом ANSI (Американський національний інститут стандартів) і ISO (Міжнародна організація по стандартизації).

Трохи історії

Перший міжнародний стандарт язика SQL був прийнятий в 1989 р., його часто називають SQL/89. Серед недоліків цього стандарту виділяють в першу чергу те, що багато важливих властивостей він встановлював як визначувані в реалізації. Звідси відбулася безліч розбіжностей в реалізаціях язика різними виробниками. Крім того, висловлювалися претензії з приводу відсутності в цьому стандарті згадок про практичні аспекти язика, таких як його вбудовування в язик програмування Сі.

Наступний міжнародний стандарт язика SQL був прийнятий в кінці 1992 р. І став називатися SQL/92. Він вийшов набагато більш точним і повним, ніж SQL/89, хоча і не був позбавлений недоліків. В даний час більшість систем майже повністю реалізує цей стандарт. Проте, як відомо, прогрес не зупиниш, і в 1999 році з'явився новий стандарт SQL:1999, також відомий як SQL3. SQL3 характеризується як "об'єктно-орієнтований SQL " і є основою декількох об'єктно-реляційних систем управління базами даних (наприклад, ORACLE8 компанії Oracle, Universal Server компанії Informix і DB2 Universal Database компанії IBM). Цей стандарт є не просто злиттям SQL-92 і об'єктної технології. Він містить ряд розширень традиційного SQL, а сам документ складений так, щоб добитися більш ефективної роботи в області стандартизації в майбутньому.

Якщо говорити про MySQL, то вона відповідає початковому рівню SQL92, містить декілька розширень цього стандарту і прагне повної підтримки стандарту ANSI SQL99, але без збитку для швидкості і якості коду.

Далі, кажучи про основи язика SQL, дотримуватимемося його реалізації в СУБД MySQL.

6 Основні оператори язика sql

Функції будь-якої СУБД включають:

  • створення, видалення, зміна бази даних (БД);

  • додавання, зміна, видалення, призначення прав користувача;

  • внесення, видалення і зміна даних в БД (таблиць і записів);

  • вибірку даних з БД.


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

Перш ніж що-небудь робити з даними, потрібно створити таблиці, в яких ці дані зберігатимуться, навчитися змінювати структуру цих таблиць і видаляти їх, якщо буде потрібно. Для цього в язиці SQL існують оператори CREATE TABLE, ALTER TABLE і DROP TABLE .

6.1 Оператор create table

Оператор CREATE TABLE створює таблицю із заданим ім'ям в поточній базі даних . Правила для допустимих імен таблиці приведені в документації. Якщо немає активної поточної бази даних або вказана таблиця вже існує, то виникає помилка виконання команди.

У версії MySQL 3.22 і більш пізніх ім'я таблиці може бути вказано як ім’я_бази_даних.ім’я_таблиці. Ця форма запису працює незалежно від того, чи є вказана база даних поточною.

У версії MySQL 3.23 при створенні таблиці можна використовувати ключове слово TEMPORARY. Тимчасова таблиця автоматично віддаляється після закінчення з'єднання, а її ім'я дійсне тільки протягом даного з'єднання. Це означає, що в двох різних з'єднаннях можуть використовуватися тимчасові таблиці з однаковими іменами без конфлікту один з одним або з існуючою таблицею з тим же ім'ям (існуюча таблиця прихована, поки не видалена тимчасова таблиця). У версії MySQL 4.0.2 для створення тимчасових таблиць необхідно мати привілеї CREATE TEMPORARY TABLES.

У версії MySQL 3.23 і більш пізніх можна використовувати ключові слова IF NOT EXISTS для того, щоб не виникала помилка, якщо вказана таблиця вже існує. Слід враховувати, що при цьому ідентичність структур цих таблиць не перевіряється.

Кожна таблиця представлена набором певних файлів в директорії бази даних.

Синтаксис

CREATE [TEMPORARY] TABLE [IF NOT EXISTS] ім’я_таблиці [(визначення_колонки...)] [опції_таблиці] [select_вираз]

У виразі визначення_колонки перераховують, які стовпці повинні бути створені в таблиці. Кожний стовпець таблиці може бути порожнім (NULL), мати значення по замовчанню, бути ключовим або автоінкрементним. Крім того, для кожного стовпця обов'язково указується тип даних, які будуть в ньому зберігатися. Якщо не указується ні NULL, ні NOT NULL, то стовпець інтерпретується так, як ніби вказане NULL. Якщо поле позначають як автоінкрементне (AUTO_INCREMENT), то його значення автоматично збільшується на одиницю кожного разу, коли відбувається додавання даних в таблицю і в це поле записується порожнє значення (NULL, тобто нічого не записується) або 0. Автоінкремент в таблиці може бути тільки один, і при цьому він обов'язково повинен бути проіндексирований. Послідовність AUTO_INCREMENT починається з 1. Наявність автоінкременту є однією з особливостей MySQL. Формально опис стовпця (визначення_колонки) виглядає так:


ім’я_колонки тип [NOT NULL | NULL]

[DEFAULT значение_по_умолчанию]

[AUTO_INCREMENT][PRIMARY KEY]

[reference_definition]

Тип стовпця (тип у виразі визначення_колонки) може бути одним з наступних:

  • цілий: INT[(length)] [UNSIGNED] [ZEROFILL]

  • дійсний: REAL[(length,decimals)] [UNSIGNED] [ZEROFILL]

  • символьний: CHAR(length) [BINARY] і VARCHAR(length) [BINARY]

  • дата і час: DATE і TIME

  • для роботи з великими об'єктами: BLOB

  • текстовий: TEXT

  • множина: ENUM(value1,value2,value3...) і SET(value1,value2,value3...)

Повний список типів дивитеся в документації MySQL.

Замість переліку стовпців і їх властивостей в визначенні_колонки можна задавати списки ключових і індексних полів, обмеження і перевірки:

PRIMARY KEY (ім’я_індексованої_колонки ...)

або

KEY [ім’я_індекса] (ім’я_індексованої_колонки...)

або

INDEX [ім’я_індекса] (ім’я_індексованої_колонки...)

або

UNIQUE [INDEX] [ім’я_індекса] (ім’я_індексованої_колонки...)

або

FULLTEXT [INDEX] [ім’я_індекса] (ім’я_індексованої_колонки...)

або

[CONSTRAINT symbol] FOREIGN KEY [ім’я_індекса] (ім’я_індексованої_колонки...) [reference_definition]

або

CHECK (expr)

При завданні всіх цих елементів вказується список полів (стовпців), які входитимуть в індекс, ключ або обмеження, ім’я_індексованої_колонки записується таким чином:

ім’я_колонки [(довжина_індекса)]

FOREIGN KEY, CHECK і REFERENCES насправді нічого не роблять в MySQL. Вони додані тільки для сумісності з іншими SQL-серверами. Тому на них ми зупинятися не будемо.

Крім всього перерахованого, при створенні таблиці можна вказати деякі її властивості (опції_таблиці), наприклад такі:

тип таблиці: TYPE = {BDB | HEAP | ISAM | InnoDB | MERGE | MRG_MYISAM | MYISAM }

початкове значення лічильника автоінкременту: AUTO_INCREMENT = число

середня довжина рядків в таблиці: AVG_ROW_LENGTH = число

коментарі до таблиці (рядок з 60 символів): COMMENT = "рядок"

максимальне і мінімальне передбачуване число рядків: MAX_ROWS = число і MIN_ROWS = число

І останній (знову ж таки опціональний) елемент команди CREATE – цей вираз SELECT (select_вираз). Синтаксис такий:

[IGNORE | REPLACE] SELECT ... (будь-який коректний вираз SELECT)

Якщо при створенні таблиці в команді CREATE указується вираз SELECT, то всі поля, одержані вибіркою, додаються в створювану таблицю.


Приклад 10.1. Створимо таблицю Persons, структура якої була приведена на малюнку 10.1.

mysql>CREATE TABLE Persons (id INT PRIMARY KEY AUTO_INCREMENT

first_name VARCHAR(50), last_name

VARCHAR(100), death_date INT

description TEXT, photo INT

citizenship CHAR(50) DEFAULT 'Russia');

Приклад 10.1. Створення таблиці Persons

За допомогою специфічної для MySql команди SHOW можна проглянути існуючі бази даних, таблиці в базі даних і поля в таблиці.

Показати всі бази даних:

mysql>SHOW databases;

Зробити поточною базу даних book і показати всі таблиці в ній:

mysql>use book;

mysql>show tables;

Показати всі стовпці в таблиці Persons:

mysql> show columns from Persons;


Смотрите также файлы