VisualStudio2013内置SQLServer入门
最近做项目老大要求用到sqlserver,但是这项目的数据库只是本地演示用并不复杂,于是决定试试VisualStudio2013内置的SQLServer。对于这个东西的了解并没有多少,然后项目初学习的资料好少(可能是我搜索方式不对),这文章就当抛砖之作吧,话不多说现在开始:
首先我查阅了一些资料,但是很多都是sqlserver而不是vs内置的那个,所以似乎很难找到适合的资料,不过我找到了两篇MSDN也就是微软的简单入门的,上链接:
https://msdn.microsoft.com/zh-cn/library/ms233763.aspx
https://msdn.microsoft.com/zh-cn/library/ms171890.aspx
第一篇是教用vs内置的Service-based Database 建立一个简单的.mdf文件,这就是一个数据库文件(Microsoft SQL Server Database File),跟着教程做,创建的过程不想mysql一样是cmd输入命令(我没用过mysql的GUI),都是在GUI上操作的
第二篇是用winform去连接第一篇创建的.mdf文件,然后添加完后可以直接以控件形式显示,但是教程就到此为止了,我要的并不是直接显示数据啊,我需要的是在C#的WPF中实现对数据库的增删改查啊,就是输入个id,从数据库中找到个对应名字给我之类的操作,所以还要继续找方法。
然后我找到了这篇文章:
http://wulin9005.blog.163.com/blog/static/13239748820133135526616/
作者跟我一样懒得去下sqlserver(逃~),然后这里教会了我在vs中连接自己电脑作为server,不过第二步大家的服务器名可能不一样,我的解决方法是:
在VS--TOOLS--Options(最下)中,搜索sql server
点Database Tools--Data Connections

SQL Server Instance Name下方的TextBox中就是你电脑Server的名字,我没改hhh
继续进行第三步就能得到名为"master"的数据库,
接着就在Tables处右键添加新表,具体如下:

可以跟我一样也可以参考microsoft的第一个链接,这样表就创建完毕了
然后是对表添加数据,对Tables下的tb_card右键Show Table Data(显示表数据),然后自由添加

好的这样就添加完数据了
接下来就是如何在代码中取得数据了,
首先在VS的VIEW--Other windows--Data Sources 中点击Add new Data Source,在Choose a Data Source Type中选Database-->next,在choose a database model中选择Dataset-->next,在Choose Your Data Connection中点击右边的New Connection,在弹出的Add Connection中点击Data source右边的按键change,然后选中Microsoft SQL Server并点击OK:

然后会有add Connection弹框如下,ServerName上面提到了用自己的,输入完可以用左下角的Test试一下连接:

成功之后就会回到choose your data connection,然后下拉框就多了一个可以选的:

选中并next,next,到了Choose your database objects,勾选tables,然后Finish,剩下都确认就行
然后server的Data Connections就会出现:

连接也完成了,最后就是创建WPF

比较简陋hhh,三个textbox分别对应cardid、username、cardType,
combobox用来选择数据库,右边btn_refresh用来首次连接并刷新数据库列表到combobox中:
#region 按键刷新数据库列表
private void btn_refresh_Click(object sender, RoutedEventArgs e)
{
DataTable t = new System.Data.DataTable();
string con = "server=(LocalDB)\\v11.0;database=master;integrated security=true";
try
{
using (SqlConnection myCon = new SqlConnection(con))
{
myCon.Open();
MessageBox.Show("打开数据库成功");
string sql = "select * from sys.databases ";
using (SqlCommand cm = new SqlCommand(sql, myCon))
{
SqlDataAdapter a = new SqlDataAdapter(cm);
a.Fill(t);
foreach (DataRow r in t.Rows)
{
cb_database.Items.Add(r["name"].ToString());
} }
}
}
catch (Exception ex)
{
MessageBox.Show("数据库打开失败,详细信息:" + ex.ToString());
}
}
#endregion
刷新完成后,在第一个textbox输入123,然后点击btn_open,另外两个textbox将会显示对应数据,btn_open代码如下:
#region open点击
private void Button_Click(object sender, RoutedEventArgs e)
{
try
{
if (cb_database.Text.Trim().Length > )
{
string con = "server=(LocalDB)\\v11.0;database=" + cb_database.Text.Trim() + ";integrated security=true";
using (SqlConnection myCon = new SqlConnection(con))
{
string sql = "select userName,cardType from tb_card where cardID='" + tb_id.Text + "'";
using (SqlCommand cmd = new SqlCommand(sql, myCon))
{
myCon.Open();
MessageBox.Show("连接数据库成功" + ",ServerVersion:" + myCon.ServerVersion + ";DataSource" + myCon.DataSource);
using (SqlDataReader sdr = cmd.ExecuteReader())
{
if (sdr.Read())
{
string userName = sdr.GetString().ToString();
string cardType = sdr.GetString().ToString();
tb_name.Text = userName;
tb_type.Text = cardType;
}
else
{
MessageBox.Show("gg");
}
}
} }
}
else
{
MessageBox.Show("请选择要连接的数据库");
}
}
catch (Exception ex)
{
MessageBox.Show("数据库连接失败,详细信息:" + ex.ToString());
}
}
#endregion

