Запит sql на створення (зміна) користувача

Запит SQL на створення (зміна) користувача

Відео: Мова запитів 1С для користувачів. Урок №1. Консоль запитів. Довідники

У цій невеликій статті ми розберемо SQL-запит, котрий дозволяє додавати нових користувачів до бази даних, а також змінювати параметри вже існуючих.

Давайте наведу відразу приклад SQL-запиту на створення нового користувача бази даних:

Відео: Запити вставки і зміни в режимі SQL. INSERT і UPDATE

GRANT SELECT , INSERT , UPDATE , CREATE , PROCESS ON *.* TO `MyUser`@`Localhost` IDENTIFIED BY `123456` WITH GRANT OPTION MAX_QUERIES_PER_HOUR 10 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 10

Тепер пояснюю синтаксис команди GRANT. Спочатку йде назва команди, потім ми задаємо, які права будуть у користувача. детально про правах користувачів я вже писав, тому пояснювати це не буду. Після опису привілеїв йде прийменник "ON". Тут можна вказати, до якої таблиці або базі даних даний користувач матиме доступ. В даному випадку ми написали"*. *", Що означає, що даний користувач має доступ до будь-якої таблиці будь-якої бази даних. Ми могли б написати так:"db_name. *", Що означало б, що користувач може отримати доступ до будь-якої таблиці бази даних"db_name". Відразу після опису меж доступу йде прийменник"TO", Після якого ми задаємо ім`я користувача"MyUser"І хост, з якого він буде мати доступ до бази даних. У нашому випадку це"localhost". Після йде"IDENTIFIED BY"І потім відразу пароль. І остання частина - це"WITH GRANT OPTION", В якій ми задаємо обмеження на використання ресурсів. Про них ми також вже говорили в статті: права користувача.




Тепер давайте розберемо SQL-запит на зміну існуючих користувачів:

GRANT SELECT , INSERT , UPDATE , CREATE , PROCESS ON *.* TO `MyUser`@`Test1.ru` IDENTIFIED BY PASSWORD `565491d704013245` WITH GRANT OPTION MAX_QUERIES_PER_HOUR 10 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 10


Як бачите, синтаксис АБСОЛЮТНО такий же, як і на створення нового користувача. Єдина відмінність - це те, що користувач "MyUser"Уже існує. Ось і все.

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

DELETE FROM `user` WHERE CONVERT(User USING cp1251 )= CONVERT(`MyUser` USING cp1251 ) AND CONVERT(Host USING cp1251 )= CONVERT(`Test1.ru` USING cp1251 )
DELETE FROM
`db` WHERE CONVERT(User USING cp1251 )= CONVERT(`MyUser` USING cp1251 ) AND CONVERT(Host USING cp1251 )= CONVERT(`Test1.ru` USING cp1251 )
DELETE FROM
`tables_priv` WHERE CONVERT(User USING cp1251 )= CONVERT(`MyUser` USING cp1251 ) AND CONVERT(Host USING cp1251 )= CONVERT(`Test1.ru` USING cp1251 )
DELETE FROM
`columns_priv` WHERE CONVERT(User USING cp1251 )= CONVERT(`MyUser` USING cp1251 ) AND CONVERT(Host USING cp1251 )= CONVERT(`Test1.ru` USING cp1251 )

Багато, не сперечаюся, але це єдиний спосіб видалити користувача. Або вручну через PHPMyAdmin. Єдине, що треба змінити в цьому шаблоні - це ім`я користувача і хост, а все інше Вам навряд чи доведеться міняти.

Відео: Бази даних для початківців. SQL команда UPDATE в базі даних. SQL запит UPDATE в БД SQLite

Ось ми з Вами і розглянули SQL-запити на створення, редагування і видалення користувачів бази даних.

Поділися в соціальних мережах:

Схожі
Оптимізація запитів до mysqlОптимізація запитів до mysql
Підключення до бази даних в phpПідключення до бази даних в php
Структура бази данихСтруктура бази даних
Права (привілеї) користувачів в mysqlПрава (привілеї) користувачів в mysql
Запит sql на вибірку записівЗапит sql на вибірку записів
Відправлення запитів до бази даних в phpВідправлення запитів до бази даних в php
Запит sql на створення індексуЗапит sql на створення індексу
Створення тригерів в mysqlСтворення тригерів в mysql
Чутливі до регістру пошук для mysqlЧутливі до регістру пошук для mysql
Випадкова вибірка з бази данихВипадкова вибірка з бази даних
» » Запит sql на створення (зміна) користувача