志在指尖
用双手敲打未来

C#使用OracleBulkCopy

首要运用PL/SQL经过语句:select*fromv$version;查询出运用的oracle版别,弄到对应版别的Oracle.DataAccess.DLL
我本地运用版别为:11.2.0.4.0(64位)
Oracle.DataAccess.DLL下载地址:https://www.oracle.com/database/technologies/odac-downloads.html
下载之后DLL地点目录:ODAC112040Xcopy_64bit\odp.net20\odp.net\bin\2.x\Oracle.DataAccess.dllC#
代码如下(转):
///
///批量刺进数据
///
///数据表
///数据库方针表名
///
publicboolExcuteBulkData(DataTabletable,stringtargetTableName)
{
boolresult=false;
using(OracleConnectionconn=newOracleConnection(connectionString))
{
using(OracleBulkCopybulkCopy=newOracleBulkCopy(connectionString,OracleBulkCopyOptions.Default))
{
if(table!=null&&table.Rows.Count>0)
{
bulkCopy.DestinationTableName=targetTableName;
for(inti=0;i{
stringcol=table.Columns[i].ColumnName;
bulkCopy.ColumnMappings.Add(col,col);
}
conn.Open();
bulkCopy.WriteToServer(table);
result=true;
}
}
}
returnresult;
}
第一次项目启动之后报错信息:其他信息:未能加载文件或程序集“Oracle.DataAccess,Version=2.112.4.0,Culture=neutral,PublicKeyToken=89b483f429c47342”或它的某一个依靠项。试图加载格局不正确的程序。
找到解决办法:visualstudio启动时修改解决方案渠道:,这儿把AnyCPU改为x64,没有X64需要自己增加。
之后又碰到如下错误:其他信息:ORA-1843:notavalidmonth,后来发现是传入方法的DataTable里边对应字段没有设置时刻格局。(DataTable里边字段顺序和格局要和刺进的表一致

未经允许不得转载:IT技术网站 » C#使用OracleBulkCopy
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

志在指尖 用双手敲打未来

登录/注册IT技术大全

热门IT技术

C#基础入门   SQL server数据库   系统SEO学习教程   WordPress小技巧   WordPress插件   脚本与源码下载