Резюме
Разработчики должны иметь общие команды Mysql, охватывающие операторы определения данных, операторы обработки данных и операторы управления данными, основанные на Mysql5.7.
Заявление об определении данных (DDL)
операции с базой данных
- Вход в базу данных:
mysql -uroot -proot
- Создайте базу данных:
create database test
- Посмотреть все базы:
show databases
- Выберите базу данных и используйте:
use test
- Посмотреть все таблицы:
show tables
- Удалить базу данных:
drop database test
табличные операции
- Создайте таблицу:
create table emp(ename varchar(10),hiredate date,sal decimal(10,2),deptno int(2))
create table dept(deptno int(2),deptname varchar(10))
- См. определение таблицы:
desc emp
- Просмотр определения таблицы (подробно):
show create table emp \G
- Сбросить таблицу:
drop table emp
- Изменить поля таблицы:
alter table emp modify ename varchar(20)
- Добавьте поля таблицы:
alter table emp add column age int(3)
- Удалить поля таблицы:
alter table emp drop column age
- переименовать поле;
alter table emp change age age1 int(4)
- Измените имя таблицы:
alter table emp rename emp1
Заявление об обработке данных (DML)
вставить запись
- Укажите вставку имени:
insert into emp (ename,hiredate,sal,deptno) values ('zhangsan','2018-01-01','2000',1)
- Вставить без указания имени:
insert into emp values ('lisi','2018-01-01','2000',1)
- Вставляйте данные партиями:
insert into dept values(1,'dept1'),(2,'dept2')
Изменить записи
update emp set sal='4000',deptno=2 where ename='zhangsan'
Удалить запись
delete from emp where ename='zhangsan'
Поиск записи
- Запросить все записи:
select * from emp
- Запросить уникальные записи:
select distinct deptno from emp
- Условный запрос:
select * from emp where deptno=1 and sal<3000
- Сортировать и ограничивать:
select * from emp order by deptno desc limit 2
- Пейджинговый запрос (запрос начинается с 0-й записи и 10 записей):
select * from emp order by deptno desc limit 0,10
- Агрегация (запрос номеров отделов с номерами отделов больше 1):
select deptno,count(1) from emp group by deptno having count(1) > 1
- Запрос подключения:
select * from emp e left join dept d on e.deptno=d.deptno
- Подзапрос:
select * from emp where deptno in (select deptno from dept)
- рекордный союз:
select deptno from emp union select deptno from dept
Заявление о контроле данных (DCL)
Связанные с разрешением
- Предоставить разрешения на операции (предоставить разрешения на выбор и вставку всех таблиц в тестовой базе данных тестовому пользователю):
grant select,insert on test.* to 'test'@'localhost' identified by '123'
- Просмотр разрешений учетной записи:
show grants for 'test'@'localhost'
- Отзыв прав на эксплуатацию:
revoke insert on test.* from 'test'@'localhost'
- Предоставьте все разрешения для всех баз данных:
grant all privileges on *.* to 'test'@'localhost'
- Предоставьте все привилегии (включая грант) всем базам данных:
grant all privileges on *.* to 'test'@'localhost' with grant option
- Предоставьте привилегию SUPER PROCESS FILE (системные привилегии не могут указывать базу данных):
grant super,process,file on *.* to 'test'@'localhost'
- Предоставьте только права входа:
grant usage on *.* to 'test'@'localhost'
Аккаунт связан
- Чтобы удалить учетную запись:
drop user 'test'@'localhost'
- Измените свой собственный пароль:
set password = password('123')
- Администратор меняет пароли других:
set password for 'test'@'localhost' = password('123')
разное
Связанный набор символов
- Проверьте набор символов:
show variables like 'character%'
- Укажите набор символов при создании базы данных:
create database test2 character set utf8
связанный с часовым поясом
- Проверьте текущий часовой пояс (UTC — универсальное время, Китай — UTC+8):
show variables like "%time_zone%"
- Измените глобальный часовой пояс mysql на пекинское время, которое является 8-м восточным округом, где мы находимся:
set global time_zone = '+8:00';
- Измените часовой пояс текущего сеанса:
set time_zone = '+8:00'
- Вступает в силу немедленно:
flush privileges
публика
проект торгового центраПолный набор учебных пособий сериализуется,Обратите внимание на общедоступный номерПолучите это прямо сейчас.