說,我有一個簡單的應用程序,它使用HDBC與數據庫進行交互。它可能是一個快照應用程序或命令行應用程序。我想就此提供一個通用的觀點 - 不是快照或任何特定的。 一個很好的例子是來自「真實世界Haskell」的第22章。Haskell:HDBC,連接狀態和可能的池
所以我就躲在像連接,saveArticle,getArticle等在一個單獨的DB.hs文件中的所有我的SQL相關的功能。所有的DB函數都會將連接句柄作爲參數。
現在,我怎麼會發起一次連接,並把它的狀態,使所有這些功能DB只使用它沒有單獨發起連接? 這可能嗎?也許我在思考錯誤或在腦海中的概念,但...我想「初始化」我的連接(就像你將初始化一個OO對象)。 我不希望每個DB函數都創建並關閉新的連接。
我是否必須創建一個池並將該池作爲參數傳遞給函數,而不是連接句柄?做這件事最簡單的例子是什麼?
無論是游泳池或連接手柄,我怎麼把它的狀態,所以我只是功能抓住它,在需要的時候,不重複「打開」和「關閉」所有的時間?如果是的話,它是如何正確完成的?
我需要創建一個池,並把它的狀態等等功能,只是查詢全球狀態的連接池?再次,示例將非常感激。
謝謝。
是的,這聽起來像我所需要的:)是否有可能在我的問題中顯示我的用法?我似乎無法在網上找到任何例子。另外,我可以堅持這MVAR MVA並將其傳遞?謝謝。 – 2012-03-25 03:13:36