簡體   English   中英

在Visual Studio 2017中創建安裝項目(帶有MSSQL Server數據庫)

[英]Create Setup Project in Visual Studio 2017 (with MSSQL Server Database)

我使用C#(Windows窗體應用程序)完成了一個項目,並使用MSSQL Server 2017進行數據庫操作。 我的項目如下: 用戶從列表框中選擇一個值,然后按下按鈕進行分析。 經過這個過程之后,我對表中的值執行數學運算,並在DataGridView上列出結果。 因此,用戶將不會對數據庫執行任何操作,您可以將其視為只讀。

  • 向用戶安裝該項目時,我會遇到什么問題?
  • 我需要向用戶安裝MSSQL Server嗎? 我在自己的計算機上進行設置,然后將其安裝在計算機上,沒有問題,我將MSSQL Server中數據庫的備份添加到了安裝文件中。 這樣就夠了嗎?
  • 將其安裝在另一台計算機上時,數據庫操作是否會出現問題?
  • 我需要更改SQL連接子句嗎?

如果要允許其他計算機上的用戶使用此程序,則他們將需要訪問數據庫。 可以通過為他們提供數據庫或將數據庫放在可以遠程訪問的服務器上來完成。

向用戶安裝該項目時,我會遇到什么問題?

根據不同的因素,可能會發生許多問題,但是,如果您為數據庫使用遠程服務器,由於不知道確切地如何訪問數據庫,您的問題可能更少。

了解您可能無權訪問遠程服務器來放置數據庫,因此將數據庫文件放置在用戶計算機上可能會更容易。 造成此問題的最可能原因是數據庫文件位置和連接字符串不匹配。 因此,如果您確實決定將數據庫下載到用戶計算機,則您的錯誤很可能與數據庫文件位置有關。

向用戶安裝該項目時,我會遇到什么問題? 我需要向用戶安裝MSSQL Server嗎?

您很可能只需要向用戶提供數據庫文件。 您可能會遇到的問題是,如果給用戶提供數據庫並將其放在他們的計算機上,則可能會遇到與app.config中的連接字符串有關的數據庫位置不正確的問題。

這樣就夠了嗎? 將其安裝在另一台計算機上時,數據庫操作是否會出現問題? 我需要更改SQL連接子句嗎?

是的,如果您將數據庫下載到用戶計算機,則您將要更改SQL連接子句,除非您可以確保將數據庫放置在與連接字符串相同的匹配位置中。

將其安裝在另一台計算機上時,數據庫操作是否會出現問題?

你不應該。

我需要更改SQL連接子句嗎?

如果您將數據庫放置在服務器上,則肯定不會。 也許如果您將數據庫下載到用戶計算機。

邊注

如果要使項目可移植並且在服務器上沒有數據庫,建議您創建一個.mdf文件(這是Microsoft SQL Server使用的文件格式。),然后在項目的調試文件夾中(或(您的.exe文件所在的位置),並將其命名為DATABASE,然后將您的.mdf放入此文件中。 現在,更改您的連接字符串,以找到該數據庫,該數據庫位於當前目錄的DATABASE文件夾中,該目錄將是項目的Debug文件夾。 這應該解決您的大多數問題,因為該項目在哪里進行,數據庫文件也在哪里。

這是設置conString的方法:

connectionString="data source={AppDir}\data\DATABASE\yourDataBaseName.mdf

在您的代碼中:

ConnectionStringSettings c = ConfigurationManager.ConnectionStrings[name];  



if (c == null)
{
    ... handle missing connection string ...
}
string fixedConnectionString = c.ConnectionString.Replace("{AppDir}", AppDomain.CurrentDomain.BaseDirectory);
... use fixedConnectionString

這將始終從.exe所在的目錄開始。

PS:如果您大量使用sql數據庫,我強烈推薦ssms,即SQL Server Management Studio。 它使我的工作變得容易得多。 可能也會幫助您。 :)

好吧,至少可以這樣說,使用SQL Server是極端的。 SQL Server更適合於數據庫密集型應用程序,它需要在計算機上設置很多內容,並且通常不用於客戶端應用程序,盡管大型桌面應用程序可能會使用SQL Server Express(精簡版,免費版)需要這么多的性能。

我建議您不要使用它,而使用SQL Server Express LocalDb( .mdb文件),可以很容易地安裝它。 或者甚至可以使用不需要安裝的SQLite。

關於您的問題:

向用戶安裝該項目時,我會遇到什么問題?

您可能會運行許多問題,由於成千上萬種不同的問題,SQL Server安裝程序可能會失敗,並且卸載很容易使系統處於損壞狀態。

我需要向用戶安裝MSSQL Server嗎? 我在自己的計算機上進行設置,然后將其安裝在計算機上,沒有問題,我將MSSQL Server中數據庫的備份添加到了安裝文件中。 這樣就夠了嗎?

如果要使用SQL Server,則需要安裝。

將其安裝在另一台計算機上時,數據庫操作是否會出現問題?

假設安裝順利,不太可能。

我需要更改SQL連接子句嗎?

並非如此,使用Server= .\\KnownServerInstanceName足以使其始終運行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM