12. 在sqlsever中 创建数据库db13,切换至db13数据库,在其中创建sch架构 创建login13登录账号,口令为123456,默认数据库为db13。创建user13数据库用户,其默认架构为sch。 使得以上user13数据库用户在连接db13数据库后可以创建t表。 验证user13用户对其所建t表并未拥有增删查改权限,要使得以上user13用户可以对t表执行增删查改。 要使得以上user13用户可以对t表添加一新列。创建ltian登录帐号,口令为tiantian,默认数据库为db13。使得ltian帐号登录服务器并连接db13数据库后,能够查询user13用户所建t表。使用合适的字典视图,查询以上两个登录帐号及其对应的数据库用户各自拥有的权限。验证对public数据库角色授予某个权限后,所有的数据库用户都会具备此权限。

时间: 2024-03-12 18:46:25 浏览: 18
以下是sql server中的命令行操作,可以按照需求进行修改: 1. 创建数据库db13: ``` CREATE DATABASE db13; ``` 2. 切换至db13数据库: ``` USE db13; ``` 3. 在db13中创建sch架构: ``` CREATE SCHEMA sch; ``` 4. 创建login13登录账号,口令为123456,默认数据库为db13: ``` CREATE LOGIN login13 WITH PASSWORD = '123456', DEFAULT_DATABASE = db13; ``` 5. 创建user13数据库用户,其默认架构为sch,并赋予其在sch架构下的CREATE TABLE权限,使得user13数据库用户在连接db13数据库后可以创建t表: ``` CREATE USER user13 FOR LOGIN login13 WITH DEFAULT_SCHEMA = sch; GRANT CREATE TABLE ON SCHEMA::sch TO user13; ``` 6. 验证user13用户对其所建t表并未拥有增删查改权限,要使得以上user13用户可以对t表执行增删查改: ``` --验证user13用户对其所建t表并未拥有增删查改权限 SELECT * FROM sys.database_permissions WHERE grantee_principal_name = 'user13'; --使得user13用户可以对t表执行增删查改 GRANT SELECT, INSERT, UPDATE, DELETE ON sch.t TO user13; ``` 7. 要使得以上user13用户可以对t表添加一新列: ``` ALTER TABLE sch.t ADD new_column INT; GRANT ALTER ON sch.t(new_column) TO user13; ``` 8. 创建ltian登录帐号,口令为tiantian,默认数据库为db13: ``` CREATE LOGIN ltian WITH PASSWORD = 'tiantian', DEFAULT_DATABASE = db13; ``` 9. 使得ltian帐号登录服务器并连接db13数据库后,能够查询user13用户所建t表: ``` CREATE USER ltian FOR LOGIN ltian; GRANT SELECT ON sch.t TO ltian; ``` 10. 使用合适的字典视图,查询以上两个登录帐号及其对应的数据库用户各自拥有的权限: ``` --查询login13登录账号及其对应的数据库用户权限 SELECT p.permission_name, p.state_desc, p.class_desc, OBJECT_NAME(p.major_id) AS object_name, USER_NAME(p.grantee_principal_id) AS grantee_user, USER_NAME(p.grantor_principal_id) AS grantor_user FROM sys.database_permissions p INNER JOIN sys.database_principals dp ON p.grantee_principal_id = dp.principal_id WHERE dp.name = 'login13'; --查询user13数据库用户权限 SELECT p.permission_name, p.state_desc, p.class_desc, OBJECT_NAME(p.major_id) AS object_name, USER_NAME(p.grantee_principal_id) AS grantee_user, USER_NAME(p.grantor_principal_id) AS grantor_user FROM sys.database_permissions p INNER JOIN sys.database_principals dp ON p.grantee_principal_id = dp.principal_id WHERE dp.name = 'user13'; --查询ltian登录账号及其对应的数据库用户权限 SELECT p.permission_name, p.state_desc, p.class_desc, OBJECT_NAME(p.major_id) AS object_name, USER_NAME(p.grantee_principal_id) AS grantee_user, USER_NAME(p.grantor_principal_id) AS grantor_user FROM sys.database_permissions p INNER JOIN sys.database_principals dp ON p.grantee_principal_id = dp.principal_id WHERE dp.name = 'ltian'; ``` 11. 验证对public数据库角色授予某个权限后,所有的数据库用户都会具备此权限: ``` --授予对sch.t表的SELECT权限给public角色 GRANT SELECT ON sch.t TO public; --验证所有的数据库用户都具备此权限 SELECT * FROM sys.database_permissions WHERE grantee_principal_name = 'public' AND OBJECT_NAME(major_id) = 't'; ``` 以上是sql server中进行相关操作的命令行操作,您可以根据需要进行相应的修改。

相关推荐

最新推荐

recommend-type

如何将上传图片直接保存至SQL Server数据库中

这里演示的是如何将上传图片直接保存至SQL Server数据库中。  在数据库中,图片使用varbinary(MAX)存储:  这是个基于MVC3架构的例子。废话不多说,直接上代码:  View: @{  ViewBag.Title = ...
recommend-type

SQL Sever中使用SQL语句实现把重复行数据合并为一行并用逗号分隔

主要介绍了SQL Sever中使用SQL语句实现把重复行数据合并为一行并用逗号分隔,本文给出了两种实现方式,需要的朋友可以参考下
recommend-type

SQL Server数据库 期末考试重点 超详细.docx

适用于大学阶段 还有 初学者 SQLServer 的学习, 归纳重点知识,超详细 ,有目录 ,有实例 ,重点知识概念,有例子,重点T-SQL语句,都有例题。一看就懂,一学就会,有需要的朋友各取所需。
recommend-type

数据库系统概论数据库安全性实验报告.doc

含有报告和代码 一、实验目的 熟悉通过SQL对数据进行安全性控制。 二、实验内容和要求 1、熟练grant,revoke语句进行DAC控制 2、通过创建角色以及授权实验,了解并掌握SQL Server权限控制过程。
recommend-type

wincc用vbs脚本写入sqlserver数据库.docx

wincc用VBS代码向数据库内写入数据图文教程,附带vbs代码样例环境win764+winccv7.2+sqlserver2008
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

MATLAB柱状图在信号处理中的应用:可视化信号特征和频谱分析

![matlab画柱状图](https://img-blog.csdnimg.cn/3f32348f1c9c4481a6f5931993732f97.png) # 1. MATLAB柱状图概述** MATLAB柱状图是一种图形化工具,用于可视化数据中不同类别或组的分布情况。它通过绘制垂直条形来表示每个类别或组中的数据值。柱状图在信号处理中广泛用于可视化信号特征和进行频谱分析。 柱状图的优点在于其简单易懂,能够直观地展示数据分布。在信号处理中,柱状图可以帮助工程师识别信号中的模式、趋势和异常情况,从而为信号分析和处理提供有价值的见解。 # 2. 柱状图在信号处理中的应用 柱状图在信号处理
recommend-type

用Spring boot和vue写一个登录注册界面

好的,这是一个比较常见的技术问题,我可以为您提供一些参考资料和思路。首先,您可以使用Spring Boot作为后端框架来处理用户认证和注册的逻辑,比如使用Spring Security实现用户登录认证。同时,您还需要设计相应的数据模型和数据库表结构来存储用户信息。在前端方面,您可以使用Vue.js作为框架来构建登录注册页面,使用Axios来发起API请求并和后端进行交互。当然,在实现过程中,还需要考虑一些具体细节,比如数据校验、安全性和用户体验等方面。希望这些信息能够帮助到您。
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。