我們有一個C++應用程序,它利用一些基本API將原始查詢發送到MS SQL Server。通過我們程序中的各種翻譯單元,我們有簡單的1-2行查詢作爲C++字符串,現在您會看到更復雜的查詢,可能超過20行。在哪裏存儲C++應用程序的SQL代碼?
我不禁想到,更大的查詢,特別是20 +行的,不應該作爲常量字符串嵌入C++代碼中。我想建議將這些拉出到C++應用程序按需加載的單獨文本文件中,但我不確定這是否是最佳方法。
這種情況下典型的設計選擇是什麼?我肯定覺得需要改進,我只是不知道將SQL查詢移出到數據文件(文本文件)是否是最好的想法。
存儲過程?用你自己的方法把你的數據庫當作一個遠程對象來處理? – MatBailie 2012-04-09 21:18:31
你希望通過將它們分開來獲得什麼?與加載/執行它們的代碼相比,它們是否經常更改?他們可能會被轉換成存儲在數據庫本身中的存儲過程嗎?他們的細節是否與周圍的代碼密切相關,或者這些代碼是否合理地將它們當作相對抽象的黑盒子? – 2012-04-09 21:18:44