SQL2005O数据库连接错误,无法打开默认数据库,4064错误?_男人海洋_猫扑博客

本文介绍了解决SQL Server 2005因默认数据库设置错误导致无法连接的问题。通过使用sqlcmd命令及ALTER LOGIN语句,更改指定用户的默认数据库,最终解决了连接失败的错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

导读:
  由于没有注意,把数据库分离了,没有改变此登陆名的默认数据库.再次打开SQL2005的控制面板却怎么都联不上了.提示:无法打开默认数据库,代码:4064..,,当时看到,这个晕...........
  
  上网查了一些资料,微软官方给出一个解决方法,由于不太懂DOS下的cmdsql命令格式,结果让自己用了一个多小时才解决此问题,真是汗极了..
  
  微软官方说明:http://support.microsoft.com/kb/307864/zh-cn
  
  按照步骤:
  
  
  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 SQLLoginWITH DEFAULT_DATAbase = AvailDBName
  特别注意:这里的SQLLOGIN为你的提示错误那个用户名,且一定用[]括起来,就因为这个一直没有更新成功.再一个AVAILDBNAME 一般用MASTER就行了.
   注意:AvailDBName是可由实例中 SQL Server 登录访问的现有数据库的名称的占位符。
  
  4、在 sqlcmd 提示符处,键入 GO,然后按 Enter。
  通过以上方法,,我的数据库管理器又可以打开了。但愿大家不要出现我这样的低级错误。

本文转自
http://i.mop.com/nihongyuan/blog/2008/01/16/6091144.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值