多语言展示
当前在线:380今日阅读:113今日分享:31

不常见数据库问题的解决方案

数据库的问题很多,有些也非常让人“欲哭无泪”,至少本人经历的有些数据库问题真的是让人束手无策。特别是有些问题的解决是跟数据相关,又怕数据丢失、让数据无法使用等问题,更是让自己尝试解决的决心少了许多,分享自己经历的数据库问题解决方案,让大家在工作或是学习过程中少点烦恼的事,至少少些一无所知的困惑,多些学习动力。
工具/原料

数据库以及数据库管理工具。

方法/步骤
1

首先需要说明的是这里分享的是SQLServer数据库以及使用数据库管理工具时碰到的数据库问题,但是在类似的其它数据库中也会碰到,程序开发的内容总是大同小异的,因此掌握一些总归是好的。

2

最最基本的就是必须知道点击开始菜单,执行services.msc命令,可以通过列表页查看数据库服务,以及知道了解服务的作用,重新申明SQL Server(MSSQLEXPRESS)的重要性,因为有时候问题的来源就是该服务以外停止或者没有开启的。

3

不知什么原因,突然在数据库管理工具中看到数据库旁边多了个“(单个用户)”,数据库中的数据内容还在,但是想要查看数据库中的表以及索引或者视图等情况时发现无法操作数据库,当然原因有很多,这里分享解决方案,执行SQL语句,目的让数据库设置为多用户权限就行了。

4

设置单用户为多用户代码内容:user master;go--以上代码是引用系统数据库,进行SQL语句。declare @sqlstr varchar(max);set @sqlstr=''--声明变量,并赋值。select @sqlstr=@sqlstr+'; kill '+ririm(spid) from master..sysprocesses where dbid=db_id('数据库名');exec(@sqlstr);--创建语句,执行语句。alter database 数据库名 set multi_user;--设置数据库为多用户。

5

另外一个问题比较常见也是非常头疼的就是,将一个正在使用的数据库通过某种方式复制过来,重新为其创建权限用户,但发现就是无法通过用户连接操作数据库,直接操作可以,用户也可以连接,就是通过登录用户操作不行。这个时候就需要将现有用户名与数据库原有的用户连接起来。

6

目的是将复制过来的数据库中用户与现有的登录用户连接,那样就可以了。代码分享如下:use 数据库名go--操作当前数据库sp_change_user_login 'update_one','原有用户','现有登录用户'最后执行三行代码语句即可。

注意事项

数据库操作为了安全尽量使用备份。

推荐信息