我正在尝试授予新创建的用户创建表的能力。
我原本以为会是
GRANT CREATE TABLE ON databaseName.* TO userName_3;
但是,我在尝试执行此SQL语句时收到语法错误。
有人能告诉我它为什么不起作用吗? 感谢
答案 0 :(得分:0)
阅读本文 SQL Server grand permission
GRANT CREATE ON SCHEMA :: databaseName TO userName_3;
GRANT CREATE ON databaseName.* TO userName_3;
您无法在查询
中使用TABLE
表格权限
表权限适用于给定表中的所有列。分派 表级特权,使用ON db_name.tbl_name语法:
授予所有mydb.mytbl以及某些用户' @' somehost&#39 ;; GRANT SELECT,INSERT 在mydb.mytbl上,有些用户' @' somehost&#39 ;;如果你指定tbl_name 比db_name.tbl_name,该语句适用于中的tbl_name 默认数据库。如果没有默认数据库,则会发生错误。
表级别允许的priv_type值为ALTER,CREATE 查看,创建,删除,删除,授予选项,索引,插入,参考, SELECT,SHOW VIEW,TRIGGER和UPDATE。
表级权限适用于基表和视图。他们不 适用于使用CREATE TEMPORARY TABLE创建的表,即使是表 名字匹配。有关TEMPORARY表权限的信息,请参阅 第13.1.18.3节“CREATE TEMPORARY TABLE语法”。
MySQL将表权限存储在mysql.tables_priv表中。