SQL2008中如何删除自建数据库中的用户?

ZJM811192 2019-01-01 11:17:57
我在电脑上重新安装了SQL2008,并还原了原先的自建的SPJXCGL数据库。
我新增了登陆名SYZ,并设置了权限,但在保存时却出现了以下提示:

创建对于登陆‘SYZ’失败。
执行TransactSQL语句或批处理时发生了异常。
服务器主体‘SYZ’已存在。错误:15025

我右击自建的SPJXCGL数据库,选择权限,在打开的界面中,发现已存在SYZ用户与原先建立的其他用户(在还原数据库时带进的),却不知道怎么删除。
现向电脑专家请教,如何删除自建的SPJXCGL数据库原先建立的用户?

另外,在自建的SPJXCGL数据库,选择权限,在打开的界面中,要不要对用户权限进行设置?如何设置?(在建立登陆名时已对用户的权限进行设置,这里要不要现重复设置?)

敬请电脑专家指导,不胜感激!
...全文
575 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
ZJM811192 2019-01-08
  • 打赏
  • 举报
回复
吉普赛的歌”老师:
十分感谢您的热情指导!
我在重新安装SQL2008后,要删除因还原SPJXCGL数据库带进的用户名(采用你在上面介绍的几种方法都提示出错,可能是还原数据库有问题,但这个数据库很重要,你介绍的将原来的库 导入到新库的方法又一直提示“正在调试查阅”,无法进行下去。),要彻底删除因还原SPJXCGL数据库带进的用户名,该如何操作?
敬请指导,不胜感激!
ZJM811192 2019-01-06
  • 打赏
  • 举报
回复
还要补充讲一下:我的PJXCGL数据库是从SQL2000备份的数据库还原到SQL2008的。
ZJM811192 2019-01-06
  • 打赏
  • 举报
回复
吉普赛的歌”老师:
我按您介绍的方法:“将原来的库, 导入到新库。”但我在具体操作”在源库上右键, 生成数据库创建脚本。修改生成的脚本,添加 _new, 并执行, 生成新的数据库。但在结果栏里一直在显示:“正在调试查阅”。等了半个小时仍是如此。无法继续操作下去。
我查了保存在电脑C盘中的SQL2008的“DATA”文件夹内的数据库文件,发现是:

SPJXCGL data file 1587840KB
SPJXCGL_1 log file 1024KB

为什么不是通常的SPJXCGL_log ,而是SPJXCGL_1 。而且 data file文件已大至1.58GB,而 log file文件只有1024KB,(刚建立的没有数据的数据库的log file文件也只有1024KB) 这里是不是很有问题?
敬请指导,不胜感激!
吉普赛的歌 版主 2019-01-06
  • 打赏
  • 举报
回复
引用 15 楼 ZJM811192 的回复:
吉普赛的歌”老师: 我按您介绍的方法:“将原来的库, 导入到新库。”但我在具体操作”在源库上右键, 生成数据库创建脚本。修改生成的脚本,添加 _new, 并执行, 生成新的数据库。但在结果栏里一直在显示:“正在调试查阅”。等了半个小时仍是如此。无法继续操作下去。 我查了保存在电脑C盘中的SQL2008的“DATA”文件夹内的数据库文件,发现是: SPJXCGL data file 1587840KB SPJXCGL_1 log file 1024KB 为什么不是通常的SPJXCGL_log ,而是SPJXCGL_1 。而且 data file文件已大至1.58GB,而 log file文件只有1024KB,(刚建立的没有数据的数据库的log file文件也只有1024KB) 这里是不是很有问题? 敬请指导,不胜感激!
无所谓, 这个只是逻辑名称, 常规是 xxx_log , 但可以自己改的。 log file 是记录日志的, 并不是数据, 小很正常的了。 如果数据不重要, 可以把放在云盘上, 帮你看看。
ZJM811192 2019-01-05
  • 打赏
  • 举报
回复
吉普赛的歌”老师:
我按您介绍的方法:“将原来的库, 导入到新库。”但我在具体操作”在源库上右键, 生成数据库创建脚本。修改生成的脚本,添加 _new, 并执行, 生成新的数据库。但在结果栏里一直在显示:“正在调试查阅”。等了半个小时仍是如此。无法继续操作下去。
我查了保存在“DATA”文件夹内的数据库文件,发现是:
SPJXCGL data file
SPJXCGL_1 log file
而不是通常的:
SPJXCGL data file
SPJXCGL_log log file
为什么不是通常的SPJXCGL_log ,而是SPJXCGL_1 。这里是不是有问题?
敬请指导,不胜感激!


