我一直在尝试使用heidisql的最新版本(此时)连接到localdb实例,但无济于事。
我已按照此答案的说明进行操作,但它似乎不再起作用了:
HeidiSql connection to MS SQL Server LocalDB
我尝试了以下内容:
1)heidisql -d = LocalDB -h =%pipename%-n = 3 -d = LocalDB
2)heidisql -d = LocalDB -h = np:\。\ pipe \ LOCALDB#41CF9FCB \ tsql \ query -n = 3 -d = LocalDB(我意识到每次启动一个新的localdb实例时该数字都会改变)
3)heidisql -d = LocalDB -h = 41CF9FCB -n = 3 -d = LocalDB
有什么想法吗?
修改
答案 0 :(得分:10)
对于Web.config
;
<add name="WEDOBADGEDatabase" connectionString="Data Source=(LocalDb)\development;Initial Catalog=WEDOBADGE;AttachDBFilename=|DataDirectory|\DevelopmentDatabase.mdf;Integrated Security=SSPI;" providerName="System.Data.SqlClient" />
最重要的信息是Data Source=(LocalDb)\development
,[替换(当然)C:\Program Files\Microsoft SQL Server\120\
使用正确的路径&amp;在Data Source=(LocalDb)\
之后使用在连接字符串中选择的正确名称(在我的情况下为非字母区分,development
)]尝试:
"C:\Program Files\Microsoft SQL Server\120\Tools\Binn\SqlLocalDB.exe" info Development
这应输出类似于:
的内容Name: Development
Version: 12.0.2000.8
Shared name:
Owner: hostname\username
Auto-create: No
State: Running
Last start time: 8/2/2016 3:20:57 PM
Instance pipe name: np:\\.\pipe\LOCALDB#CDE5547F\tsql\query
从“实例管道名称”复制\\.\pipe\LOCALDB#CDE5547F\tsql\query
, 没有初始np:
。此外,您的管道名称可能与我的不同。
然后你可以像这样在HeidiSQL中创建一个新会话:
N.B。:“网络类型”,“主机名/ IP”和“使用Windows身份验证”很重要;其他设置(例如“数据库”)取决于你,所以你可以将它们留空/跳过等等。
积分转到https://stackoverflow.com/a/33748584/11895以获取管道名称建议。
答案 1 :(得分:0)
从heidisql.exe修订版9.3.0.5108开始,您还可以:
"C:\Program Files\Microsoft SQL Server\120\Tools\Binn\SqlLocalDB.exe" start "MSSQLLocalDB"
"C:\Program Files\Microsoft SQL Server\120\Tools\Binn\SqlLocalDB.exe" info "MSSQLLocalDB"
(例如\\.\pipe\LOCALDB#1B9DCF1E\tsql\query
"C:\Program Files\HeidiSQL\heidisql.exe --nettype=3 --host="\\.\pipe\LOCALDB#1B9DCF1E\tsql\query" --winauth=1"
我使用一个Bash脚本来自动化所有这些,它大致如下:
shopt -s expand_aliases
alias __sqllocaldb='/c/Program\ Files/Microsoft\ SQL\ Server/120/Tools/Binn/SqlLocalDB.exe'
alias __heidisql='/c/Program\ Files/HeidiSQL/heidisql.exe'
__sqllocaldb start "Development"
hostname=$(__sqllocaldb info "Development" | tail -1 | sed 's/\(Instance pipe name: np:\)//')
__heidisql --nettype=3 --host="$hostname" --winauth=1