C#insert语句

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#insert语句相关的知识,希望对你有一定的参考价值。

我用C#做了个winform的程序,现在有个问题,我用语句把xml中的数据导入到dataset中
DataSet ds = new DataSet();
ds.ReadXml("c:\\data.xml");

我现在想把dataset中数据insert到Oracle中,语句想用
insert into test(ename,job,sal) select ename,job,sal from 表名
请问这个表名应该怎么写,才能把Dataset中相应的数据insert到数据库中?
那要怎么写才对呢?
我要把dataset中相应字段insert到Oracle的test表中,最好效率高些,因为数据很多

可以将dataset数据转到datatable中,然后再像上面写的那样处理吗?

表名这个表名必须是数据库有的,因为语句必须提交到数据库执行。
只能用一个for循环,把dataset里面的数据一行一行地插入到数据库。
参考技术A 这种写法不可行。

需要 遍历DATATABLE的每一行,循环插入
参考技术B 不行的。sql不能访问你内存里的东西。 参考技术C 先建立一个数据库,在数据库中建立一个表,然后读取ds中的每一行数据,把每一行数据插入这个表中

用excel批量生成insert语句

excel表格中有A、B、C三列数据,分别对应TableName的UserId、UserName、UserPwd三个字段。如下图所示

技术图片

 

在excel的D2的位置,也就是A、B、C列的后面一列,添加下面公式

=CONCATENATE("INSERT INTO TABLENAME(UserId,UserName,UserPwd) VALUES(‘"&A2&"‘,‘"&B2&"‘,‘"&C2&"‘)")

技术图片

技术图片

 

 

可以看到就自动生成了一条insert语句。

然后定位到D2列,将鼠标放在D2的右下角位置,就出现了一个黑色的十字形状,然后选中直接往下拖,就可以批量的生成insert语句了

技术图片

 

技术图片

 

以上是关于C#insert语句的主要内容,如果未能解决你的问题,请参考以下文章

insert 插入带select查询

INSERT INTO 语句 c#.net Winforms Devexpress 中的语法错误?

insert语句返回值

oracle 如何返回当前序列值 比如我insert语句过后立刻要获取当前insert结果的序列值,怎么做,求救......

用excel批量生成insert语句

40 | insert语句的锁为什么这么多?