兄弟.分数这个高,是不是浪费了点呀,其实不难的,就是在存储过程中申明个变量,把这个sqly语句(其实就可以当字符串看)传进去,就ok了.
create proc proc_Sql
(
@ParaSql --接受sql的变量
)
as
要执行的sql语句
然后执行exec(@ParaSql)
如果是在程序中要传递sql语句到数据库中去,
SqlConnection con = new SqlConnection();//()中是连接数据库的连接字符串
SqlCommand cmd = new SqlCommand("proc_Sql", con);//()是存储过程名和,连接数据库的对象
cmd.CommandType = CommandType.StoredProcedure;//设置cmd对象执行的是存储过程
cmd.Parameters.Add("@ParaSql", VarChar);//存储过程中的参数,和参数类型
cmd.Parameters["@ParaSql"].Value = StrSql;//把要传入存储过程的的sql语句放在这个里
SqlDataAdapter sda = new SqlDataAdapter(cmd);//创建数据库适配器
DataSet ds = new DataSet();//读取数据库
sda.Fill(ds);//填充数据集
这样就可以把sq;l语句弄到存储过程中去了.