Разработчики должны иметь команды Mysql

MySQL

Резюме

Разработчики должны иметь общие команды 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

публика

проект торгового центраПолный набор учебных пособий сериализуется,Обратите внимание на общедоступный номерПолучите это прямо сейчас.

公众号图片