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技术 , 其他语言