本机SQL数据库,sa口令为sybase,数据库名为baobiao,在C#中连接时出错,连接字符串为:strConn="Data source=(local);initial catalog=baobiao;user id=sa;password=sybase;"
跟踪SqlConnection conn=new SqlConnection(strConn);中的conn值为:
{System.Data.SqlClient.SqlConnection}
    System.ComponentModel.Component: {System.Data.SqlClient.SqlConnection}
    _constr: {System.Data.SqlClient.SqlConnectionString}
    _fIsClosing: false
    _hidePasswordPwd: false
    _infoMessageEventHandler: <未定义的值>
    _internalConnection: <未定义的值>
    _localTransaction: <未定义的值>
    _objectState: Closed
    _preparedCommands: <未定义的值>
    _reader: <未定义的值>
    _sdc: <未定义的值>
    _SqlClientPermission: {System.Data.SqlClient.SqlClientPermission}
    _stateChangeEventHandler: <未定义的值>
    ConnectionString: "Data source=(local);initial catalog=baobiao;user id=sa;password=sybase;"
    ConnectionTimeout: 15
    Database: "baobiao"
    DataSource: "(local)"
    IsClosing: false
    IsShiloh: <错误: 发生 {System.NullReferenceException} 类型的异常>
    LocalTransaction: <未定义的值>
    PacketSize: 8192
    Parser: <未定义的值>
    Reader: <未定义的值>
    ServerVersion: <错误: 发生 {System.InvalidOperationException} 类型的异常>
    SqlClientPermission: {System.Data.SqlClient.SqlClientPermission}
    State: Closed
    WorkstationId: "WDS-YYY"
跟踪conn.open();异常后的er值为:
{System.Data.SqlClient.SqlException}
    System.SystemException: {"未知错误。"}
    _errors: {System.Data.SqlClient.SqlErrorCollection}
    Class: 20
    Errors: {System.Data.SqlClient.SqlErrorCollection}
    LineNumber: 0
    Message: "未知错误。"
    Number: 109
    Procedure: "ConnectionOpen (LoadNetlibs())."
    Server: ""
    Source: ".Net SqlClient Data Provider"
    State: 0

解决方案 »

  1.   

    初学的话你试试看用向导来创建连接
    我给出个连接字符串:
    "Server=(local);database=/*你使用的数据库名*/;user=sa;password=sybase"
      

  2.   

    我也是初学者
    我用向导也有错啊 
    用户 'sa' 登录失败。 
    说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Data.SqlClient.SqlException: 用户 'sa' 登录失败。源错误: 
    行 25:  SqlCommand sqlcommand=new SqlCommand();
    行 26:  sqlcommand.CommandText="select * from Customers1";
    行 27:  sqlConnection1.Open();
    行 28:  sqlcommand.Connection=sqlConnection1;
    行 29:  SqlDataReader sqldatareader=sqlcommand.ExecuteReader();
     源文件: h:\inetpub\wwwroot\webform4\webform1.aspx.cs    行: 27 堆栈跟踪: 
    [SqlException: 用户 'sa' 登录失败。]
       System.Data.SqlClient.ConnectionPool.GetConnection(Boolean& isInTransaction) +472
       System.Data.SqlClient.SqlConnectionPoolManager.GetPooledConnection(SqlConnectionString options, Boolean& isInTransaction) +372
       System.Data.SqlClient.SqlConnection.Open() +384
       Webform4.WebForm1.Page_Load(Object sender, EventArgs e) in h:\inetpub\wwwroot\webform4\webform1.aspx.cs:27
       System.Web.UI.Control.OnLoad(EventArgs e) +67
       System.Web.UI.Control.LoadRecursive() +35
       System.Web.UI.Page.ProcessRequestMain() +731 
    --------------------------------------------------------------------------------
      

  3.   

    System.Data.SqlClient.SqlConnection conn = new System.Data.SqlClient.SqlConnection ();
        conn.ConnectionString = "integrated security=SSPI;data source=数据库所在机子名;persist security info=False;initial catalog=数据库名";
      

  4.   

    "Provider=SQLOLEDB.1;Persist Security Info=False;Data Source=(local);Initial Catalog=hitachinew;User ID=sa;Password=sa"
      

  5.   

    to:fengzhizi007(heheheheh a) 
    你现在连接字符串对了
    你在SQLserver企业管理器中单击服务器,右键选择属性
    在安全性选项卡中把身份验证设为SQLserver和windows
      

  6.   

    "data source=(local);initial catalog=ww;persist security info=False;user id=sa;pwd=ss;packet size=4096;connect timeout=30"
      

  7.   

    strConn="server=127.0.0.1;user id=sa;password=sybase;database =baobiao "
      

  8.   


     
     String connectionString = "server= localhost;database = baobiao;uid = sa;pwd = sybase";
     如果是WINDOWS集成安全性登陆的话
     String connectionString = "server = localhost;database = baobiao;Integrate security = SSPI" SqlConnection con = new SqlConnection(connectionString);
     con.open();
     可以了
      

  9.   

    就是像楼上这样做的,在open的时候,有错啊
      

  10.   

    to:wdszya (wdszya) 
    你现在连接字符串对了
    你在SQLserver企业管理器中单击服务器,右键选择属性
    在安全性选项卡中把身份验证设为SQLserver和windows!!!!!!!
      

  11.   

    谢谢 caicheng(菜菜) 的回复,我的SQLserver的身份验证已设为SQLserver和windows,还是上面的错误,还有没有其它问题啊?