netcup 2019-01-05
  • 打赏
  • 举报
回复
还原的数据库的用户名,在新的SQL环境中是无效的。你的那个用户名,打开你的数据库,删除你的数据库下面的用户名
吉普赛的歌 版主 2019-01-05
  • 打赏
  • 举报
回复
你原来的库, 可能有问题了。 建议你将原来的库, 导入到新库: https://blog.csdn.net/yenange/article/details/85854802 当然, 这个操作最好是晚上没什么人用时完成。
ZJM811192 2019-01-05
  • 打赏
  • 举报
回复
“吉普赛的歌”老师:
我使用了您介绍的方法,在sql2008的新建查询里输入 :

SELECT s.[sid] FROM SPJXCGL.sys.sysusers AS s WHERE NAME='SYZ'(注:获取用户 SYZ 的 sid)

但查询结果里一直在显示:正在调试查阅。足足等了半个多小时,还没有结果出来。
是不是因为有用户在使用这个数据库的原因,还是有其他原因?
另外,我在重新安装SQL2008后,要彻底删除因还原SPJXCGL数据库带进的用户名(右击用户名选择“删除”出错),该如何操作?
敬请指导,不胜感激!

吉普赛的歌 版主 2019-01-04
  • 打赏
  • 举报
回复
秋天之落叶 2019-01-04
  • 打赏
  • 举报
回复
运行的时候选择管理员权限运行,试一下是不是权限问题
ZJM811192 2019-01-04
  • 打赏
  • 举报
回复
吉普赛的歌”老师:
十分感谢您的指导!
我原先用的是SQL2000,现在改用SQL2008,不知道SQL2008的查询分析器在哪里,你发来的程序在哪里运行?
敬请指导,不胜感激!
吉普赛的歌 版主 2019-01-03
  • 打赏
  • 举报
回复
不新增登录名, 旧的用户是无效的。 登录名是最原始的凭据, 必须有。 像我#3那样新增一个登录名也不麻烦, 不需要那么纠结吧?
ZJM811192 2019-01-03
  • 打赏
  • 举报
回复
“吉普赛的歌”老师:
我在电脑上重新安装了SQL2008,并还原了原先的自建的SPJXCGL数据库。
重新安装的SQL2008没有登陆名SYZ,但在还原的SPJXCGL数据库中可查到有用户名SYZ,这时,如不在重新安装的SQL2008中新增登陆名SYZ,原SPJXCGL数据库的用户名SYZ及权限还继续有效吗?(也就是说可以不在重新安装的SQL2008中新增登陆名SYZ)
敬请您指导,不胜感激!
吉普赛的歌 版主 2019-01-02
  • 打赏
  • 举报
回复
这样做的好处是: 不需要删除原有库上的用户, 只需要创建一个与之匹配的登录名即可。
吉普赛的歌 版主 2019-01-02
  • 打赏
  • 举报
回复
--注:必须分开执行
--1. 从 SPJXCGL 库中查得现有用户 SYZ 的 sid, 记下结果,复制出来
SELECT s.[sid] FROM SPJXCGL.sys.sysusers AS s WHERE NAME='SYZ'

--2. 将上一步的 sid 结果币制粘贴到下面,再执行,
--即可得到一个新的用户,并可连接原来的库
CREATE LOGIN [SYZ] WITH PASSWORD = '123456',
SID = 0x0BEE3921451A454EB628FA1140330FFF,	--实际值从上面的查询从获取
DEFAULT_DATABASE = [SPJXCGL],	--默认数据库
CHECK_EXPIRATION = OFF,			--强制密码过期 关闭
CHECK_POLICY = OFF				--强制密码策略 关闭
ZJM811192 2019-01-02
  • 打赏
  • 举报
回复
“吉普赛的歌”老师:
谢谢您的指导!
但我按你介绍的方法进行数据库用户的删除,却显示:出现错误,删除对于用户”SYZ“失败。
不知是何原因删除不了。
敬向电脑专家请教, 应如何删除自建数据库中的用户?
吉普赛的歌 版主 2019-01-01
  • 打赏
  • 举报
回复
右键就可以删除了

34,594

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