作者LaPass (LaPass)
看板java
標題[問題] 資料庫的處理
時間Fri May 18 17:37:53 2012
我對資料庫還蠻頭痛的
想請問比較概念性的問題....
幾乎只要寫系統之類的程式,難免都會使用到資料庫
雖然,簡單來講,就只是select update instert delete這四個動作而已
只要會這四個指令,就幾乎可以把所有功能都做出來
頂多再多個creat drop alert就很多了
但是,彈性這麼大,也讓人覺得用起來會很難用
常常看到資料表中的有個欄位不知道是在幹麼的.....
一串SQL中的某個條件又不知道是幹什麼用的
不知道資料表之間的關連性是怎麼樣
或是,今天改了資料表,欄位多一個isDelete的判斷
就要把所有的delete陳述式改成update set isdelete=1
偏偏刪除的sql還在分佈在很多地方
或許可以把SQL字串用個public static final String去存起來
但是,這樣一來就會降低使用上的彈性
例如....
我常常看到程式碼出現這種東西
String Sql="(....)";
if(A功能開啟) Sql="UNION (........)";
if(B功能開啟&&使用者屬於B群組) Sql+=" UNION (.....) "
String Sql2 = "....."
(中略,又開另外一個搜尋去撈資料庫的資料出來做判斷)
if(判斷成立)Sql+=" UNION (.....) "
......
像這種組合SQL語法的段落可以長達兩三頁,而且每個UNION中的陳述式又都很長
把這種東西放到public final static去存,也沒什麼意義,因為還是一樣亂
現在有機會自己寫,程式跟資料庫的橋接介面
在想方法讓資料庫用起來好用一些
請問有方法可以解決這種問題嗎?
--
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.59.16.65
推 mars90226:ORM嗎?把資料庫對應到物件 05/18 17:52
→ LaPass:對應到物件好像也不是這麼好用.... 因為可能會有union之類 05/18 20:04
→ LaPass:的,把不同資料的數據給弄成同一個輸出。 05/18 20:07
→ gwokae:原po對ORM很了解 (茶 05/18 22:54
推 SHANGOYANYI:如果是我 那種一坨union的東西會建成view 05/19 01:24
推 kimkao:推union改view, 或者適時的把這些需要被union的內容 05/19 09:18
→ kimkao:改成多個具有商務意義的method,透過builder結合結果 05/19 09:20
推 qrtt1:我比較喜歡將 sql 存進 template file 的方式 05/19 10:40
推 asdfg2010:同上 template是好物 05/20 15:32