SQL Server无法打开用户默认数据库
无法打开用户默认数据库,登录失败,这是SQL Server使用者熟悉的问题之一。在使用企业管理器、查询分析器、各类工具和应用软件的时候,只要关系到连接SQL Server数据库的时候,都有可能会碰到此问题,引起此错误发生的原因比较多,下面我们就来详细分析引起此问题的原因以及解决办法。
一、原因
登录帐户的默认数据库被删除。
二、解决方法:
(一)、使用管理员帐户修改此帐户的默认数据库
1、打开企业管理器,展开服务器组,然后展开服务器
2. 展开"安全性",展开登录,右击相应的登录帐户,从弹出的菜单中选择,属性
3、重新选择此登录帐户的默认数据库
(二)、若没有其他管理员登录帐户,无法在企业管理器里修改,使用isql命令行工具
isql /U"sa" /P"sa的密码" /d"master" /Q"exec sp_defaultdb N'sa', N'master'"
如果使用Windows验证方式,使用如下命令行,将默认数据库改成非丢失的数据库:
isql /E /d"master" /Q"exec sp_defaultdb N'BUILTIN\Administrators', N'master'"
(2)由于改变了系统密码导致SQLSErver无法启动
解决办法是:
点击运行,键入services.msc,打开服务程序,找到SQLSERVER项目,选择属性项之二-‘登录’,把登录密码改为操作系统Administrator帐户登录密码,重新启动SQLSErver,即可正常启动。
SQL Server 2005
在 SQL Server 2005 中,可以使用 sqlcmd 实用程序更改默认数据库。为此,请按照下列步骤操作:◆1. 单击“开始”,单击“运行”,键入 cmd,然后按 Enter。
◆2. 根据 SQL Server 登录使用的身份验证种类,请使用以下方法之一:• 如果 SQL Server 登录使用 Microsoft Windows 身份验证连接到该实例,请在命令提示符处键入以下内容,然后按 Enter:
sqlcmd –E -S InstanceName –d master
• 如果 SQL Server 登录使用 SQL Server 身份验证连接到该实例,请在命令提示符处键入以下内容,然后按 Enter:
sqlcmd -S InstanceName -d master -U SQLLogin -P Password
注意:InstanceName 是要连接到的 SQL Server 2005 实例的名称的占位符。SQLLogin 是已删除其默认数据库的 SQL Server 登录的占位符。Password 是 SQL Server 登录密码的占位符。
◆3. 在 sqlcmd 提示符处,键入以下内容,然后按 Enter:
Alter LOGIN SQLLogin WITH DEFAULT_DATABASE = AvailDBName
注意:AvailDBName 是可由实例中 SQL Server 登录访问的现有数据库的名称的
相关文档:
行列转换
create table test(id int,name varchar(20),quarter int,profile int)
insert into test values(1,'a',1,1000)
insert into test values(1,'a',2,2000)
insert into test values(1,'a',3,4000)
insert into test values(1,'a',4,5000)
insert into test values(2,'b',1,3000)
insert into test values(2, ......
有关分页 SQL 的资料很多,有的使用存储过程,有的使用游标。本人不喜欢使用游标,我觉得它耗资、效率低;使用存储过程是个不错的选择,因为存储过程是经过预编译的,执行效率高,也更灵活。先看看单条 SQL 语句的分页 SQL 吧。
方法1:
适用于 SQL Server 2000/2005
SELECT TOP 页大小 *
from tab ......
启动 MS SQL SERVER (2000 -2008都适用):
cmd>net start mssqlserver
启动 非缺省实例:
cmd>net start mssql$[instance name]
注:命令行需要有Administrator权限。
停止SQLSERVER 服务器:
cmd>net stop mssqlserver
cmd>net stop mssql$[instance name] ......
*
* 功能说明:备份和恢复SQL Server数据库
* 作者: 刘功勋;
* 版本:V0.1(C#2.0);时间:2007-1-1
* 当使用SQL Server时,请引用 COM组件中的,SQLDMO.dll组件
* 当使用Access中,请浏览添加引用以下两个dll
* 引用C:/Progra ......