我在寫我們的競爭對手到我們的數據庫:) 數據庫進口商我有一個代碼生成器,創建方法的形式導入到我們的數據庫就像使用未分配的局部變量的「XXX」
public void Test_Import_Customer_1()
// variables
string conn;
string sqlSelect;
string sqlInsert;
int extID;
string name;
string name2;
DateTime date_inserted;
sqlSelect="select id,name,date_inserted from table_competitors_1";
oledbreader reader = new GetOledbRader(sqlString,conn);
while (reader.read())
{
name=left((string)myreader["name"],50); //limitation of my field
date_inserted=myreader["date_inserted"];
sqlInsert=string.Format("insert into table(name,name2,date_inserted)values '{0}', '{1}', {2})",name,name2,date_inserted); //here is the problem name2 "Use of unassigned local variable"
ExecuteSQL(sqlInsert)
}
由於不同公司數據庫具有不同的字段,我無法爲每個變量設置值,並且有大量表格需要將一個變量放到下一個變量中。
像
sqlSelect_Company_1 = "select name,date_inserted from table_1";
sqlSelect_Company_2 = "select name,name2 from table_2";
是有辦法來覆蓋由一個具有默認值的每個變量之一的打字?
是的我對c#比較陌生,但對數據庫不是。問題是,有數據庫版本的大數目(訪問,FDB,GDB,MSSQL,MySQL的) 是的它想創造每個競爭者的方法,但希望有一些好消息:) – Tomislav 2010-05-19 13:42:38
注意,在實踐中, CLR始終將局部變量初始化爲默認值。當地人使用前必須明確賦值C#的規則,以防止公共類的邏輯錯誤,而不是防止「隨機」初始值的觀察。 – 2010-05-19 14:07:52
是的,我故意忽略了這個事實來說明基本問題。我可以引用雷蒙德嗎?都捨不得虧的! JK;)我愛你的博客Eric。 – mafu 2010-05-19 14:34:23