完结撒花~如果有神马意见建议欢迎留言谢谢~
VisualStudio2013内置SQLServer入门的更多相关文章
- VisualStudio2013内置SQLServer入门(二)--增删改查
前一篇 http://www.cnblogs.com/qixi233/p/4766451.html 这篇是sqlserver的操作 界面比较走心哈哈哈,将就着看,主要就是下面增删改查四个btn 对于s ...
- VisualStudio2013&VS2015内置SQLServer入门 (三)
关于LocalDB的部署(publish): 使用本机做服务器(目测不可行) 双击项目的Properties-->Publish-->Application Files,你会发现没有.md ...
- 《zw版·Halcon入门教程与内置demo》
<zw版·Halcon入门教程与内置demo> halcon系统的中文教程很不好找,而且大部分是v10以前的版本. 例如,QQ群: 247994767(Delphi与halcon), 共享 ...
- JSP内置标签 JSP中JavaBean标签 JSP开发模式 EL和JSTL快速入门
2 JSP内置标签(美化+业务逻辑) 1)为了取代<%%>脚本形式,使用JSP标签/JSP动作,目的:与JSP页面的美化,即JSP面页都是由标签组成,不再有其它的内容 2)JSP内 ...
- sqlserver学习笔记(六)—— sqlserver内置函数(字符串、日期)
sqlserver中有很多内置函数,这里总结了一些常用的 一.关于字符串的函数: 1.CHARINDEX 寻找一个指定字符串在另一个字符串中的起始位置 SELECT CHARINDEX('world‘ ...
- Springboot入门及配置文件介绍(内置属性、自定义属性、属性封装类)
目的: 1.Springboot入门 SpringBoot是什么? 使用Idea配置SpringBoo使用t项目 测试案例 2.Springboot配置文件介绍 内置属性 自定义属性 属性封装类 Sp ...
- Python入门之 Python内置函数
Python入门之 Python内置函数 函数就是以功能为导向,一个函数封装一个功能,那么Python将一些常用的功能(比如len)给我们封装成了一个一个的函数,供我们使用,他们不仅效率高(底层都是用 ...
- javaScript中Math内置对象基本方法入门
概念 Math 是javaScript的内置对象,包含了部分数学常数属性和数学函数方法. Math 不是一个函数对象,用户Number类型进行使用,不支持BigInt. Math 的所有属性与方法都是 ...
- 【Go入门教程2】内置基础类型(Boolean、数值、字符串、错误类型),分组,iota枚举,array(数值),slice(切片),map(字典),make/new操作,零值
这小节我们将要介绍如何定义变量.常量.Go内置类型以及Go程序设计中的一些技巧. 定义变量 Go语言里面定义变量有多种方式. 使用var关键字是Go最基本的定义变量方式,与C语言不同的是Go把变量类型 ...
随机推荐
- Node.js权威指南 (4) - 模块与npm包管理工具
4.1 核心模块与文件模块 / 574.2 从模块外部访问模块内的成员 / 58 4.2.1 使用exports对象 / 58 4.2.2 将模块定义为类 / 58 4.2.3 为模块类定义类变量或类 ...
- 两次fopen不同的文件返回相同的FILE* 地址
最近接触一个垃圾程序,出现一个奇怪的bug,现象是两次fopen不同的文件返回相同的FILE*地址,第二次返回的FILE*有时候无端端的就被关闭了.以下代码是对这个bug的概括: auto fp1 = ...
- Solr -- Solr Facet 2
solr将以导航为目的的查询结果称为facet. 它并不会修改查询结果信息, 只是在查询结果上根据分类添加了count信息, 然后用户根据count信息做进一步的查询, 比如淘宝的查询列表中, 上面会 ...
- Windows下安装和配置Maven的方法及注意事项
首先,从http://maven.apache.org/download.cgi网站上下载适用于当前操作系统操作格式的最新版本的maven安装包.如:apache-maven-3.2.5-bin.zi ...
- 神器 Sublime Text 3 的一些常用快捷键
选择类 Ctrl+D 选中光标所占的文本,继续操作则会选中下一个相同的文本. Alt+F3 选中文本按下快捷键,即可一次性选择全部的相同文本进行同时编辑.举个例子:快速选中并更改所有相同的变量名. ...
- Sicily1151:魔板搜索及优化
最终优化代码地址: https://github.com/laiy/Datastructure-Algorithm/blob/master/sicily/1151.c 题目如下 Constraints ...
- NGRC远程控制
这是大三学完计算机网络的课程之后开始写的东西,后来慢慢完善到能用的程度. 界面大概是这样 还有这样 使用Java的好处是不用修改就可以在Mac和Linux上运行(测试过Ubuntu和OS X) 缺点是 ...
- Maven 私服配置 转
1.配置Nexus为maven的私服 第一种方式:在项目的POM中如下配置 <repositories> <repository> <id> ...
- 浅谈qmake之pro、pri、prf、prl文件
浅谈qmake之pro.pri.prf.prl文件 转载自:http://blog.csdn.net/dbzhang800/article/details/6348432 尽管每次和cmake对比起来 ...
- mapreduce 读写lzo文件
1.读lzo文件 需要添加以下代码,并导入lzo相关的jar包 job.setInputFormatClass(LzoTextInputFormat.class); 2.写lzo文件 lzo格式默认 ...