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把变量类型 ...
随机推荐
- Android中moveTo、lineTo、quadTo、cubicTo、arcTo详解(实例)
1.Why 最近在写android画图经常用到这几个什么什么To,一开始还真不知道cubicTo这个方法,更不用说能不能分清楚它们了,所以特此来做个小笔记,记录下moveTo.lineTo.quadT ...
- 【HDOJ】1754 I Hate It
线段树. #include <iostream> #include <cstdio> #include <cstring> using namespace std; ...
- 新图形API为unity5 带来了什么&下一代新图形API的好处
西瓜的演讲ppt翻译+解释+其他: wolf96 在最基本的层面上,这些新api是为了改进CPU性能和效率,通过:减少CPU渲染瓶颈的情况,提供更多可预测和稳定的驱动的行为,给应用程序更多控制,就像在 ...
- SQLyog之MySQL客户端的下载、安装和使用
本博文的主要内容有 .SQLyog的下载 .SQLyog的安装 .SQLyog的使用 1.SQLyog的下载 1.进入SQLyog官网, https://www.webyog.com/en 或 ...
- VMware虚拟机里Ubuntu14.04下安装及配置MySQL
更新源列表 快捷键"Ctrl+Alt+t"打开"Terminal终端窗口",输入"sudo apt-get update"-->回车- ...
- Cookie及App登陆的原理
1.Cookie Cookie意为"甜饼",是由W3C组织提出的.目前Cookie已经成为标准.由于HTTP是一种无状态的协议,服务器单从网络连接上无从知道客户身份.怎么办呢?就给 ...
- for循环++i效率
偶然用到for循环 注意查看了一下 ++i的速度更快 这是PHP语言独有的 其他语言不会有这种情况
- Linux查看系统资源占用
Linux查看系统资源占用 在系统维护的过程中,随时可能有需要查看 CPU和内存的使用率,并根据相应信息分析系统状况的需求.本文介绍一下几种常见的Linux系统资源查看命令. 1.总体内存占用的查看 ...
- 阿里云 centos 部署javaweb 应用
今天在阿里云上部署了个javaweb应用,在此记录下步骤,以供下次使用. 服务器版本: 1.root登陆服务器 2.服务器安装FTP服务,或者直接使用winscp上传文件(简单),本文介绍安装FTP服 ...
- XZ压缩
XZ压缩最新压缩率之王 xz这个压缩可能很多都很陌生,不过您可知道xz是绝大数linux默认就带的一个压缩工具. 之前xz使用一直很少,所以几乎没有什么提起. 我是在下载phpmyadmin的时候看到 ...