我用的开发环境是vs2005,sqlserver也是安装vs的时候一块儿安上的。
我的连接语句是这么写的string cnstr = "server=localhost\\SQLEXPRESS;database=User;Trusted_Connection=SSPI";
但是程序报错说
无法打开登录所请求的数据库 "User"。登录失败。
用户 'XL-231480690791\Administrator' 登录失败。

大家帮帮忙,看看是怎么回事谢谢啦~~~~

解决方案 »

  1.   

    sqlserver也是安装vs的时候一块儿安上的
    ------------
    用VS自带的SQL需要再安装一个40几M的文件
    如果楼主已经安装了,那楼主就再创建一个用户,对新新用户授权
    -------
    没用过SQL Server 数据库,第一次配置费了不少劲,微软的东西有点绕,能遇到的问题都遇到了,看过此文后,数据库基本都能连接。废话不说。我的系统是xp,不能装SQL Server 2005的企业版本,只能装开发版和Express版,Express是免费版,学习用它就够了。首先需要下载一个名为SQLServer2005_SSMSEE.msi,这个文件一搜索就有下载(http://download.microsoft.com/download/1/1/0/110d908f-c445-4523-b939-220c7d135f3d/SQLServer2005_SSMSEE.msi)下载安装。用VS2005菜单 工具 连接到数据库 出现连接服务器资源管理器,右键 数据连接 如下图:
     
    添入服务器名和数据库名,选择验证方式,一般会出现错误;
    "在默认的设置下SQL Server不允许远程连接可能会导致此失败 error:40无法打开到SQL     Server的连接连接失败。"
    1.此时需要开启sql2005远程连接功能
    开始 --     Microsoft SQL Server 2005 -- 配置工具-- SQL Server 外围应用配置器 --     远程控制 ---- 服务和连接外围应用配置器 SQLEXPRESS -- Database Engine        
    勾选 本地连接和远程连接,同时使用TCP/IP和name pipes ,确定 。        如下图
        2.登陆设置改为SQL Server身份验证
    开始 --     Microsoft SQL Server 2005     -- SQL Server Management Studio Express,选择Windows 身份验证 连接 ,进去后在左边的 对象资源管理器 的第一项 就是你的服务器名 点右键 属性,选择 安全 选择SQL Server和windows验证模式 如下图:
     
    3.设置一个SQL     server方式的用户名和密码
    开始 -- Microsoft SQL Server 2005  -- SQL Server Management Studio Express,选择Windows 身份验证连接,点上面的新建立查询在右面输入 sp_password null,'123456','sa' ,点上面的执行,这样就设置了一个用户名为sa,密码为:123456的用户,但是现在还不能用用户名sa登陆如下图: 
    4.开启sa帐号 
      开始 -- Microsoft SQL Server 2005  -- SQL Server Management Studio Express ,选择Windows 身份验证连接,点左面的对象资源管理器--安全性 --登陆名 -- sa 右键属性,点状态 登陆 勾选启用 如下图 
     
    5.重启数据库服务器
    如下图
     
    6.测试连接 vs2005
    -------------
    大多经过上述几步后都能解决
      

  2.   

    解决方法:1. 在DOS下, 运行:
    [code=SQL]
    1) c:\> sqlcmd -E -SCOMPUTER2\SQLEXPRESS -d master
    2) 然后, 1> alter login [你的windows login(要全称)] with default_database = master
            2> go
            3> exit--------行了 
      

  3.   

    那是因为你数据库里没有USER这个用户,你可以尝试使用SA登陆
      

  4.   

    public static string com = "Data Source=localhost\\SQLEXPRESS;Initial Catalog=数据库;Integrated Security=True";这是本地使用WINDOWS用户登陆连接的字符串localhost可以用.来代替
      

  5.   

    你如果是直接在vs2005里创建数据库的话,并且也是在里面建表的话,在web.config里这样设置 <connectionStrings>
      <add name="DatabaseConnectionString" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|Database.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True"
       providerName="System.Data.SqlClient" />
     </connectionStrings>然后在使用的时候为:
        public string CONN_STR = ConfigurationManager.ConnectionStrings["DatabaseConnectionString"].ConnectionString;另外就是使用了。