?以下贴出部分代码:C#
需要引用
using System.Data.OracleClient; using System.Data.SqlClient;
?
private void button3_Click(object sender,EventArgs e)?????? //将sqlserver中数据导入到oracle数据中 ??????? { ??????????? button3.Enabled = false;?????????????????????????????? //防止多次点击 ??????????? int temp=0;??????????????????????????????????????????? //用于判断插入是否成功 ??????????? string sqlstr;???????????????????????????????????????? //接收插入语句 ??????????? DataTable dt = new DataTable(); ??????????? string sql = "select * from dictionary";???????????? // oracle中已存在的数据表 ??????????? Sqldataload sqldata = new Sqldataload();?????? //自定义类 ??????????? dt = sqldata.ORselect(sql); ??????????? string[] col = new string[3];???????????????????? //用于接收没一行中的数据 ??????????? if (dt.Rows.Count > 0)????????????????? ??????????? { ??????????????? for (int i = 0; i < dt.Rows.Count; i++)???????? //循环每一行 ??????????????? { ??????????????????? for (int j = 0; j < dt.Columns.Count; j++)???? //循环每一列 ??????????????????? { ??????????????????????? col[j] = dt.Rows[i][j].ToString();???????? ??????????????????? } ??????????????????? sqlstr = "Insert into Tdictionary(EnField,ChField,Method) values(" + StrTo(col[0]) + "," + StrTo(col[1]) + "," + StrTo(col[2]) + ")"; ??????????????????? Dataconn ORconn = new Dataconn(); ??????????????????? temp = ORconn.ORUpdate(sqlstr);??????????? //将数据插入到oracle数据中 ??????????????? } ??????????? } ??????????? button3.Enabled = true; ??????????? if (temp!=-1) MessageBox.Show("转换成功!!");???? ??????????? else ??????????????? MessageBox.Show("转换失败!!"); ??????? }
? public string StrTo(string str) ??????? { ??????????? str = "'" + str + "'"; ??????????? return str; ??????? }
自定义类:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data.OracleClient; using System.Data;
namespace ExceltoOracleTable { ??? class Dataconn ??? { ??????? public Dataconn() ??????? { ??????? } ??????? public?? string ConnectionString = "Data Source=telecom;Persist Security Info=True;User ID=qiao;Password=qiao;Unicode=True";?? //写连接串 ???????? public DataTable? ORselect(string str) ??????? { ??????????? DataTable dt = new DataTable(); ??????????? OracleConnection conn = new OracleConnection(); ???????????? ???????????? conn.ConnectionString = ConnectionString; ??????????? OracleDataAdapter adapter = new OracleDataAdapter(str,conn); ??????????? try ??????????? { ??????????????? conn.Open(); ??????????????? adapter.Fill(dt); ??????????? } ??????????? catch (OracleException ee) ??????????? {
??????????? } ??????????? finally ??????????? { ??????????????? conn.Close(); //关闭连接 ??????????? } ??????????? return dt; ??????? } ???????? public int ORUpdate(string SQLstr) ???????? { ???????????? OracleConnection conn = new OracleConnection(); ???????????? conn.ConnectionString = ConnectionString; ???????????? OracleCommand command = new OracleCommand(SQLstr,conn); ???????????? try ???????????? { ???????????????? conn.Open(); ???????????????? return command.ExecuteNonQuery();???????? //返回操作行数 ???????????? } ???????????? catch (OracleException ee) ???????????? { ???????????????? return -1;??????????????? //操作失败??? ???????????? } ???????????? finally ???????????? { ???????????????? conn.Close(); //关闭连接 ???????????? }
???????? } ???????? public DataSet ORSelect2(string str) ???????? { ???????????? OracleConnection conn = new OracleConnection(); ???????????? conn.ConnectionString = ConnectionString; ???????????? OracleDataAdapter adapter = new OracleDataAdapter(str,conn); ???????????? DataSet DS = new DataSet(); ???????????? try ???????????? { ???????????????? conn.Open(); ???????????????? adapter.Fill(DS ); ???????????? } ???????????? catch (OracleException ee) ???????????? { ????????????????? ??????????????? // messagebox.show("连接失败!!!"); ???????????? } ???????????? finally ???????????? { ???????????????? conn.Close(); //关闭连接 ???????????? } ???????????? return DS; ???????? } ??????? ??? } ??? }
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|