当前位置:编程学习 > C#/ASP.NET >>

我写了个插入的存储过程,大家来看看sql及cs有没有错

--------------------编程问答-------------------- 1. set @TmpInsert = 'insert into @TableName (@TableList) values (@TableValues)'这句有错误.
  应该写成:
set @TmpInsert = 'insert into '+@TableName +'('+@TableList +') values ('+@TableValues+')'

2. SqlCommand command = new SqlCommand(这里不知写什么, conn);
直接写成:
SqlCommand command = new SqlCommand(conn);就行,其他不用改变. --------------------编程问答-------------------- 这样的存储过程有什么用,还不如不用... --------------------编程问答--------------------
引用 2 楼  的回复:
这样的存储过程有什么用,还不如不用...


何解?愿闻其祥 --------------------编程问答-------------------- refer:
http://www.cnblogs.com/insus/articles/1418875.html --------------------编程问答--------------------  把这两句写成一句就行了
SqlCommand command = new SqlCommand(这里不知写什么, conn);
command.CommandText = "InsertDataSet"; //存储过程的名
>>
SqlCommand command = new SqlCommand("InsertDataSet", conn);
  --------------------编程问答--------------------
引用 3 楼  的回复:
引用 2 楼  的回复:
这样的存储过程有什么用,还不如不用...


何解?愿闻其祥


你想一下,用这个存储过程跟在代码里拼接字符串没什么两样,用存储过程反而还多了一层。 --------------------编程问答--------------------

  string strSql=string.Empty;
  for(){
  strSql+="insert into TableName(字段1,字段2,字段3,...) values(值1,值2,值3,...);"
  }
   
  int result = DHelper.ExecuteNonQuery(strSql);


批量其实也就是拼接一下sql然后将多条sql一起执行而已,上面给出了简单的思路,不过LZ在使用的时候需要注意一点,在执行的时候最好加上事务,成功一起执行失败就回滚。 --------------------编程问答-------------------- SqlCommand command = new SqlCommand(这里不知写什么, conn);
其实里面什么都不用写。直接给command的属性赋值是一样的。。。在括号里写只是初始化的时候调用了构造函数去对属性赋值。。你先创建再单独去给属性赋值也是一样的。。 --------------------编程问答--------------------
引用 6 楼  的回复:
引用 3 楼 的回复:

引用 2 楼 的回复:
这样的存储过程有什么用,还不如不用...


何解?愿闻其祥


你想一下,用这个存储过程跟在代码里拼接字符串没什么两样,用存储过程反而还多了一层。


那应该怎样,本人菜鸟呀
补充:.NET技术 ,  ASP.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,