这是因为你的ASPNET用户没有权限访问数据库你可以打开SQL Server的企业管理器,把这个用户加入到登陆用户中

解决方案 »

  1.   

    可是我把Test数据库改成:pubs就可以了,这是为什么?
    我在cd_14\NETSDK下建立的数据库为什么不能连接上呢?
      

  2.   

    因为,每个数据库的授权是独立的
    除非该用户有数据库的最高权限你可以参考如下方式:
    asp.net中用sqlclient访问数据库出错
    错误现象:login failed for user:pole\aspnet
    解决办法:在命令行运行如下命令
    osql -E -S (local)\NetSDK -Q "sp_grantlogin ''POLE\ASPNET''"osql -E -S (local)\NetSDK -d Pubs -Q "sp_grantdbaccess ''POLE\ASPNET''"
    osql -E -S (local)\NetSDK -d Pubs -Q "sp_addrolemember ''db_owner'', ''POLE\ASPNET''"
    以上是对数据库Pubs授予POLE\ASPNET用户访问权为每个要访问的数据授权
      

  3.   

    方法一:给你的test数据库增加asp.net用户
    方法二:在安装sql server的时候登录验证选windows与sql server混合登录验证
      

  4.   

    cmsoft:
    如何给你的test数据库增加asp.net用户?
    Thanks!
      

  5.   

    打开SQL 企业管理器,选择“Security”节点,下面有一个“Logins”子节点,选择它然后右边有数据库登陆用户的名称,点右键,选择“New Login”,然后在对话框中选择你本机的ASPNET用户,确定就行了
      

  6.   

    在安全性->登录->新建登录->名称里选ASPNET用户(下面数据库指定你的test数据库,默认是master数据库)
      

  7.   

    cmsoft:
    在安全性->登录->新建登录->名称里选ASPNET用户(下面数据库指定你的test数据库,默认是master数据库)
    我是这么做的,可怎么还是不行?ASPNET用户是不是就是我的本机名,我想应该是的。可为什么还是不行?
      

  8.   

    ASPNET用户不是本机名呀,列出来的名称是你的机器名,下面的名称中选ASPNET(aspnet_wp account)添加它
      

  9.   

    1、你可以使用默认的用户sa访问你刚才建的那个库,那么这时需要混合模式登陆,用户名和密码都是sa;
    2、你打开sql server企业管理器,找到安全性下的登陆,在右边窗口新建登陆,指向你刚才建的数据库,并分配他相应权限;
      

  10.   

    ASPNET(aspnet_wp account)?不会吧,我的还没有这个啊。怎么回事?
      

  11.   

    实在不行就把你的SQL Server改为登录验证方式改为windows与sql server混合登录验证(重新安装sqlserver改,)或者在SqlServer(一般是你机器名或者是(local))上右击选属性->安全性->选sqlserver与windows混合验证
      

  12.   

    我都是这么做的,还重装了SQLServer,可就是不行。