Oracle數據庫增刪查改代碼生成器

最近用C#寫了一個程序:根據Oracle數據庫表自動生成該表的增刪查改操作代碼,在項目中引入生成文件,調用代碼生成的函數可進行數據庫增刪查改。由於自己也在學習中,故將其大致思想分享出來,和大家分享討論。

該程序的程序界面如圖:

該程序分爲兩個功能,一是生成文件,二是直接顯示。點擊生成字符串後,會在所選的生成文件路徑上生成相應的cs文件;點擊直接顯示,會在下面的textbox中顯示生成的代碼。


接下來介紹一下大致核心思想:

首先需要獲取數據庫連接字符串,獲取連接字符串只需要判斷界面上的沒有存在未填項,就可以生成字數據庫連接字符串,具體格式爲 user id+data source+password。

接着,就可以進行select操作的生成了,生成之前需要對數據庫連接成功與否進行驗證,所以需要寫數據庫連接驗證,可以設置bool類型變量作爲返回值,在try中new一個OracleConnection,成功返回TRUE,失敗跳進catch,返回FALSE。通過數據庫連接之後,還需要檢測該表是否在數據庫中存在,建立OracleCommand,在OracleCommand的text中寫入select * from +表名 where rownum=1,進行驗證該表是否存在。驗證表存在之後,就可以用select條件語句獲取該表的列名了。生成的select操作語句爲:this.oracleSelectCommand1.CommandText = @\"SETECT {0} FROM {1}\";{0}中爲剛纔獲得的表列名,{1}爲表名。

得到了select操作後,就可以根據select操作,利用OracleCommandBuilder生成相應的插入、更新、刪除操作了。大致代碼如下:

OracleDataAdapter da = new OracleDataAdapter(String.Format("select * from {0} where rownum=1", 表名),數據庫連接);
                            OracleCommandBuilder ocb = new OracleCommandBuilder(da);
                            cmdInsert = ocb.GetInsertCommand(true);
                            cmdUpdate = ocb.GetUpdateCommand(true);
                            cmdDelete = ocb.GetDeleteCommand(true);

這裏利用OracleCommand獲取了插入、更新、刪除操作。然後可以利用text的屬性查看生成的相關代碼,並利用調試查看該OracleCommand的相關屬性,填寫在代碼相應的位置上。

最後,將生成的這些代碼寫入stringBuilder中,同時利用streamWriter將其寫入文件中或者直接顯示在界面上。




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章