Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика экзамен.docx
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
316.8 Кб
Скачать

16. Сессии и cookie в php

Сессии и cookies предназначены для хранения сведений о пользователях при переходах между несколькими страницами. При использовании сессий данные сохраняются во временных файлах на сервере. Файлы с cookies хранятся на компьютере пользователя, и по запросу отсылаются браузером серверу. Использование сессий и cookies очень удобно и оправдано в таких приложениях как Интернет-магазины, форумы, доски объявлений, когда, во-первых, необходимо сохранять информацию о пользователях на протяжении нескольких станиц, а, во-вторых, своевременно предоставлять пользователю новую информацию.

17 Типы данных MySql

MySQL — реляционная СУБД, которая поддерживает несколько типов данных, которые можно разделить на три категории: числовые данные, дата и время, и данные типа строка. Для более подробной информации смотрите руководство по MySQL.

18. Выборка определенных строк в MySql. Операторы select, insert, update: синтаксис, условия, маски.

Синтаксис оператора select

6.4.1 Синтаксис оператора select

Оператор SELECT имеет следующую структуру:

SELECT [STRAIGHT_JOIN]

[SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT]

[SQL_CACHE | SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS] [HIGH_PRIORITY]

[DISTINCT | DISTINCTROW | ALL]

select_expression,...

[INTO {OUTFILE | DUMPFILE} 'file_name' export_options]

[FROM table_references

[WHERE where_definition]

[GROUP BY {unsigned_integer | col_name | formula} [ASC | DESC], ...]

[HAVING where_definition]

[ORDER BY {unsigned_integer | col_name | formula} [ASC | DESC], ...]

[LIMIT [offset,] rows]

[PROCEDURE procedure_name]

[FOR UPDATE | LOCK IN SHARE MODE]]

SELECT применяется для извлечения строк, выбранных из одной или нескольких таблиц. Выражение select_expression задает столбцы, в которых необходимо проводить выборку. Кроме того, оператор SELECT можно использовать для извлечения строк, вычисленных без ссылки на какую-либо таблицу. Например:

mysql> SELECT 1 + 1;

-> 2

Синтаксис оператора INSERT

table_name [[AS] alias] [USE INDEX (key_list)] [IGNORE INDEX (key_list)]

INSERT [LOW_PRIORITY | DELAYED] [IGNORE]

[INTO] tbl_name [(col_name,...)]

VALUES (expression,...),(...),...

или INSERT [LOW_PRIORITY | DELAYED] [IGNORE]

[INTO] tbl_name [(col_name,...)]

SELECT ...

или INSERT [LOW_PRIORITY | DELAYED] [IGNORE]

[INTO] tbl_name

SET col_name=expression, col_name=expression, ...

Оператор INSERT вставляет новые строки в существующую таблицу. Форма данной команды INSERT ... VALUES вставляет строки в соответствии с точно указанными в команде значениями. Форма INSERT ... SELECT вставляет строки, выбранные из другой таблицы или таблиц. Форма INSERT ... VALUES со списком из нескольких значений поддерживается в версии MySQL 3.22.5 и более поздних. Синтаксис выражения col_name=expression поддерживается в версии MySQL 3.22.10 и более поздних.

Синтаксис оператора UPDATE

UPDATE [LOW_PRIORITY] [IGNORE] tbl_name

SET col_name1=expr1 [, col_name2=expr2, ...]

[WHERE where_definition]

[LIMIT #]

Оператор UPDATE обновляет столбцы в соответствии с их новыми значениями в строках существующей таблицы. В выражении SET указывается, какие именно столбцы следует модифицировать и какие величины должны быть в них установлены. В выражении WHERE, если оно присутствует, задается, какие строки подлежат обновлению. В остальных случаях обновляются все строки. Если задано выражение ORDER BY, то строки будут обновляться в указанном в нем порядке.

Узнаем, какие условия можно задавать, используя ключевое слово WHERE. 

Оператор = (равно)

Пример: SELECT * FROM topics WHERE id_author=4;

> (больше)

Пример: SELECT * FROM topics WHERE id_author>2;

< (меньше)

Пример: SELECT * FROM topics WHERE id_author<3;

>= (больше или равно)

Пример: SELECT * FROM topics WHERE id_author>=2;

<= (меньше или равно)

Пример: SELECT * FROM topics WHERE id_author<=3;

!= (не равно)

Пример: SELECT * FROM topics WHERE id_author!=1;

IS NOT NULL

Пример: SELECT * FROM topics WHERE id_author IS NOT NULL;

IS NULL

Пример: SELECT * FROM topics WHERE id_author IS NULL; Empty set - нет таких строк.

BETWEEN (между)

Пример: SELECT * FROM topics WHERE id_author BETWEEN 1 AND 3

IN (значение содержится)

Пример: SELECT * FROM topics WHERE id_author IN (1, 4);

NOT IN (значение не содержится)

Пример: SELECT * FROM topics WHERE id_author NOT IN (1, 4);

LIKE (соответствие)

Пример: SELECT * FROM topics WHERE topic_name LIKE 'вел%';

Возможные метасимволы оператора LIKE будут рассмотрены ниже.

NOT LIKE (не соответствие)

Пример: SELECT * FROM topics WHERE topic_name NOT LIKE 'вел%';

19. Создание таблиц в mysql.

Для создания таблиц в SQL существует оператор create table. Создание базы данных имеет следующий синтаксис:

create table имя_таблицы (имя_первого_столбца тип, имя_второго_столбца тип, ..., имя_последнего_столбца тип );

Итак, мы создали таблицу topics (темы) с тремя столбцами:

id_topic int - id темы (целочисленное значение),

topic_name text - имя темы (строка),

id_author int - id автора (целочисленное значение).  show databases - показать все имеющиеся БД,

show tables - показать список таблиц текущей БД (предварительно ее надо выбрать с помощью оператора use),

describe имя_таблицы - показать описание столбцов указанной таблицы. 

Следующий пример создает таблицу users с 3 полями, где первое поле - уникальный идентификатор записи, второе поле - имя пользователя, а третье поле - его возраст: