在 Microsoft SQL Server 管理中看不到我的数据库

Posted

技术标签:

【中文标题】在 Microsoft SQL Server 管理中看不到我的数据库【英文标题】:Can't see my DB on Microsoft SQL Server Management 【发布时间】:2015-05-18 18:41:09 【问题描述】:

我正在.NET 上使用代码优先方法创建两个不同的数据库。

虽然它们都已成功创建,但当我转到 Microsoft SQL Server Management Studio 时,我只能看到其中一个。

这将创建确实显示的数据库:

public class MappingContextGeneral : DbContext

    public DbSet<Store> Stores  get; set; 
    public DbSet<SuperUser> SuperUsers  get; set; 
    public DbSet<InfoLogin> PassWordSuperUsers  get; set; 
    public MappingContextGeneral()
       : base("CheBayDB")
    
    

这个创建了 SQL Server Management Studio 没有显示的数据库:

public DbSet<Client> Clients  get; set; 
public DbSet<Category> Categories  get; set; 
public DbSet<Administrator> Administrators  get; set; 
public DbSet<InfoLoginClient> PassWordsClients  get; set; 
public DbSet<InfoLoginAdmin> PassWordsAdmins  get; set; 
public MappingContextStoreRelacional(string store_name)
    : base(store_name)


它们看起来非常相似,而且我的团队使用相同的代码没有问题,所以我认为这是 Management Studio 或 SQL Server 的问题。

我的app.conf 看起来像这样:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <!-- For more information on Entity Framework configuration, visit     http://go.microsoft.com/fwlink/?LinkID=237468 -->
<section name="entityFramework"         type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection,         EntityFramework, Version=6.0.0.0, Culture=neutral,     PublicKeyToken=b77a5c561934e089" requirePermission="false" />
  </configSections>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
  </startup>
  <entityFramework>
    <defaultConnectionFactory     type="System.Data.Entity.Infrastructure.SqlConnectionFactory,     EntityFramework" />
    <providers>
      <provider invariantName="System.Data.SqlClient"     type="System.Data.Entity.SqlServer.SqlProviderServices,     EntityFramework.SqlServer" />
    </providers>
  </entityFramework>
</configuration>

为什么第二个没有出现在 SQL Server Management 中?

【问题讨论】:

第二个内容的默认构造函数是什么?您的 app.config/web.config 中是否有 CheBayDb 连接字符串和第二个类似的连接字符串? 我更希望里面有 connection strings 的部分。您在此处显示的这些部分对世界上的每个人都是一样的... 【参考方案1】:

我的猜测是,您有一个连接字符串用于其中一个映射到 Sql Server 的本地实例。对于另一个我猜你没有连接字符串或者连接字符串是本地数据库。

签入 web.config 或 app.config。

【讨论】:

以上是关于在 Microsoft SQL Server 管理中看不到我的数据库的主要内容,如果未能解决你的问题,请参考以下文章

怎么卸载Microsoft SQL Server 2012LocalDB

Microsoft SQL Server 管理工作室 (2012)

数据库管理:Microsoft SQL Server 2016

Microsoft SQL Server 简介

[08001] [Microsoft] [SQL Server Native Client 11.0] 命名管道提供程序:无法打开与SQL Server的连接

Microsoft SQL Server 图书管理数据库的建立