[推薦]萬用的資料庫Connector

看板C_Sharp (C#)作者 (tomex_ou)時間20年前 (2004/10/14 01:46), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/4 (看更多)
在ADO.Net中,連結不同的db provider, 必須使用不同的物件類別,如sqlconnection, mysqlconnection等等 倘若某專案突然要換資料庫,相信基層元件或邏輯元件都會改到手軟 除了改名外,一些彼此不相容的問題也可能產生。 我以前就想,是否可以自己創造一個Interface(介面) 來連結不同的db provider,例如oracle/db2/mysql... 不過,對於元件建構很肉腳的我,會變成一種method要寫n種 想想也沒差,實驗失敗!! 有個外國人很厲害,他發現不同的db provider其實都遵守ado.net命名法 因此自己就寫了一些介面及繼承原先的,來接收這些不同的provider傳回的類別 所有provider的定義就放在一個xml檔內,只需要把provider的dll放入bin/中 就可以run了,這剛好是我所想像的最佳狀況。 最值得喝采的,它是免費且open source,感動再感動!! 它叫做「Generic ADO.net DB Access」, 官方網址是:http://www.maxvirtual.com/Default.aspx 不像UniDirect .NET Data Provider死要錢,寫不好又想全包 = =+ 自己看了它的介面原始碼,嗯~ 不太會,還是用它的binary好了! :p 發現它持續有在更新, 我連忙用vs.net 2005 beta1測試sqlsrv及mysql,果然都ok! 這一兩句話也讓我測了很久,因為站上只有呼叫的sample,沒有如何發佈的說明 讓我測了n小時,damn it!! 發掘新東西就是這樣,累人!! 言歸正傳, 我覺得這樣的通吃很好,雖然我有點擔心, 怕dataset或rich controls不吃它所創的類別, 不過一般我們只用到資料維護而已,真發生那狀況,自行再建connection即可 它還是值得的。 -- You're recommended to vist C_Sharp in PTT. We are the C#, resistance is futile. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.119.183.211
文章代碼(AID): #11RMdp4x (C_Sharp)
文章代碼(AID): #11RMdp4x (C_Sharp)