2011-05-24 146 views
0

我是新來的ASP。我有兩個數據庫生產和開發人員數據庫。
我需要檢查開發者網站是否要去開發者數據庫。兩個數據庫都有相同的數據和相同的表名。
但我必須在開發人員數據庫上工作我怎麼能?ASP到數據庫連接

回答

2

通常你會有一個環境配置文件。如果你在談論ASP.NET,那麼它將是Web.config文件。如果你確實在談論傳統的ASP,那麼它可能是一個包含一些常量的腳本。

如果數據庫在結構上是相同的(它們應該是),那麼你應該需要改變的是連接字符串。對於傳統的ASP,你可能只是將其存儲在一個變量:

Dim connString = "This is your connection string" 

在生產服務器上,連接字符串將被設置爲您的生產數據庫。在開發機器上,它將被設置爲開發數據庫。 (對於測試環境等等)所有的數據訪問代碼都會使用這個連接字符串變量。

更重要的是,這不應該只是只有這個事情阻止開發人員使用生產數據庫。 DBA應該設置這樣的權限,即只有生產應用程序只有它需要訪問該數據庫,其他則不需要。開發人員不應該無意中修改生產數據庫。因此,即使您使用工作站的生產連接字符串,數據庫也應該拒絕您訪問。

0

當您指定數據庫連接時,您知道您指向的位置,因此這應該很簡單。但在dev和production上使用單獨的登錄可能是一個好主意。

所以答案是你應該使用配置文件中的connectionstrings來獲得你所需要的:「database = ..」設置應該被正確設置並且你的問題已經解決了爲了獲得額外的確定性,使用不同的登錄名在任何情況下都是值得推薦的。

您還可以使用服務器跟蹤來監視活動,但在多用戶數據庫中這不是一件容易的事情,它只是一種診斷工具,而不是治癒。

1

有兩個連接字符串。然後創建一個常數變量將作爲您的開關和選擇正確的連接字符串:

Dim strCon 
CONST DEVELOPMENT = true 

if(DEVELOPMENT = true) then 
    strCon = "Development connection string" 
else 
    strCon = "Live connection string" 
end if 

adoCon.open strCon 

然後,你可以切換隻需更改爲true/false,具體取決於哪個數據庫來接。