一个很难的多数据插入问题

jsksmark 2009-01-13 04:08:06
一个数据表B表结构如下

bid aid(这里的aid,是另外一个表的主键) cid(这里的cid,是另外一个表的主键)
1 2 4
2 6 4
3 2 1
4 2 6
5 3 5

...更多数据
<form runat="server">
<input runat="server" id="aidlist" type="text">
<input runat="server" id="cid" type="text">
//省略
</form>

我在aidlist这个输入框中,输入的aid的形式入 1,2,3,4这样,以英文逗号隔开,cid中只输入一个id,我想实现的是,当我提交后,则这一组数据同时插入到数据库中
aidlist中的字符串分割开成一个一个的aid,插入到数据库中,请问这样多条数据的插入,该怎么写呢?谢谢
...全文
112 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
第一种办法:用事物,拆分+循环插入

第二种办法:拆分,自己组合SQL语法,实现一次性插入。SQL范例:
insert into tablename
select col1,col2
union
select col1,col2
union
......
union
select col1,col2

PS.
自己选择吧,常规做法为第一种。
che2piaopiao 2009-01-13
  • 打赏
  • 举报
回复
你数据库设计不好!
jsksmark 2009-01-13
  • 打赏
  • 举报
回复
“这一组数据”是指从 aidlist 获取到的所有 aid,也就是 1,2,3,4 这样的

进行查询数据再写入?能给点代码提示吗?不是很明白
anlianganl 2009-01-13
  • 打赏
  • 举报
回复
不是很难吧,建议采用2楼的
春天的气息 2009-01-13
  • 打赏
  • 举报
回复
“这一组数据”具体的是那个表的数据?
不管那个吧, 1,2,3,4这样,以英文逗号隔开,用spit建个数组,然后循环读取aid,进行查询数据再写入,写入用insert语或存储过程都行。
gonghuaqiao 2009-01-13
  • 打赏
  • 举报
回复
你可以定义参数 varchar 保存1,2,3,4...
int 保存 cid
把 varchar 的参数进行字符串处理
然后用while 进行插入

111,131

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