一个已经固定的程序,是使用ODBC连接数据库
现在我建立了一个ODBC连接,数据库是SQL SERVER 2008,在建立ODBC时,测试是完全成功的,用户名是sa,然后程序中调用ODBC连接数据库时,会报错:
[Microsoft][ODBC SQL Server Driver][SQL Server]用户'' 登录失败。
看起来像是用空用户名去登录一样请问是由什么原因引起的,要怎么修改呢?

解决方案 »

  1.   

    config里面设置。
    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
    <appSettings>
    <add key="connStr" value="data source=CORONABOOK;uid=sa;pwd=sa;database=数据库名"></add>
    </appSettings>
    </configuration>
      

  2.   

    是一个已经固定的写死的程序,我没得地方改配置,唯一能改的就是ODBC的名字……
      

  3.   

    "server=IP;database=数据库名;user id=登录名;password=密码"
      

  4.   

    不好意思错了。
    ODBC的是
    "Driver={SQL Server};server=IP;uid=用户名;pwd=密码;database=数据库名;");
      

  5.   

    修改登录用户属性,修改密码,通过SQL Server身份验证。
    配置相关属性
    ODBC很少使用,一般都通过连接字符串
      

  6.   

    "Driver={SQL Server};Server=A;Database=pubs;Uid=sa;Pwd=sa;"
      

  7.   

    数据源 (ODBC) => 创建DnsconnectString = "DNS=DnsName; uis=sa; pwd=yourPassword";
      

  8.   

    谢谢各位热心回答,不过好像都没看清楚我的问题
    现在我有一个程序,我是不允许修改的,然后程序在启动的时候,要我指定一个ODBC的名字,用于连接数据库
    ODBC在控制面板->管理工具->数据源(ODBC)里面设置的,设置好了,我把那个名字填写到程序里面就好,根本不需要设置连接字符串什么的,就算我想用连接字符串也没得地方改……现在我设置了一个系统DSN,在设置的时候,测试连接数据库是可以的,但是,把ODBC的名字写到程序中后,程序显示,连接数据库出错,“用户''登录失败”
      

  9.   

    那要改程序的
    连接字符串 要指定你的dsn的名称 例如"DSN=XXXX;DRIVER=(Microsoft ODBC for Oracle);Uid=XXX; Pwd=XXX”
      

  10.   

    在管理工具-数据源(ODBC)-系统DSN