什么是一种非常快速的方法来确定您的connectionstring是否允许您连接到数据库?
通常,连接尝试使用户等待很长时间才通知该尝试无论如何都是徒劳的.
我知道我可以在使用ADO或OLE DB时为MS SQL Server设置连接超时,方法是将Connect Timeout = somevalue添加到连接字符串.
但这似乎不适用于ODBC连接.具体来说,我们决定使用Windows XP附带的标准SQL Server ODBC驱动程序(SQLSRV32.DLL版本2000.85.1132.00)而不是较新的SQL Native Client,并且使用此驱动程序时连接总是在15秒内超时,与连接超时设置无关.
此外,当它超时时,我得到两个错误.第一个是超时,第二个是"无效的连接字符串属性",所以我猜Connect Connectout不是我需要的.我错过了这个情节的最后线索来自这篇有点过时的文章:http://msdn.microsoft.com/en-us/library/ms811006.aspx
有没有人知道是否有办法在标准SQL Server ODBC驱动程序的连接字符串中指定连接超时?
我找不到符合这个目的的问题,所以我问它.
我们已经部署了一个ASP.NET网站,它有两个连接字符串,其中一个可以由用户在运行时配置.问题是,由于我使用.NET Framework来执行此操作,因此在更改web.config时会创建一个临时文件,这会强制我的客户授予整个网站文件夹的完整权限,而不仅仅是Web.配置文件.他对此并不满意,并且经理正在质疑将其他连接字符串存储在同一个配置文件中.
因此,我可以选择在单独的文件夹中创建单独的配置文件,以便它们只应授予该文件夹的完全权限,或将其存储在数据库中.第一种选择与现在大致相同,所以问题是:
将ConnectionString存储在数据库上怎么样?
请注意,我不是在谈论应用程序ConnectionString,而是另一种选择,因为这个应用程序将像三个应用程序一样集成.
那么伙计们,给我优点和缺点,将它存储在数据库中的好坏点.
我在构建连接字符串时遇到了一些问题.我曾经生成"Provider = SQLOLEDB"或"Provider = SQLNCLI".现在我看到一些用户有SQLNCLI10而SQLNCLI丢失了.是否可以枚举可用的提供商,以便我可以选择一个有效的提供商?
System.Data.Common.DbProviderFactories.GetFactoryClasses()列出了.NET数据提供程序,但我仍然不知道哪些连接字符串参数有效.
我试图使用VB.net迭代App.Config中的所有连接字符串.
我想:1.获取所有连接字符串的计数2.将它们全部放入列表框中.
我已经尝试过使用System.Configuration.ConfigurationSettings,但我不确定如何获取collection/listof连接字符串.
该应用程序是一个WinForms VB.net .net 4.0应用程序.
我们的开发团队的每个成员都有一个应用程序数据库的副本,该数据库运行在SQL Server 2008 Enterprise SP1的本地版本上.每个人都可以通过在他们的web.config文件中指定他们的服务器和实例名来访问数据库,但为了最好地共享我们的web.config文件的开发者版本,我们通过使用集成安全性和设置服务器标准化了连接字符串的通用性财产到(当地).这种策略适用于大多数64位Windows 7计算机,但在少数情况下(本地)无法识别.我们通过SQL Server配置管理器比较了设置(即确保启用了命名管道协议),并且我们尝试通过SQL Server客户端网络实用程序设置"(本地)"别名,但我们没有任何运气.为了在我们的连接字符串中使用(本地)需要做什么?
我正在将以下连接字符串写入web.config,但它给了我error.what正确的写入方式是什么?
<add name="stargaze_stargazeConnectionString1" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename="D:\Work At DS\19th Jan\myastrolove.com_new\App_Data\dbName.mdf";Integrated Security=True;User Instance=True"/>
Run Code Online (Sandbox Code Playgroud) 在我的连接字符串中,我添加了Application Name = XX,因此我可以从SQL服务器中识别进程的来源(sp_who2 - ProgramName列).从.NET连接时,这很有用.当我使用Server.CreateObject("ADODB.Connection")通过Classic ASP连接时,我的ProgramName被SQL Server识别为"Internet信息服务".
有没有人知道配置某些东西的方法(连接字符串?IIS?sql?)所以SQL Server看到了我的应用程序名称?
在我的winform项目中,我有一个连接到SQL的连接字符串.我在app.config文件中有这样的连接;
<connectionStrings>
<add name="MyConnectionString" providerName="System.Data.SqlClient"
connectionString="Server=(localdb)\\v11.0; Integrated Security=true; AttachDbFileName=C:\\Folder\\mydataBaseName.mdf;Connect Timeout=15;Encrypt=False;TrustServerCertificate=False"
/>
Run Code Online (Sandbox Code Playgroud)
我得到了连接:
string config = ConfigurationManager.ConnectionStrings["MyConnectionString"].ConnectionString;
//and then
using (SqlConnection conexao = new SqlConnection(config))
{
conexao.Open();
.......
.......
}
Run Code Online (Sandbox Code Playgroud)
当我运行应用程序时,我收到一条错误消息:"System.Data.dll中发生了'System.Data.SqlClient.SqlException'类型的未处理异常"
但是,如果我直接从代码中调用连接字符串(不使用app.config),那么就可以了.
string config = "Server=(localdb)\\v11.0; Integrated Security=true; AttachDbFileName=C:\\Folder\\mydataBaseName.mdf;Connect Timeout=15;Encrypt=False;TrustServerCertificate=False";
Run Code Online (Sandbox Code Playgroud)
任何想法,如何解决问题?
谢谢Leonor
我有一个Windows应用程序使用DataModel.edmx访问Dev数据库,它工作正常.为了访问舞台环境数据库,我添加了另一个StageDataModel.edmx.所以app.config中有两个连接字符串:如何根据环境在app.config中的数据库之间切换?
提前致谢!
c# entity-framework connection-string app-config windows-applications
c# ×4
.net ×3
sql-server ×3
app-config ×2
asp.net ×2
database ×2
asp-classic ×1
connection ×1
local ×1
odbc ×1
sql ×1
string ×1
vb.net ×1
web-config ×1
winforms ×1