SQL 怎么创建一个只有查询数据库用户权限呢

SQL 怎么创建一个只有查询数据库用户权限呢,第1张

1在数据库本机用使用cmd指令调出命令行窗口,再用sqlplus/assysdba登录到数据库中。并且用对要赋权限的表所有者连接数据库,否则后续赋权限会失败。

2创建由test123标识的用户测试;创建密码设置为test123的测试用户。

3授权测试用户的连接和资源权限。授予连接,资源到测试。

4指定表授权查询权限。授予用户选择。表测试。

5用新的登录数据库进行验证,我们会先尝试删除删除数据的功能,结果错误无法执行,说明我们添加的用户没有删除权限。

6然后验证select查询函数,成功找到指定的数据。创建一个新用户并指定查询权限函数的实现。对于没有权限的表的查询也会被拒绝。

Access的数据库。简单啊。

右键数据库所在的文件夹----属性----安全----在当前用户的权限上找到写入。把勾打上就可以了

都勾上了还是不行?检查C盘TEMP文件夹的权限

create user 用户名 identified by 密码;

grant 权限 to用户名;

以上是最简单的格式,完整语法相当复杂,建议你去otnoraclecom找文档来看,不可能在这里说清楚的。

赋予oracle数据库中权限,用grant语句。

如将scott用户下的emp表的查询权限赋予system用户,可用如下语句:

grant select on emp to system;

将scott用户下的emp表的更新权限赋予system用户,可用如下语句:

grant update on emp to system;

1、GRANT CONNECT ON DATABASE TO USER GUEST;

GRANT SELECT ON TABLE DENT TO USER GUEST;

需要在系统上先建立一个用户。

2DB2依赖 *** 作系统的安全性,自身没有用户,直接看 *** 作系统中有哪些用户就行

3DB2数据库没有这样的功能,ORACLE中的logminer能查到用户执行的DDL和DML

但是也查不到哪些用户查询过哪些表

sybase数据库的用户,包含两个层面:一个是登陆号,另一个是具体DB的用户,我们登陆时,使用的是登录号,但是这个登录号可以 *** 作哪些DB及 *** 作权限则取决于数据库用户。一般情况下,我们可以采取相同的名字来表示登录号和数据库用户。

首先创建一个登陆号:

sp_addlogin

loginame,

passwd

loginame

登录名

passwd

密码

全部语法(一般不用到)为:

sp_addlogin

loginame,

passwd

[,

defdb]

[,

deflanguage

]

[,

fullname

]

[,

passwdexp

]

[,

minpwdlen

]

[,

maxfailedlogins

]

然后创建用户:

sp_adduser

loginame

这样创建当前数据库的用户,且用户名和登陆名是一样的。

全部语法为:

[dbname]sp_adduser

loginame

[,

username[,

grpname]]

最后分配权限:

grant

all

|

select,insert,delete,update

on

table_name

|

view_name

|

stored_procedure_name

to

username

grant

all

|

create

database,create

default,create

procedure,create

rule,create

table,create

view,set

proxy,set

session

authorization

to

username

例,假如当前DB为:DB001:

sp_addlogin

'test001','password001'

go

sp_adduser

'test001',

'user001'

go

grant

create

table

to

user001

go

创建了一个test001的登录名,之后为之创建一个当前数据库的用户,使这个登录名可以 *** 作当前数据库。之后分配了创建表的权限给user001。

这个时候你就可以使用用户名'test001'和密码'password001'登陆了,并且可以在DB001中创建表了。同时由于sp_adduser

的时候没有指定grpname参数,那么默认是public用户组,这个组里的用户默认即开通了select/delete/update/insert的权限。

如果你希望去掉一些权限,请使用revoke命令,其语法了grant完全相同,你只需要将grant换成revoke即可,例:

revoke

select

on

address

to

user001

禁止user001查看address表。

以上就是关于SQL 怎么创建一个只有查询数据库用户权限呢全部的内容,包括:SQL 怎么创建一个只有查询数据库用户权限呢、怎样对数据库设置写入权限、怎么给oracle数据库创建用户,并赋权限等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9322932.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存