SQL Server 2005导入Oracle 10g的C#源码

  数据库操作中,我们有时候需要将数据从一个数据库导入到另一个数据库中。本文我们主要介绍一下SQL Server 2005导入Oracle 10g的C#源码程序,希望能够对您有所帮助。

  程序代码的参考如下:

以下是代码片段:
//-------------------------------------------------------------------- 
//AllRightsReserved,Copyright(C)2011,HairihanTECH,Ltd. 
//-------------------------------------------------------------------- 
usingSystem.Data; 
namespaceDotNet.Example 

usingDotNet.BaseManager; 
usingDotNet.DbUtilities; 
publicclassImportExportData 

///<summary> 
///导出数据库到Oralce 
///</summary> 
publicvoidExport() 

//this.ExportTable("Items_Area"); 
//this.ExportTable("Items_AuditStatus"); 
//this.ExportTable("Items_Degree"); 
//this.ExportTable("Items_Duty"); 
//this.ExportTable("Items_Education"); 
//this.ExportTable("Items_Express"); 
//this.ExportTable("Items_Links"); 
//this.ExportTable("Items_MembershipLevels"); 
//this.ExportTable("Items_Nationality"); 
//this.ExportTable("Items_NewsCategory"); 
//this.ExportTable("Items_OnSale"); 
//this.ExportTable("Items_OrganizeCategory"); 
//this.ExportTable("Items_Party"); 
//this.ExportTable("Items_Pattern"); 
//this.ExportTable("Items_PayCategory"); 
//this.ExportTable("Items_PostCategory"); 
//this.ExportTable("Items_RoleCategory"); 
//this.ExportTable("Items_SalaryItemCategory"); 
//this.ExportTable("Items_SendCategory"); 
//this.ExportTable("Items_Sex"); 
//this.ExportTable("Items_Title"); 
//this.ExportTable("Items_Units"); 
//this.ExportTable("Items_UserAuditStates"); 
//this.ExportTable("Items_Wed"); 
//this.ExportTable("Items_WorkCategory"); 
//this.ExportTable("Items_WorkFlowCategories"); 
//this.ExportTable("Items_WorkingProperty"); 
//this.ExportTable("Base_Businesscard"); 
//this.ExportTable("Base_Comment"); 
//this.ExportTable("Base_Contact"); 
//this.ExportTable("Base_ContactDetails"); 
//this.ExportTable("Base_Exception"); 
//this.ExportTable("Base_File"); 
//this.ExportTable("Base_Folder"); 
//this.ExportTable("Base_Items"); 
//this.ExportTable("Base_Log"); 
//this.ExportTable("Base_Message"); 
//this.ExportTable("Base_News"); 

//this.ExportTable("Base_Organize"); 
//this.ExportTable("Base_Module","SELECT*FROMBASE_MODULEORDERBYPARENTID,ID"); 
//this.ExportTable("Base_PermissionItem"); 
//this.ExportTable("Base_Role"); 
//this.ExportTable("Base_Staff"); 
//this.ExportTable("Base_Parameter"); 
//this.ExportTable("Base_Project"); 
//this.ExportTable("Base_Permission"); 
//this.ExportTable("Base_PermissionScope"); 
this.ExportTable("Base_Sequence"); 
//this.ExportTable("Base_StaffOrganize"); 
//this.ExportTable("Base_TableColumns"); 
//this.ExportTable("Base_User"); 
//this.ExportTable("Base_UserAddress"); 
//this.ExportTable("Base_UserOrganize"); 
//this.ExportTable("Base_UserRole"); 
//this.ExportTable("Base_StaffOrganize"); 
//this.ExportTable("Base_WorkFlowActivity"); 
//this.ExportTable("Base_WorkFlowCurrent"); 
//this.ExportTable("Base_WorkFlowHistory"); 
//this.ExportTable("Base_WorkFlowProcess"); 
System.Console.ReadLine(); 

publicvoidExportTable(stringtableName) 

ExportTable(tableName,tableName); 

///<summary> 
///导出一个表 
///</summary> 
///<paramnameparamname="tableName">表名</param> 
///<paramnameparamname="table">里面的数据</param> 
publicvoidExportTable(stringtableName,stringtable) 

//这里是获取数据 
SqlHelpersqlHelper=newSqlHelper("DataSource=localhost;InitialCatalog=UserCenterV32;IntegratedSecurity=SSPI;"); 
sqlHelper.Open(); 
DataTabledataTable=newDataTable(tableName); 
if(tableName.Equals(table)) 

dataTable=sqlHelper.Fill("SELECT*FROM"+table); 

else 

dataTable=sqlHelper.Fill(table); 

sqlHelper.Close(); 
//这里是插入数据 
OracleHelperoracleHelper=newOracleHelper("DataSource=ORACLE11;user=DBO_USERCENTERV32;password=DBO_USERCENTERV32;"); 
oracleHelper.Open(); 
oracleHelper.BeginTransaction(); 
SQLBuildersqlBuilder=newSQLBuilder(oracleHelper); 
try 

//清除表数据 
oracleHelper.ExecuteNonQuery("TRUNCATETABLE"+tableName); 
//创建配套的序列 
//oracleHelper.ExecuteNonQuery("createsequenceSEQ_"+tableName+"minvalue1maxvalue999999999999999999999999startwith1incrementby1cache20"); 
intr=0; 
for(r=0;r<dataTable.Rows.Count;r++) 

sqlBuilder.BeginInsert(tableName); 
for(inti=0;i<dataTable.Columns.Count;i++) 

sqlBuilder.SetValue(dataTable.Columns[i].ColumnName,dataTable.Rows[r][dataTable.Columns[i].ColumnName]); 

sqlBuilder.EndInsert(); 
System.Console.WriteLine("表"+tableName+"已插入第"+r.ToString()+"行"); 

System.Console.WriteLine("--表"+tableName+"共插入"+r.ToString()+"行"); 
oracleHelper.CommitTransaction(); 

catch(System.Exceptionexception) 

oracleHelper.RollbackTransaction(); 
System.Console.WriteLine(tableName+"--"+exception.Message); 

finally 

oracleHelper.Close(); 


}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值