Sql Server 的Web应用问题集锦

一.provider: SQL 网络接口, error: 26 - 定位指定的服务器/实例时出错
在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。
首先请确认SQL SERVER EXPRSS已安装到本地计算机上,并且SQL SERVER (SQLEXPRESS)服务已经成功启动。
如果问题仍然存在,可以尝试应打开“SQL Server 外围应用配置器”,选择“服务和连接的外围应用配置器”,
然后将“远程连接”配置为“同时使用 TCP/IP 和 named pipes”


二.由于启动用户实例的进程时出错,导致无法生成 SQL Server 的用户实例。该连接将关闭。
将连接字符串中的“User Instance=True”修改为“User Instance=False”即可。


三.无法将文件 'X:\Website\App_Data\Database.mdf' 作为数据库 'XXX'. 附加。当前命令发生了严重错误。应放弃任何可能产生的结果。
需要为X分区以及X分区的子文件夹和文件分配Users组的“读取”权限。


四.尝试为文件 X:\Website\App_Data\Database.mdf 附加自动命名的数据库,但失败。
已存在同名的数据库,或指定的文件无法打开或位于 UNC 共享目录中。
首先要确认已经为X分区以及X分区的子文件夹和文件分配了Users组的“读取”权限。
如果问题仍然存在,请使用SQL Server Management Studio连接到SQLEXPRESS数据库实例,检查是否有名称是“Database”的数据库存在。
如果有,分离同名数据库即可。(特别是这一个,很容易造成莫名其妙的错误)


五.无法打开用户默认数据库"xxx"。登录失败。用户 'NT AUTHORITY\NETWORK SERVICE' 登录失败。
异常详细信息: System.Data.SqlClient.SqlException: 用户 'xxx\ASPNET' 登录失败。

01.数据库文件Database.mdf 的读写权限被设置成只有NETWORK SERVICE才具有。
解决方法是先停止掉SQL SERVER (SQLEXPRESS)服务,然后从父项集成权限,再次启动SQL SERVER(SQLEXPRESS)服务即可。

02.因为程序连接SQLServer的连接字符串是用了windows集成登陆,可以改成用数据库帐号密码登陆。
连接字符串的写法是:server=localhost;uid=sa;pwd=xxxx;database=master;
server: 数据库服务器的机器名或者IP,如果是同一台机可用(localhost)
uid: 数据库登陆帐号
pwd: 数据库密码
database: 数据库初始owner名称;

解决办法:
(1).右击桌面我的电脑,选择“管理”,双击打开的“计算机管理”对话框中的“本地用户和组”下的“组” 在右边的窗口中双击“Remote Desktop Users”组,
在打开的“Remote Desktop Users”属性对话框中 单击添加,在打开的“添加用户”对话框中单击“高级”,
再单击“立即查找”按钮,在“搜索”结果中 双击ASPNET(如果是IIS6.0“NETWOR SERVERCE”)再点击两次确定完成添加“用户”

(2).单击“开始”--“所有程序”--“Microsoft SQL Server”--“企业管理器”在打开的“控制台根目录” 选择相应的数据库,右击该数据库的中的“用户”,
选择“新建数据库用户”。在“新建用户”对话 框中点击“登陆名”右侧的下拉列表框,选择“新建”,打开“新建登陆对话框”。
点击名称右侧的 省略号按钮,在打开的对话框中将“列出的名称”中选择“本机的名称”,再在下面的名称框中选定“Remote Desktop Users”,
然后点击“成员”按钮,双击 ASPNET(如果是IIS6.0“NETWOR SERVERCE”),然后点击确定,
在“新建登陆对话 框”中的默认设置的“数据库”选项中选择相应的数据库名称,再在“数据库访问”选项下勾选相应 的数据库点击确定,
完成将ASP.net默认的匿名用户添加到SQL。
posted @ 2011-12-29 23:04  xidongs  阅读(731)  评论(0编辑  收藏  举报