SQL2005数据库,怎么最快速的把dbo.身份创建的表,转成一个新建的角色创建的表

SQL2005数据库,怎么最快速的把dbo.身份创建的表,转成一个新建的角色创建的表,第1张

随后创建了一个登录l_test,然后在数据库pubs中为登录l_test创建了用户账户u_test

同时将用户账户u_test添加到角色r_test中,使其通过权限继承获取了与角色r_test一样的权限

最后使用DENY语句拒绝了用户账户u_test对表tITles的SELECT权限。

经过这样的处理,使用l_test登录SQL Server实例后,它只具有表jobs的所有权限。

1、 *** 纵语言(DML):用来 *** 纵数据库中数据的命令。

包括:select、insert、update、delete。

2、定义语言(DDL):用来建立数据库、数据库对象和定义列的命令。

包括:create、alter、drop。

3、控制语言(DCL):用来控制数据库组件的存取许可、权限等的命令。

包括:grant、deny、revoke。

简单来说就是增、删、改。

---1) 创建一张学生表,包含以下信息,学号,姓名,年龄,性别,家庭住址,联系电话

CREATE TABLE student

(

[id] [int] IDENTITY(1,1) NOT NULL,

[student_id] [nvarchar](50) NULL,

[studen_name] [nvarchar](50) NULL,

[age] [int] NULL ,

[sex] [nvarchar](5) NULL,

[address] [nvarchar](200) NULL,

[tel] [nvarchar](20) NULL

)

--2) 修改学生表的结构,添加一列信息,学历 education

alter table student add education nvarchar(10) NULL

--3) 修改学生表的结构,删除一列信息,家庭住址

alter table student drop column address

--5) 修改学生表的数据,将电话号码以11开头的学员的学历改为“大专”

update student set education='大专' where tel like '11%'

--6) 删除学生表的数据,姓名以C开头,性别为‘男’的记录删除

delete student where studen_name like 'C%' and sex='男'

--7) 查询学生表的数据,将所有年龄小于22岁的,学历为“大专”的,学生的姓名和学号示出来

select studen_name,student_id from student

where age<12 and education='大专'

--8) 查询学生表的数据,查询所有信息,列出前25%的记录

select TOP 25 PERCENT from student

--9) 查询出所有学生的姓名,性别,年龄降序排列

select studen_name,sex,age from studen order by age desc

--10) 按照性别分组查询所有的平均年龄

select avg(age) as age from studen group by sex

只读数据库:EXEC sp_dboption 'NetBar', 'read only', true

自动收缩: EXEC sp_dboption 'NetBar' ,'autoshrink', true

设置登录名麻烦一点,先添加登录账户,再添加用户,再为其赋于相应权限

--添加帐户

/--添加SQLserver身份登录帐户--/

EXEC sp_addlogin 'NetManager', '1234','NetBar' -- 帐户:NetManager 密码:1234 ,NetBar 为登录后指定数据库

--添加sqlserver身份登录帐户用户

EXEC sp_grantdbaccess 'NetManager', 'aaa'

--赋予权限

USE NetBar

GO

--对象权限

GRANT select, insert, update ON table_Name TO aaa

--语句权限

GRANT create table TO zhangsanDBUser

就是说ACL对没有说明的行为(permit或deny),全部拒绝。

比如你要控制一个网段19216810/24的访问

access-list

1

permit

19216810

2552552550

表示允许19216810网段,除此以外全部拒绝。

access-list

1

deny

19216810

2552552550

表示拒绝19216810网段,除此以外全部拒绝。实际上等于拒绝所有网段(包括19216810)等同于deny

any的效果

你可以当做结尾隐含了一个deny

any语句。

--数据 *** 作

SELECT

--从数据库表中检索数据行和列

INSERT

--向数据库表添加新数据行

DELETE

--从数据库表中删除数据行

UPDATE

--更新数据库表中的数据

--数据定义

CREATE

TABLE

--创建一个数据库表

DROP

TABLE

--从数据库中删除表

ALTER

TABLE

--修改数据库表结构

CREATE

VIEW

--创建一个视图

DROP

VIEW

--从数据库中删除视图

CREATE

INDEX

--为数据库表创建一个索引

DROP

INDEX

--从数据库中删除索引

CREATE

PROCEDURE

--创建一个存储过程

DROP

PROCEDURE

--从数据库中删除存储过程

CREATE

TRIGGER

--创建一个触发器

DROP

TRIGGER

--从数据库中删除触发器

