如何在c#中执行超过1行的sql命令

时间:2011-11-21 17:49:17

标签: c# sql

我想知道如何一次执行多个SQL命令。

此刻我正是这样做的:

using (SqlConnection sqlConnection1 = new SqlConnection(connectionString))
{
    using (SqlCommand cmd = new SqlCommand())
    {
        cmd.CommandText = "SELECT nome FROM teste";
        cmd.CommandType = CommandType.Text;
        cmd.Connection = sqlConnection1;

        sqlConnection1.Open();

        // execute the command
        SqlDataReader rdr = cmd.ExecuteReader();
        while (rdr.Read())
        {
            listBox1.Items.Add(rdr["name"].ToString()); 
        }
    }
}

但是如何执行

use [databaseX]
SELECT nome FROM teste

在我的c#程序中?

3 个答案:

答案 0 :(得分:4)

用分号(;)分隔多个语句。

(顺便说一下,通常不需要use语句,因为它是在连接字符串中设置的。)

答案 1 :(得分:3)

使用@声明字符串:

cmd.CommandText = @"
    use [databaseX]
    SELECT nome FROM teste
";

或者实际上逃脱了换行符:

cmd.CommandText = "use [databaseX]\nSELECT nome FROM teste";

答案 2 :(得分:3)

SQL使用;来分隔命令/查询。

SELECT * FROM Table1; SELECT * FROM Table2;

导致结果集。