假设您已安装了SQL Server并使用了命名实例SQLEXPRESS,则您的服务器名称应为:
.\SQLEXPRESS
或者:
127.0.0.1\SQLEXPRESS
如果它当前已停止,则需要右键单击并选择启动:开始菜单 > 程序 > Microsoft SQL Server > 配置工具 >
SQL Server配置管理器
PsExec -s -i "C:\...path to ssms...\Ssms.exe"
(LocalDb)\v11.0
即可。 - Moshi您可以使用命名管道将SSMS连接到本地数据库实例。
1 - 运行以下命令获取(localdb)实例的地址: "C:\Program Files\Microsoft SQL Server\110\Tools\Binn\SqlLocalDB.exe" info [InstanceName] (如果您感兴趣的是默认实例,请将[InstanceName]指定为v11.0) 您可以使用以下命令将其写入CMD文本文件:
"C:\Program Files\Microsoft SQL Server\110\Tools\Binn\SqlLocalDB.exe" info v11.0 > C:\db_details.txt
2- 复制“实例管道名称”的值,例如np:\.\pipe\LOCALDB#1E0FF40B\tsql\query
3- 将“实例管道名称”值粘贴为服务器名称。
sqllocaldb info
返回命名管道实例的空值。看起来它现在已经消失了,应该做些什么。还是不起作用。我想我会继续使用SQL Express。或者如果需要真正紧凑的话,可以考虑PostgreSQL/MySQL。 - ygoe(localdb)\V11.0
作为服务器名称。经过两天的疑难解答,我终于得到了结果。如果您使用的是 SQL Server Management Studio 的 Express 版本,则在本地数据库连接时,请使用以下内容代替Local****。
使用 ServerName = (LocalDb)\MSSQLLocalDB
尝试这段代码:
RegistryKey rKey;
string InstanceName;
//use this string for database connection
string ConString;
string regPath = @"Software\Microsoft\Microsoft SQL Server\UserInstances";
rKey = Registry.CurrentUser.OpenSubKey(regPath);
if (rKey.GetSubKeyNames().Length != 0)
{
regPath += @"\" + rKey.GetSubKeyNames()[0];
rKey = Registry.CurrentUser.OpenSubKey(regPath);
InstanceName = rKey.GetValue("InstanceName").ToString();
ConString = @"Server=np:\\.\pipe\" + InstanceName +
@"\tsql\query;Initial Catalog=RahBord;Trusted_Connection=True";
}
else
{
Process.Start(@"C:\Program Files\Microsoft SQL Server\110\Tools\Binn\SqlLocalDB.exe", "c amirLOCALDB -s");
regPath += @"\" + rKey.GetSubKeyNames()[0];
rKey = Registry.CurrentUser.OpenSubKey(regPath);
InstanceName = rKey.GetValue("InstanceName").ToString();
ConString = @"Server=np:\\.\pipe\" + InstanceName + @"\tsql\query;Initial Catalog=RahBord;Trusted_Connection=True";
}
如果你的实例停止了,请转到此地址:
C:\Program Files\Microsoft SQL Server\110\Tools\Binn\
并使用此命令
SqlLocalDB.exe s yourInstance
您是否检查了TCP协议是否已启用于您的特定服务器?请按照以下说明查看它是否已启用。
http://msdn.microsoft.com/en-us/library/bb909712(v=vs.90).aspx
启用它们后,您必须重新启动服务。如果无法启动,请检查事件日志以查找原因。常见原因是在该端口上已经运行了另一个服务(通常是另一个版本的SQL Server)。如果是这种情况,您可能需要重新配置服务器端口。请查看此博客文章(还包括如何检查TCP/IP启用的图像):
接下来通常遇到的问题是防火墙或互联网安全软件阻止连接。即使在本地实例中,我也曾遇到过这种情况。解决这个问题后,您应该就可以顺利进行了。
如果经过所有这些步骤仍然无法连接,请搜索事件日志以查找原因。