【データベース原理】SQLデータ制御文DCL

ユーザーを作成します。

create user 'UserName'@'localhost' 
	identified by 'password';

[ 文の分析 ]

  • create userユーザーを作成します。
  • 'UserName'作成されるユーザーのユーザー名。
  • 'localhost'ユーザーがログインできるホストを指定し、ローカルユーザーがそれを使用できるようにし'localhost'ます。ユーザーが任意のホストにログインできるようにする場合は、ワイルドカードを使用します%
  • indentified byキーワードを確認し、その後にパスワードを入力します。
  • 'password' ユーザーがログインに使用するパスワード。パスワードが空の場合、パスワードなしでサーバーにログインできます。

サンプルコード

create user 'kevin'@'localhost' identified by '123456';
//创建只能在本地登录的、名为kevin、密码为123456的用户

create user 'kevin'@'%' identified by '123456';
//创建能在任意主机登录的、名为kevin、密码为123456的用户

create user 'kevin'@'%';
create user 'kevin'@'%' identified by '';
//以上两句等价,都创建一个名为kevin、
//任意主机可登录并且无密码的用户

許可を与えた。

grant privileges on dbname.tablename 
		to 'username'@'host' identified by 'password'
		 [with grant option];

[ 文の分析 ]

  • privileges選択、挿入、更新などのユーザーの操作権限については、記事の最後の表で詳しく説明しています。また、ユーザーにすべての権限を直接付与する場合は、キーワードallを使用できます。
  • dbnameデータベース名、tablenameテーブル名、すべてを参照する場合は記号を使用します*
  • 2行目のキーワードは、ユーザー作成のキーワードと同義です。
  • [with grant option]オプションとして、このオプションがアタッチされている場合、ユーザーは他のユーザーにアクセス許可を付与できます。それ以外の場合は許可されません。

サンプルコード

grant select on Test.TestTable to 'kevin'@'localhost' 
	identified by '123456';
//授予kevin能够在Test数据库中的TestTable中进行select的权限

grant all on *.* to 'kevin'@'%' with grant option;
//授予kevin在所有数据库中所有表的一切权限,
//并且kevin可以将权限授予他人,这波kevin杀疯了

権限を取り戻します。

revoke privilege on dbname.tablename 
	from 'username'@'host' ;

[ 文の分析 ]

  • この操作は、上記で付与された権限に対応し、特定のユーザーから関連するdbname.tablename権限が取り消されます。キーワードは上記と同義です。

サンプルコード

revoke all on *.* from 'kevin'@'%';
//收回kevin的一切权限,终结他罪恶的一生

パスワードを変更する。

set password for 'username'@'host' = 
	password('new_password');

[ 文の分析 ]

  • 'username'@'host'パスワードを変更しようとしているユーザーです。現在のユーザーの場合、この部分は省略できますset password = password('new_password')つまり、コード形式はです。

サンプルコード

set password = password('');
//清除当前用户的密码,虽然我也不知道当前用户是哪个

set password for 'kevin'@'localhost' 
	= password('abcdefg');
//修改kevin的密码

ユーザーを削除します。

drop user 'username'@'host';

[ 文の分析 ]

  • drop userシンプルで明確な、ユーザーを削除してから、ユーザー名とホストにログインします。

サンプルコード

drop user 'kevin'@'localhost'
//kevin倒了

特権テーブル。

ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/weixin_44246009/article/details/108428564