将oracle数据库中数据导入sql2000
使用oracle9i远程连接客户oracle服务器,由于数据太多了,要将表A中近一天数据导到我本地数据库,我本地用的是sql2000,大家帮帮忙啊,最好有源码 --------------------编程问答-------------------- 写个小程序导入呗......... --------------------编程问答-------------------- oracle-->dataset-->mssql2000过程就是这样 --------------------编程问答-------------------- 和增删改过程差不多啊 --------------------编程问答-------------------- 代码啊代码,不要手动导入 --------------------编程问答-------------------- 给你个函数你改改,从oracle或mssql获取数据集dataset
--------------------编程问答-------------------- 向oracle数据库或者ms数据库插入数据的函数
/// <summary>
/// 获取dataset
/// </summary>
/// <param name="sql">sql</param>
/// <param name="flag">数据库类型标识</param>
/// <returns>数据集</returns>
public static DataSet getDataSetBySQL(string sql,string flag)
{
if(flag=="SQL")
{
String strConn = ConfigurationManager.ConnectionStrings["SQLCONNECTIONSTRING"].ConnectionString;
DataSet ds = new DataSet();
string strSelect = sql;
try
{
SqlConnection Conn = new SqlConnection(strConn);
SqlDataAdapter Adapter = new SqlDataAdapter (strSelect, Conn);
// Adapter.Fill(ds, "T_Function");
Adapter.Fill(ds);
return ds;
}
catch
{
return (ds=null);
}
}
else
{
String strConn = System.Configuration.ConfigurationManager.AppSettings["ConnStrOrcl"];
DataSet ds = new DataSet();
string strSelect = sql;
try
{
OracleConnection Conn = new OracleConnection(strConn);
OracleDataAdapter Adapter = new OracleDataAdapter(strSelect, Conn);
// Adapter.Fill(ds, "T_Function");
Adapter.Fill(ds);
return ds;
}
catch
{
return null;
}
}
}
--------------------编程问答-------------------- 这个就是插数据了,小例子
/// <summary>
/// 带事务的批量操作数据。
/// </summary>
/// <param name="sqlInsert">SQL</param>
/// <returns>操作是否成功</returns>
public static bool OperateDatasWithTransaction(List<string> sqlList,string flag)
{
if(flag=="SQL")
{
SqlConnection myConnection = new SqlConnection(ConfigurationManager.ConnectionStrings["SQLCONNECTIONSTRING"].ConnectionString);
myConnection.Open();
SqlCommand myCommand = myConnection.CreateCommand();
SqlTransaction myTrans;
// Start a local transaction
myTrans = myConnection.BeginTransaction(IsolationLevel.ReadCommitted);
// Assign transaction object for a pending local transaction
myCommand.Connection = myConnection;
myCommand.Transaction = myTrans;
try
{
foreach (string item in sqlList)
{
myCommand.CommandText = item;
myCommand.ExecuteNonQuery();
}
myTrans.Commit();
return true;
}
catch (Exception)
{
myTrans.Rollback();
return false;
}
finally
{
myConnection.Close();
}
}
else
{
OracleConnection myConnection = new OracleConnection(System.Configuration.ConfigurationManager.AppSettings["ConnStrOrcl"]);
myConnection.Open();
OracleCommand myCommand = myConnection.CreateCommand();
OracleTransaction myTrans;
// Start a local transaction
myTrans = myConnection.BeginTransaction(IsolationLevel.ReadCommitted);
// Assign transaction object for a pending local transaction
myCommand.Connection = myConnection;
myCommand.Transaction = myTrans;
try
{
foreach (string item in sqlList)
{
myCommand.CommandText = item;
myCommand.ExecuteNonQuery();
}
myTrans.Commit();
return true;
}
catch (Exception)
{
myTrans.Rollback();
return false;
}
finally
{
myConnection.Close();
}
}
}
--------------------编程问答--------------------
private bool input(System.Data.DataTable dt, SqlConnection conn, bool success,string flag)
{
if (dt != null)
{
try
{
conn.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
List<string> L = new List<string>();
if (flag == "Budget")
{
for (int i = 0; i < dt.Rows.Count; i++)
{
if (dt.Rows[i].ItemArray[0].ToString() != "")
{
string s = "insert into [Budget] values('" + dt.Rows[i].ItemArray[0] + "','" + dt.Rows[i].ItemArray[1] + "','" + dt.Rows[i].ItemArray[2] + "','" + dt.Rows[i].ItemArray[3] + "')";
// OleDbCommand cmd = new OleDbCommand( s,conn);
L.Add(s);
}
}
}
else
{
for (int i = 0; i < dt.Rows.Count; i++)
{
if (dt.Rows[i].ItemArray[0].ToString() != "")
{
string s = "insert into [Budget_Detail] values('" + dt.Rows[i].ItemArray[0] + "','" + dt.Rows[i].ItemArray[1] + "','" + dt.Rows[i].ItemArray[2] + "','" + dt.Rows[i].ItemArray[3] + "','" + dt.Rows[i].ItemArray[4] + "','" + dt.Rows[i].ItemArray[5] + "','" + dt.Rows[i].ItemArray[6] + "','" + dt.Rows[i].ItemArray[9] + "')";
// OleDbCommand cmd = new OleDbCommand( s,conn);
L.Add(s);
}
}
}
if (!OperateDatasWithTransaction(L,"SQL"))
{
success = false;
}
}
catch (Exception eer)
{
MessageBox.Show(eer.ToString());
success = false;
conn.Close();
}
if (success)
{
label1.Text = "导入成功";
if (flag == "Budget")
MessageBox.Show("预算资金总账导入成功!", "信息提示");
else
MessageBox.Show("预算资金明细导入成功!", "信息提示");
}
else
{
label1.Text = "导入失败";
if (flag == "Budget")
MessageBox.Show("预算资金总账导入失败!", "信息提示");
else
MessageBox.Show("预算资金明细导入失败!", "信息提示");
}
}
return success;
}
mark
补充:.NET技术 , ASP.NET