不久前,我写了一个基于网络的留言簿应用程序,编写了自己的数据库。
我的代码非常业余,但是,由于这是我的第一本出版物,我对它非常满意。 在我发布它之后大约一个月,我意识到我在代码中犯了一个大错。
我只连接到SQL Server的特定命名实例,并且在我看来,如果SQL Server实例的名称与我指定的名称不同,则它将无效。
因此,由于我的用户可能不知道正在运行的SQL Server实例的名称是什么,我想添加一个用户可以指定它的字段,如果他们这样做会有帮助,但如果他们不这样做呢? 我的答案是获取本地实例,无论名称如何。
我尝试了Data Source=.\local;
,Data Source=.;
和其他变体,但没有任何效果。
有什么想法吗?
答案 0 :(得分:0)
非命名实例称为“默认实例”,可以使用"Data Source=(local);..."
访问。
答案 1 :(得分:0)
了解哪些实例正在运行的唯一方法是查询SQL Browser服务(如果它正在运行)。 我猜你的大多数用户都在运行SQL Server Express?如果是这样,该服务称为local \ SQLEXPRESS。如果没有,它是本地的,或者他们自己命名。所以,我先尝试本地\ SQLEXPRESS,然后再尝试本地。如果没有,只需抛出异常并要求用户自己添加。