Sql Server对象管理器的使用
VS提供了很多便捷的工具,Sql Server对象管理器可以直接在VS里面访问数据库,不用再打开一个Management Studio。这里记录下Sql Server对象管理器的使用。
1.先在视图里面找到SqlServer对象管理器

2.在vs的右侧边栏就会出现。
我们先链接一个localdb,在Sql Server上右键 选择添加Sql Server

会出现下面的对话框,这里填写(LocalDb)\v11.0,选用windows验证。这样就出现本机下面的所有localdb了。

这个是来自MVC webconfig的链接字符串 connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-EF-20150303094817;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnet-EF-20150303094817.mdf"。
让人奇怪的是,AttachDbFilename是aspnet-EF-20150303094817.mdf,在MVC4的工程App_Data文件中是数据库名称是EF.Models.VetContext.mdf. 在c盘和工程里面没有找到aspnet-EF-20150303094817.mdf,但实际操作是EF.Models.VetContext.mdf.他们应该存在某种映射。
<add name="DefaultConnection" providerName="System.Data.SqlClient" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-EF-20150303094817;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnet-E F-20150303094817.mdf" />
<add name="CEEntities" connectionString="Data Source=|DataDirectory|Db.sdf" providerName="System.Data.SqlServerCe.4.0" />
<add name="SqlConnection" connectionString="Data Source=RJ-STONE-PC;Initial Catalog=Support;Integrated Security=False;Persist Security Info=False;User ID=sa;Password=sa" providerName="System.Data.SqlClient" />
</connectionStrings>
sqlserver和ce的链接字符串都不用说了。 Initial Catalog表示数据库名称。Security Info表示登陆方式,false表示需要sa登陆。为true或者SSPI都是无需验证的windows登陆。
奇葩的是我修改了attachDBfilename的名称为AttachDBFilename=|DataDirectory|\EF.mdf,App_data中并没有创建新的ef.mdf,将Initial Catalog后面也改成了EF 运行程序之后,数据还是更新在了EF.Models.VetContext.mdf中。
<add name="DefaultConnection" providerName="System.Data.SqlClient" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=EF;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\EF.mdf" />

这个现象让我有点寝食难安。现在发现,原来是开始创建VetContext.cs的时候,那个DefaultConnection根本没有使用。Dbcontext会自动的创建一个连接,EF.Models.VetContext.mdf才是这个默认链接的名称。所以修改webconfig那个链接或者删除那个连接字符串都是没有影响的。
public class VetContext:DbContext
{
public DbSet<Patient> Patients { get; set; }
public DbSet<Visit> Visits { get; set; }
}
正确的做法是加上一个构造函数:
public class VetContext:DbContext
{
public DbSet<Patient> Patients { get; set; }
public DbSet<Visit> Visits { get; set; } public VetContext() : base("DefaultConnection")
{ }
}
这个时候就会创建新的数据库了。

同样可以用来加载本地Sql Sever 数据库。

另外,vs还有自带的服务器资源管理器里面也可以打开数据库。但没有上面的好用。当数据库开始处于链接状态,他不能成功链接到数据库,需要待其他使用链接关闭之后才可以。对于数据库的访问功能,两者没有什么区别。

