SERVER数据转换ORACLE问题
2008-12-16 13:05:14 来源:WEB开发网大家做系统更新或者升级都可能要触及到数据的转换。
对于ORACLE中的数据转换可以用写存储过程来放之游标,将你要的数据一条一条的转换。
而对于SERVER虽然你可以将它转换到ORACLE中(升级的方式),但有问题你会发现有的表是不可以直接转换的!
所以我就用代码控制直接转换!也是一种比较容易控制容易写的方法!
首先你要在程序中建立连接(server的)
string strCon="workstation id=XJ;packet size=4096;user id=sa;data source="automapautomap";persist security info=True;initial catalog=bgxtrmt;password=sa";
string strTxt = "SELECT tworder_code, stru_b, layer_b, area_ub, area_b, east, south, west, north, area_sb, densy_b, grean_b, park, park_bike, other_area,grean_b,sp_build_p FROM bgxtpab2_1";
SqlConnection SqlCon = new SqlConnection(strCon);
SqlCommand SqlCmd = new SqlCommand(strTxt,SqlCon);
SqlCon.Open();
然后将你要读的数据用dataReader.reader方法读进来!
SqlDataReader SqlDR = SqlCmd.ExecuteReader(CommandBehavior.CloseConnection);
while(SqlDR.Read())
{
try
{
OracleCon.Open();
Bgxtpab2_1 bg = new Bgxtpab2_1();
//Doc d = new Doc();
//int i = -1;
bg.Tworder_Code = SqlDR.GetString(0).Trim();
bg.Stru_B = SqlDR.IsDBNull(1)?"":SqlDR.GetString(1).Trim();
bg.Layer_B = SqlDR.IsDBNull(2)?0:SqlDR.GetInt32(2);
bg.Area_UB = SqlDR.IsDBNull(3)?"":SqlDR.GetString(3);
bg.Area_B = SqlDR.IsDBNull(4)?"":SqlDR.GetString(4);
bg.East_B = SqlDR.IsDBNull(5)?"":SqlDR.GetString(5).Trim();
bg.South_B = SqlDR.IsDBNull(6)?"":SqlDR.GetString(6).Trim();
bg.West_B = SqlDR.IsDBNull(7)?"":SqlDR.GetString(7).Trim();
bg.North_B = SqlDR.IsDBNull(8)?"":SqlDR.GetString(8).Trim();
//bg.Layer_BD = SqlDR.IsDBNull(++i)?0.0F:SqlDR.GetInt32(i);
bg.Area_SB = SqlDR.IsDBNull(9)?"":SqlDR.GetString(9);
bg.Densy_B = SqlDR.IsDBNull(10)?"":SqlDR.GetString(10);
bg.Park = SqlDR.IsDBNull(11)?0.0F:SqlDR.GetFloat(11);
bg.Park_Bike = SqlDR.IsDBNull(12)?0.0F:SqlDR.GetFloat(12);
bg.OTher_Area = SqlDR.IsDBNull(13)?0.0F:SqlDR.GetFloat(13);
bg.Grean_B = SqlDR.IsDBNull(14)?0.0F:SqlDR.GetFloat(14);
bg.Sp_build_P = SqlDR.IsDBNull(15)?"":SqlDR.GetString(15);
更多精彩
赞助商链接