如何从数据库获得连接字符串

我已经用SQL Server Management Studio创建了一个数据库,我现在想在我的c#应用程序中使用它。我需要连接字符串?

我可以在哪里找到连接字符串,我的数据库存储在哪里?

我需要发表它吗,还是在我的文档里?

using (var conn = new SqlConnection("your connection string to the database"))

如何获取连接字符串?我在哪里可以找到连接字符串复制粘贴到上面的部分?

我如何发布我的数据库,以便Visual Studio可以选择它?然后我就可以拉动这里的连接线了?

573613 次浏览

存储SQL server数据库默认位于以下路径

<drive>:\Program Files\Microsoft SQL Server\MSSQL.X\MSSQL\Data\

,其中<drive>是安装驱动器,X是实例号(MSSQL.1是数据库引擎的第一个实例)。为了提供连接字符串,你应该知道sql server数据库的服务器名是什么,在那里你存储了数据库服务器的实例。

通常,服务器名称类似于连接数据库的机器的ip地址,默认实例将是SqlExpress

连接字符串包含数据源名称,即服务器名称,最初的目录,即数据库名称,用户id,即数据库登录用户id, 密码,即数据库登录密码。

connectionstrings.com上,你可以找到每个DB提供程序的连接字符串。连接字符串是用某些属性/属性及其值构建的。对于SQL server 2008,它看起来像这样(标准,这是你在这里需要的):

Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;

myServerAddress上,写你安装的实例的名字(默认为.\SQLEXPRESS for SQL Server Express edition)。初始目录=您的数据库名称,您将在连接后的左侧SSMS中看到它。其余的一切都不言自明。

编辑

您需要省略windows身份验证的用户名和密码,并添加Integrated Security=SSPI

获取连接字符串的最简单方法是使用Visual Studio中的“服务器资源管理器”窗口(菜单视图服务器资源管理器)并从该窗口连接到服务器。

然后可以在连接服务器的属性中看到连接字符串(选择连接后按F4或Alt+Enter或在右键菜单中选择properties)。

高级连接字符串设置:当创建连接时,你可以通过点击“添加连接”对话框底部的“advanced…”按钮来修改任何高级连接字符串选项,如MARS,弹性,timeot,池配置等。稍后您可以通过右键单击数据连接并选择“修改连接…”来访问此对话框。不同服务器类型的高级选项有所不同。

如果您使用SQL Server Management Studio创建数据库,则数据库将在服务器实例中创建,因此,要部署应用程序,您必须对数据库进行备份并将其部署到部署SQL Server中。或者,您可以使用SQL Server Express (SQL Server 2012中的localDB)使用数据文件,这将很容易与您的应用程序一起分发。

也就是说,如果它是ASP。NET app,有一个App_Datafolder。如果您右键单击它,您可以添加一个新元素,它可以是SQL Server数据库。该文件将位于该文件夹中,将与SQL Express一起使用,并且易于部署。您需要在机器上安装SQL Express / localDB才能正常工作。

检索连接字符串的一个非常简单的方法是创建一个文本文件,将扩展名从. txt更改为.udl

双击.udl文件将打开数据链属性向导。

配置并测试到数据库服务器的连接。

关闭向导并使用您选择的文本编辑器打开.udl文件,并简单地复制连接字符串(没有Provider=<driver>part)以在您的c#应用程序中使用它。

示例udl文件内容

[oledb]
; Everything after this line is an OLE DB initstring
Provider=SQLNCLI11.1;Integrated Security=SSPI;Persist Security Info=False;User ID="";Initial Catalog=YOURDATABASENAME;Data Source=YOURSERVERNAME;Initial File Name="";Server SPN=""

你需要从它复制什么

Integrated Security=SSPI;Initial Catalog=YOURDATABASENAME;Data Source=YOURSERVERNAME;

如果您想指定用户名和密码,您可以从其他答案中采用。

教程:https://teusje.wordpress.com/2012/02/21/how-to-test-an-sql-server-connection/

把下面的标签放在网上。配置节点中的配置文件

 <connectionStrings>
<add name="NameOFConnectionString" connectionString="Data Source=Server;Initial Catalog=DatabaseName;User ID=User;Password=Pwd"
providerName="System.Data.SqlClient" />

然后你可以使用上面的连接字符串,例如:

SqlConnection con = new SqlConnection();
con.ConnectionString = ConfigurationManager.ConnectionStrings["NameOFConnectionString"].ToString();

如果您在项目中创建了连接管理器,那么您可以简单地从那里提取连接字符串。

String connection = this.dts.connections["<connection_manager_name>"];

在下面使用这个连接:

using (var conn = new SqlConnection(connection))

如果我说错了,请指正。

SqlConnection con = new SqlConnection();
con.ConnectionString="Data Source=DOTNET-PC\\SQLEXPRESS;Initial Catalog=apptivator;Integrated Security=True";

我的解决方案是使用(2010)。

在一个新的工作表中,选择一个单元格,然后:

Data -> From Other Sources -> From SQL Server

放入服务器名称选择表,等等,

当你进入“导入数据”对话框时,
在“连接属性”对话框中单击属性

.选择“Definition”选项卡
Excel很好地显示了用于复制的连接字符串 (或甚至导出连接文件…)

如果使用Linqpad工具,从连接连接到目标数据库后,可以获得要使用的连接字符串。

  1. 右键单击数据库连接。
  2. 选择Properties
  3. 选择Advanced
  4. 选择Copy Full Connection String to Clipboard

结果:Data Source=.\jabberwocky;Integrated Security=SSPI;Initial Catalog=Rasa;app=LINQPad

enter image description here


根据驱动程序移除app=LinqPad和其他项目,比如Server而不是source,你可能需要调整驱动程序以适应目标操作;但它给了一个发射台。

如果您已经安装并设置了MS SQL Server和Management Studio,请转到Visual Studio (Visual Studio而不是SQL Server Management Studio)。

1]在Visual Studio转到工具→连接数据库

2]在服务器名称下选择您的数据库服务器名称(让列表填充,如果它需要时间)。

3]在“连接数据库”下,选择选择或输入数据库名称

4)从下拉菜单中选择数据库。

5]选择数据库后尝试测试连接。

6)如果测试连接成功,单击“确定”。

7]在Visual Studio转到视图→服务器资源管理器

8]在服务器资源管理器窗口中,在数据连接下选择您的数据库。右键单击数据库->单击“属性”

属性窗口中,您将看到您的连接字符串

朋友们,最简单的方法是在visual studio 2019上打开服务器资源管理器选项卡(在我的情况下),然后尝试创建到数据库的连接。创建成功连接后,只需右键单击它并进入属性。在那里,您将找到一个语法正确的字符串连接字段!…这对我来说很有效,因为我事先知道服务器的名称....只是无法找出正确的语法来运行我的ef脚手架…

打开SQL Server Management Studio并运行以下查询。你会得到连接字符串:

select
'data source=' + @@servername +
';initial catalog=' + db_name() +
case type_desc
when 'WINDOWS_LOGIN'
then ';trusted_connection=true'
else
';user id=' + suser_name() + ';password=<<YourPassword>>'
end
as ConnectionString
from sys.server_principals
where name = suser_name()