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

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

本文我们主要介绍了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.ColumnName,dataTable.Rows[r][dataTable.Columns.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();  
}  
}  



以上就是SQL Server 2005导入Oracle 10g的C#源码程序的全部内容,本文我们就介绍到这里了,希望本次的介绍能够对您有所收获!


本文章来自:精易论坛(http://bbs.125.la/thread-13634999-1-1.html)请保留此链接, 感谢! 
ID: 111078 --------------------编程问答--------------------
补充:.NET技术 ,  其他语言
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,