CREATE

SCHEMA

--向数据库添加一个新模式

DROP

SCHEMA

--从数据库中删除一个模式

CREATE

DOMAIN

--创建一个数据值域

ALTER

DOMAIN

--改变域定义

DROP

DOMAIN

--从数据库中删除一个域

--数据控制

GRANT

--授予用户访问权限

DENY

--拒绝用户访问

REVOKE

--解除用户访问权限

--事务控制

COMMIT

--结束当前事务

ROLLBACK

--中止当前事务

SET

TRANSACTION

--定义当前事务数据访问特征

--程序化SQL

DECLARE

--为查询设定游标

EXPLAN

--为查询描述数据访问计划

OPEN

--检索查询结果打开一个游标

FETCH

--检索一行查询结果

CLOSE

--关闭游标

PREPARE

--为动态执行准备SQL

语句

EXECUTE

--动态地执行SQL

语句

DESCRIBE

--描述准备好的查询

还有很多,你参考>

GRANT:在安全系统中创建项目,使当前数据库中的用户得以处理当前数据库中的数据或执行特定的 Transact-SQL 语句。1 例子:授予语句权限下面的示例给用户 Mary 和 John 授予多个语句权限。GRANT CREATE DATABASE, CREATE TABLE TO Mary, John授予全部语句权限给用户RoseGRANT ALL to Rose2 例子:授予对象权限GRANT SELECT ON authors TO publicGRANT INSERT, UPDATE, DELETE ON authors TO Mary, John, Tom DENY:在安全系统中创建一项,以拒绝给当前数据库内的安全帐户授予权限并防止安全帐户通过其组或角色成员资格继承权限。1 例子:拒绝语句权限下例对多个用户拒绝多个语句权限。用户不能使用 CREATE DATABASE 和 CREATE TABLE 语句DENY CREATE DATABASE, CREATE TABLE TO Mary, John对用户Rose拒绝全部语句权限DENY ALL to Rose2 例子:拒绝对象权限DENY INSERT, UPDATE, DELETE ON authors TO Mary, John, Tom REVOKE:删除以前在当前数据库内的用户上授予或拒绝的权限。1 废除类似于拒绝,但是,废除权限是删除已授予的权限,并不妨碍用户、组或角色从更高级别继承已授予的权限。因此,如果废除用户查看表的权限,不一定能防止用户查看该表,因为已将查看该表的权限授予了用户所属的角色。2 角色是权限的一个集合,可以指派给用户或其它角色。这样只对角色进行权限设置便可以实现对多个用户权限的设置3 举例:DENY与REVOKE区别例如,从 HumanResources 角色中删除 Employees 表上的 SELECT 访问权限将废除该权限,从而使 HumanResources 不能再使用该表。如果 HumanResources 是 Administration 角色的成员。如果以后将 Employees 上的 SELECT 权限授予了 Administration,则 HumanResources 的成员可以通过 Administration 中的成员资格看到该表。但是,如果对 HumanResources 拒绝SELECT权限,则即使以后向 Administration 授予权限,HumanResources 也不会继承该权限4 例子: 废除授予用户帐户的语句权限下例废除已授予用户 Joe 的 CREATE TABLE 权限。它删除了允许 Joe 创建表的权限。不过,如果已将 CREATE TABLE 权限授予给了包含 Joe 的任何角色,那么 Joe 仍可创建表。REVOKE CREATE TABLE FROM Joe5 例子: 废除授予多个用户帐户的多个权限下例废除授予多个用户的多个语句权限。REVOKE CREATE TABLE, CREATE INDEX FROM Mary, John6 例子: 废除拒绝的权限用户 Mary 是 Budget 角色的成员,已给该角色授予了对 Budget_Data 表的 SELECT 权限。已对 Mary 使用 DENY 语句以防止 Mary 通过授予 Budget 角色的权限访问 Budget_Data 表下例删除对 Mary 拒绝的权限,并通过适用于 Budget 角色的 SELECT 权限,允许 Mary 对该表使用 SELECT 语句。REVOKE SELECT ON Budget_Data TO Mary

以上就是关于SQL2005数据库,怎么最快速的把dbo.身份创建的表,转成一个新建的角色创建的表全部的内容,包括:SQL2005数据库,怎么最快速的把dbo.身份创建的表,转成一个新建的角色创建的表、简述SQL的三大主要功能及包含的SQL语句分别代表什么、sql数据库一道试题帮忙做做等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址:https://54852.com/sjk/10191677.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存