我是c#新手,请教数据库连接问题,谢谢
SqlConnection conn = new SqlConnection("Data Source=.;Initial Catalog=test;User Id=sa,Password=;");

string TestTemp = "select * from test";SqlCommand Command = new SqlCommand(TestTemp,conn);Command.Connection.Open();Command.ExecuteNonQuery();Command.Connection.Close();conn.Close();这样写对吗??要怎样才能执行我的select * from test呢?谢谢

解决方案 »

  1.   

    SqlConnection conn = new SqlConnection("server=(local);database=test;User Id=sa,Password=;");
      

  2.   

    string ss="server=192.168.1.5;database=test;userid=sa,pwd=123456;");
    SqlConnection mycon=new SqlConnection(ss);
      

  3.   

    好像不是连接的问题我跟踪了下
    它报
    未处理的“System.Data.SqlClient.SqlException”类型的异常出现在 system.data.dll 中。其他信息: 系统错误。的错误提示为Command.ExecuteNonQuery();出了问题~我怀疑是数据库命令操作的错误写法,但是一时又找不资料,不知道如何取找,谢谢 各位大哥了
      

  4.   

    Command.ExecuteNonQuery();
    ---->你这个执行是不对滴
    搂主看看
    SqlDataAdapter的示例就明白了
      

  5.   

    ExecuteNonQuery不能返回结果集!
    对于 UPDATE、INSERT 和 DELETE 语句,返回值为该命令所影响的行数。对于其他所有类型的语句,返回值为 -1。再者,你可以catch以下异常,看看报错的原因是什么!
      

  6.   

    Select 语句你要么用SqlDataReader来读取,要么用SqlDataAdapter来得到数据
    要不:
    SqlCommand Command = new SqlCommand("select Count(*) from test",conn);
    MessageBox.Show(Command.ExecuteNonQuery());SqlConnection conn = new SqlConnection("Data Source=.;Initial Catalog=test;User Id=sa,Password=;");

    SqlCommand Command = new SqlCommand("select * from test",conn);
    Command.Connection.Open();SqlDataReader dr =Command.ExecuteReader();
    if (dr.Read)
    {
     MessageBox.Show(dr.GetValue(0));//Reading...
    }
    //Command.ExecuteNonQuery();conn.Close();
      

  7.   

    但是我现在的想法是只想要sql语句的执行,不想要它的结构和填充到datagrid等我只要用程序连接,然后执行我的sql语句就可以~~
    但是这样也要搞的那么复杂吗?
    才开始学,请各位大哥别见效,谢谢!~呵呵
      

  8.   

    我试了一下,只要把  ",Password=" 去掉就可以了!!
      

  9.   

    但是  ExecuteNonQuery不能返回结果集!
    对于 UPDATE、INSERT 和 DELETE 语句,返回值为该命令所影响的行数。对于其他所有类型的语句,返回值为 -1。
      

  10.   

    http://www.connectionstrings.com/ (各数据库连接大全)
    -------------------------------------------------------------
      

  11.   

    好像还是不行啊??各位大哥,能再看看吗???
    我只要它执行就可以了,不需要返回值,但是每次到
    Command.ExecuteNonQuery();就执行不下去了,就出错谢谢了
    SqlConnection conn = new SqlConnection("Data Source=.;Initial Catalog=test;User Id=sa,Password=;");

    string TestTemp = "select * from test";SqlCommand Command = new SqlCommand(TestTemp,conn);Command.Connection.Open();Command.ExecuteNonQuery();Command.Connection.Close();conn.Close();
      

  12.   

    你只要将User Id=sa,Password=;中间的,改成;就可以了
      

  13.   

    使用ExecuteNonQuery 来执行目录操作(例如查询数据库的结构或创建诸如表等的数据库对象),或通过执行 UPDATE、INSERT 或 DELETE 语句,在不使用 DataSet 的情况下更改数据库中的数据。
    虽然 ExecuteNonQuery 不返回任何行,但映射到参数的任何输出参数或返回值都会用数据进行填充。
    对于 UPDATE、INSERT 和 DELETE 语句,返回值为该命令所影响的行数。对于所有其他类型的语句,返回值为 -1。如果发生回滚,返回值也为 -1。所以ExecuteNonQuery 是用来对UPDATE、INSERT 和 DELETE 语句的操作。你现在的目的是想执行它,但从你的代码上来看,就算你执行了,好像运行时也显不出什么效果。你用DataReader或DataSet吧,读出来就行,不需要做别的控件的数据源。
      

  14.   

    你不可能是数据库链接错误,否则也不会执行Command.Connection.Open();
    这条语句
      

  15.   

    具体要怎么写,具体怎么用DataReader和DataSet啊?我看例子,试用,但是没一次成功的,郁闷
    SqlConnection conn = new SqlConnection("Data Source=.;Initial Catalog=test;User Id=sa,Password=;");

    string TestTemp = "select * from test";SqlCommand Command = new SqlCommand(TestTemp,conn);Command.Connection.Open();SqlDataReader dr = Command.ExecuteReader();
    if (dr.Read())
    {
    MessageBox.Show("Succeeful!");
     }
    dr.Close();Command.Connection.Close();conn.Close();具体目的就是要sql语句执行操作就可以了,谢谢了
      

  16.   

    try
    {
    SqlConnection conn = new SqlConnection("Data Source=.;Initial Catalog=test;User Id=sa,Password=;");

    string TestTemp = "select * from test";SqlCommand Command = new SqlCommand(TestTemp,conn);conn.Open();Command.ExecuteNonQuery();conn.Close();
    }
    catch(Exception ex)
    {
      MessageBox.Show(ex.Message);
    }