Sql Server对象管理器的使用的更多相关文章
- 查看本地安装的sql server是什么版本
方法一:查询语句 SELECT @@VERSION返回当前安装的日期.版本和处理器类型.例如:结果为: Microsoft SQL Server 2008 (RTM) - 10.0.1600.22 ( ...
- SQL Server统计信息:问题和解决方式
在网上看到一篇介绍使用统计信息出现的问题已经解决方式,感觉写的很全面. 在自己看的过程中顺便做了翻译. 因为本人英文水平有限,可能中间有一些错误. 假设有哪里有问题欢迎大家批评指正.建议英文好的直接看 ...
- 【SQL SERVER】 搭建AlwaysON高可用组
项目需要保障数据的高可用,于是可选的方案无非是Oracle集群. 传统的主从+心跳切换访问点以及SQL Server AlwaysOn这类方案.(//经验不多,了解和实践过的方案就这类,轻拍) Ora ...
- 最近帮客户实施的基于SQL Server AlwaysOn跨机房切换项目
最近帮客户实施的基于SQL Server AlwaysOn跨机房切换项目 最近一个来自重庆的客户找到走起君,客户的业务是做移动互联网支付,是微信支付收单渠道合作伙伴,数据库里存储的是支付流水和交易流水 ...
- SQL Server 大数据搬迁之文件组备份还原实战
一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 解决方案(Solution) 搬迁步骤(Procedure) 搬迁脚本(SQL Codes) ...
- Sql Server系列:分区表操作
1. 分区表简介 分区表在逻辑上是一个表,而物理上是多个表.从用户角度来看,分区表和普通表是一样的.使用分区表的主要目的是为改善大型表以及具有多个访问模式的表的可伸缩性和可管理性. 分区表是把数据按设 ...
- SQL Server中的高可用性(2)----文件与文件组
在谈到SQL Server的高可用性之前,我们首先要谈一谈单实例的高可用性.在单实例的高可用性中,不可忽略的就是文件和文件组的高可用性.SQL Server允许在某些文件损坏或离线的情况下,允 ...
- 从0开始搭建SQL Server AlwaysOn 第一篇(配置域控)
从0开始搭建SQL Server AlwaysOn 第一篇(配置域控) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www.cnb ...
- 从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)
从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www ...
随机推荐
- XE3随笔15:从XML中解析
SuperObject 文件包中还有一个 SuperXmlParser 单元, 可以从 XML 中解析出 ISuperObject. SuperXmlParser 只有三个函数: XMLParseSt ...
- ASP.NET 页生命周期
ASP.NET 页运行时,此页将经历一个生命周期,在生命周期中将执行一系列处理步骤.这些步骤包括初始化.实例化控件.还原和维护状态.运行事件处理程序代码以及进行 呈现.了解页生命周期非常重要,因为这样 ...
- Android studio下载依赖包很慢
build gradle文件 buildscript { repositories { //jcenter() maven { url 'http://maven.oschina.net/conten ...
- --with-http_realip_module选项(后台Nginx服务器记录原始客户端的IP地址 )
转自:http://blog.itpub.net/27043155/viewspace-734234/ 通过这个模块允许我们改变客户端请求头中客户端IP地址值(例如,X-Real-IP 或 X-For ...
- 在iOS中使用Phonegap防止Webview被上下拖动
在使用PhoneGap制作App的时候,iOS作为承载App页面的容器的Webview,在手指向下或者向上滑动屏幕时,除了页面本身的滚动外,还经常会看到整体页面底部和屏幕底部被拖动出黑屏 为了防止这一 ...
- nginx新增绑定域名
例如我要使binzz.com也绑定到原有的www.binzz.com上,在server上添加下面代码: server { listen 80; server_n ...
- 我是一只IT小小鸟——读后感
读到书名我便知道,我们是一类人,都是现在在学IT的学生或者打算以后从事IT行业的人,或者现在正在从事IT行业的人,不同区域的人,不同性格的人,不同家庭背景的人,不同,很多的不同,但是我们都有相同的迷惘 ...
- (Python )格式化输出、文件操作、json
本节学习Python的格式化输出,文件操作以及json的简单用法 1.格式化输出 将非字符串类型转换成字符串,可以使用函数:str() 或者repr() ,(这两个函数的区别目前我还没搞懂,求解答) ...
- PBX 评测二
//由于诸事繁多,结果评测一拖再拖. 博客园的优化还行啊,PBX220搜索, 第一页,第四个就是上一篇的评测文章. 配置没有什么说的(按照说明/还有这篇无线迷你IPPBX-PBX220). 以下是在公 ...
- Swift基础语法(一)
swift是一个基于objc进化过来的一个新的 OS X/IOS编程语言,而objc是基于c语言进化过来的一门编程语言.所以理论上说objc与c++是同一代产物并且objc与c++是相互独立的两套体系 ...