MySQL полного решения


Введение https://www.cnblogs.com/snake23/p/9635822.html двигатель

PrimaryKey первичный ключ KEY PERIMARY
KEY Внешний ключ Внешний ключ иностранного
Ссылки , связывающие ЛИТЕРАТУРЫ
Авто INCREMENT автоматически увеличивает AUTO_INCREMENTY
uniqueKey уникальное ограничение UNIQUE KEY

Никакого негативного без знака (без знака) дважды INT UNSIGNED
вообще -127- {Int> 128} становится плюс UNSIGNED INT [0-255]

Значение по умолчанию по умолчанию DEFAULT


создать таблицу ABC (
ID INT (10) NOT NULL AOTO_INCREMENT PRIMARY KEY,
имя пользователя VARCHAR (10) NOT NULL UNIQUE KEY,
пароль VARCHAR (10) NOT NULL UNIQUE KEY,
секс TINYINT (5) NOT NULL DEFAULT '0',
);

После успешного -------- "

CREATE TABLE `abc` (
` id` INT (11) NOT NULL AUTO_INCREMENT,
`username` VARCHAR (10) NOT NULL,
` password` VARCHAR (10) NOT NULL,
`sex` TINYINT (3) NOT NULL DEFAULT '0' ,
первичный ключ ( `id`),
уникальный ключ` username` ( `username`),
уникальный ключ` password` ( `password`)
) ДВИГАТЕЛЬ = InnoDB CHARSET = УМОЛЧАНИЮ utf8mb4 СОЪЪАТ = utf8mb4_0900_ai_ci;

 

INSERT INTO абв (идентификатор, имя пользователя, пароль, пол) значения (1, 'ааа', '123', 0);

SELECT * FROM аЬс;
ВЫБРАТЬ идентификатор, имя пользователя, пароль, пол FORM а;

UPDATE а наборы имя пользователь = 'ссс' WHERE ID = 1;

DELETE FROM аЬс WHERE ID = 1;

DROP TABLE а;


// добавить одну
ALTER TABLE ADD ABC возрастную INT (10 ) NOT NULL // добавить столбцы
// добавить несколько столбцов
ALTER TABLE ADD ABC (хобби VARCHAR ( 10) NOT NULL, кп VARCHAR (10) NOT NULL) // добавить столбцы


// добавить ограничение по умолчанию в
ALTER TABLE ADD ABC возрастной TinyInt DEFAULT 0 ;

// По умолчанию изменение параметра ограничения
ALTER TABLE ABC альтер возраста набор по умолчанию 15 ;

// удалить ограничение по умолчанию
ALTER TABLE ABC альтер возраст DROP по умолчанию;

// Удаление первичного ключа
альтер TABLE DROP PRIMARY KEY ABC;
// удалить единственное ограничение
на ALTER TABLE DROP UNIQUE ABC;
// удалить ограничение внешнего ключа
ALTER TABLE ABC DROP FOREIGN KEY;

 


// изменить определение поля
ALTER TABLE ABC MODIFY ид междунар (5 ) NOT NULL УСТАНОВКИ 1;

// изменить имя поля
ALTER TABLE ABC CHANGE идентификатор PID Int ( 5);

 

НЕ СУЩЕСТВУЕТ IF
- запрос сделал 102 элективных курсов и студенты называют
на ВЫБЕРИТЕ SNO, SNAME от Stu не WHERE EXISTS (
ВЫБОР * из WHERE SCORE (Stu.SNO = SNO и CNO = '102')
)

- Плановая запрос студенты всех курсов студент ID и имя
ЗЕЬЕСТ SNO, SNAME от Stu не ГДЕ СУЩЕСТВУЕТ (
ВЫБОР * из C не WHERE EXISTS (
ВЫБОР * от WHERE SNO SCORE = Stu.SNO и C.CNO = СНО)
)

 


базы данных MySQL, если и только если двигатель Ьшо, поддерживаются только [дела];
// установить уровень изоляции MySQL: в виде: множества сеанса транзакции заданного уровня изоляции транзакций уровня изоляции

Проверьте уровень утверждения показать переменные, такие как «transaction_isolation»; повторяемые чтения (по умолчанию)


// считывают настройки неизрасходованного уровня:
Изоляция SET Transaction Level читать UNCOMMITTED сессии,
данные еще не читали разрешение (грязное чтение, фантомное чтение, неповторяемость)

// установить для чтения соответствующего уровня:
Комплекс изоляции сеанса транзакции Уровня читать преступления;
читать данные были представлены решения (грязное чтение)

// Установить повторяемые чтения Уровня:
SET Transaction повторяемого Уровня изоляции чтение сессии;
повторяемое решения для чтения (грязное чтение неповторимых градусов)

// Установить уровень сериализации:
SET сеанс Уровень изоляции транзакции сериализации;
сериализованная решение данных (грязное чтение, фантомное чтение, неповторяемость)

 

 


MySQL можно условно разделить на следующие три вида [LOCK]:

Блокировка таблицы уровня: небольшие накладные расходы, блокировка быстро, не тупик, блокировка большой размер, вероятность конфликтов блокировок высшей и самой низкой степени параллелизма.

блокировка на уровне строк: большие накладные расходы, запирая медленно, будет тупиковым, запирая наименьший размер, низкая вероятность конфликтов блокировок, имеют самую высокую степень параллелизма.

Блокировка страницы: стоимость и заперли в то время связанно между столом и блокировками строк, будут тупиковая, блокировкой зернистости границы между столом и блокировками строк, общий параллелизмом
[замок]
MyISAM выполнением запроса (SELECT) прежде, будут автоматически добавлены все таблицы блокировок чтения , участвующих в операции обновления (UPDATE, DELETE, INSERT и т.д.) перед тем ,
будут автоматически добавлены к замкам таблицы записи вовлеченных, этот процесс не требует вмешательства пользователя, так что пользователи обычно не нуждаются в блокировка таблицы команды непосредственно к столу явно замок MyISAM
[замок]

MyISAM таблица с явной блокировкой, как правило, до некоторой степени операции имитации операции, чтение точки согласованности во время множества таблиц.

[Например], есть таблица порядка заказов, которые записаны общая общая сумма заказа, а также список заказов order_detail, который записал сумму заказа субтотальная субтотальной каждого продукта, если нам нужно, чтобы проверить эти две таблицы общая сумма за равенство, возможно, потребуется выполнить следующие два SQL:

1
SELECT SUM (всего) от заказов;
2
ВЫБОР СУММА (субтотальная) ОТ order_detail;

В это время, если вы не предоставите эти две таблиц заблокированы, может привести к неверным результатам, так как процесс выполнения первого оператора, order_detail таблица, возможно, уже изменилась. Таким образом, правильный подход должен быть:

1
LOCK TABLES заказов прочитать местные, order_detail прочитать местные;
2
SELECT SUM (всего) от заказов;
3
ВЫБОР СУММА (субтотальная) ОТ order_detail;
4
разблокировки таблицы;

рекомендация

отwww.cnblogs.com/KFKang/p/12037581.html