ExecuteReader:可以读一个表的记录,只能读不能写

ExecuteNonQuery:可以写也可以读

ExecuteScalar:只能读一条记录,一般用来判断数据库是否有数据等,只能读不能写

ExecuteNonQuery():这个可以让我们在更新数据库时不使用 DataSet 而使用 ExecuteNonQuery 更改数据库中的数据。通过执行 UPDATEINSERTDELETE SQL语句就 可以达到更改数据库中的数据目的。即使 ExecuteNonQuery 不返回任何行,映射到参数的输 出参数或返回值仍然使用数据填充。但对于 UPDATE、INSERT 和 DELETE SQL语句,返回的 值就是受ExecuteNonQuery()命令影响的行数。对其它类型的语句以及回退来说,返回的值 都是 -1。

public void CreateDatabaseAsCopy(string sourceDatabase, string destDatabase, string connectionString)
        {
            using (SqlConnection conn = new SqlConnection(connectionString))
            {
                conn.Open();
                using (SqlCommand cmd = conn.CreateCommand())
                {
                    cmd.CommandText = string.Format(RestoreSQLString, destDatabase, sourceDatabase);
                    cmd.ExecuteNonQuery();
                    Logger.Info(string.Format("Create database {0} as copy of {1}", destDatabase, sourceDatabase));
                }
            }
        }
View Code

相关文章: