ADO.NET基础03
数据库和VS的连接,实现数据的同步,让用户的一切信息都可以在数据库中留下记录。
ADO.NET基础
它是连接所有数据库的一种特殊的技术,提供对不同的数据库统一操作接口。
在VS中也可以添加数据库,也可以在其中使用SQL语句,不需要在sql数据库中创建,这样用起来就特别方便,便于数据库的快速读取。<基于服务的数据库>
在VS中创建的mdf和数据库中的一样,它跟随着项目走,用起来方便运行时会自动附加(Attach)。打包时首先关闭mdf与数据库的连接,才行。
{ado.net提供两个组件可以使得程序访问和处理数据 1:.NET Framework数据提供程序和DataSet(数据集)}
其中.NET Framework数据提供程序是专门为数据处理,以及快速的只进,只读访问数据设计的组件,使用其可以连接到数据库,执行命令和检索结果,直接对数据库进行操作等。而DataSet则是专门为独立于任何数据源而设计的,使用其可以不直接与数据库打交道,可以大批的处理数据,也可以将数据绑定在控件上面。
【现在运行的SQL数据库在VS中就得使用System.Data.SqlClient命名空间代码】

**.NET Framework数据提供程序的4个核心对象
1:Connection对象 用于与特定数据源的联系。
2:Command对象 用于对数据源执行命令。
3:DataReader对象 用于从数据源中读取只进且只读的数据源。
4:DataAdapter对象 用于用数据源填充DataSet并解析更新。
连接SQL Server
程序通过在vs的服务器资源管理器来连接SQL数据库的信息。示例如下
一: 视图----服务器资源管理器

二:服务器资源管理器------右键-----添加连接 [在选择如下图到---------添加连接窗口]示例如下

三:添加连接------执行下面的步骤(切记一定要先测试,还有本地的服务器名为:‘.’或者为:‘local’)

四:这样就在右边的服务器资源管理器中可以找到自己要添加的数据库啦。

代码访问到SQL
在vs代码中操作数据库表中的数据,我们可以通过下面的代码来进行;
首先创建个控制台程序的项目,我们在其中加入如下的代码。
连接数据库的三步骤 [一二部可以交换]
1:定义连接字符串。{不同的数据库的连接字符串的格式有所不同}。
“sql数据库的格式”
string connString= Data Source=服务器名;Initial Catalog=数据库名;User ID=用户名;Pwd=密码;
2:创建Connection对象,使用定义好的连接字符串来创建Connection对象。
SqlConnection connection=new SqlConnection(connString);
3:打开数据库的连接。调用Conncection对象的Open()方法打开数据库连接
connection.open();
到这里数据库就算是连接成功了,下来我们就可以进行对数据库的操作了。
eg :
static void Main(string[] args)
{
//数据库连接字符串
string connString = "Data Source=zhanghui; Initial Catalog=Ahui; User ID=sa; Pwd=111";
//创建数据库连接
SqlConnection conn=new SqlConnection(connString);
//打开数据库
conn.Open();
Console.WriteLine("打开成功");
Console.ReadKey();
认识Command对象
建立数据库连接,打开数据库后,操作数据库就用到了Commamd对象(Command:命令),使用Command对象可以对数据库执行增删改查的命令。
要使用Command对象,必须有一个可用的Command对象
Command的四步骤
1:创建数据库连接
2:定义执行的SQL语句,需要将对数据库执行的SQL语句赋值给一个字符串。
3:创建Command对象,使用已有的Connection和SQL语句字符串来创建Command对象。
4:执行SQL语句。调用Command对象的某个命令来执行命令。
eg one :
private void btnConnection_Click(object sender, EventArgs e)
{
//数据库连接字符串
string connString = "Data Source=zhanghui;Initial Catalog=Ahui;User ID=sa;Pwd=111";
//创建数据库的连接
SqlConnection connection = new SqlConnection(connString);
//打开数据库
connection.Open();
//使用command对象可以对数据库执行增删改查的命令。
using (SqlCommand cmd=connection.CreateCommand()) //CreateParameter为创建SqlParameter对象的新实例。
{
cmd.CommandText = "Insert into Student(Name,Age,Gender,Math,Chinese) values('abc',18,'女',100,'日本')";//CommandText:获取或设置要对数据源执行的Transact-SQL语句或存储过程
cmd.ExecuteNonQuery(); //对Connection执行Transant-SQL语句并返回受影响的行数。
MessageBox.Show("插入成功");
}
MessageBox.Show("成功");
eg two:
在一个表中插入数据。之后显示插入成功。
eg:
Console.WriteLine("请输入用户名");
string username = Console.ReadLine();
Console.WriteLine("请输入密码");
string password = Console.ReadLine();
//数据库连接字符串
string connString = "Data Source=zhanghui; Initial Catalog=Ahui; User ID=sa;Pwd=111";
//创建数据库连接
SqlConnection conn = new SqlConnection(connString);
conn.Open(); //打开数据库;
using (SqlCommand ked = conn.CreateCommand())
{
ked.CommandText = "Insert into Student(Name,Age) values(' " + username + " ', ' " + password + " ')";
ked.ExecuteNonQuery();
Console.WriteLine("插入成功");
}
Console.WriteLine("打开数据库连接成功");
Console.ReadKey();

eg three:
在前台显示数据库中的数据。
eg:
string connString = "Data source=zhanghui; Initial Catalog=Ahui; User ID=sa; Pwd=111";
SqlConnection conn = new SqlConnection(connString);
conn.Open();
using (SqlCommand ka = conn.CreateCommand())
{
ka.CommandText = "select * from Student";
using (SqlDataReader reader = ka.ExecuteReader())
{
while (reader.Read())
{
// int kk = Convert.ToInt32(reader.GetInt32(1));
Console.WriteLine(reader.GetString(reader.GetOrdinal("Name")));
}
}
}
Console.WriteLine("ok");
Console.ReadKey();

今天就记录到这,明天继续,加油。终有一天会成为大神。
ADO.NET基础03的更多相关文章
- javaSE基础03
javaSE基础03 生活中常见的进制:十进制(0-9).星期(七进制(0-6)).时间(十二进制(0-11)).二十四进制(0-23) 进制之间的转换: 十进制转为二进制: 将十进制除以2,直到商为 ...
- javascript基础03
javascript基础03 1. 算术运算符 后增量/后减量运算符 ++ ,-- 比较运算符 ( >, <, >=, <=, ==, !=,===,!== ) 逻辑运算符( ...
- .Net Core 系列:2、ADO.Net 基础
目录: 1.环境搭建 2.ADO.Net 基础 3.ASP.Net Core 基础 4.MD5.Sha256.AES 加密 5.实现登录注册功能 6.实现目录管理功能 7.实现文章发布.编辑.阅览和删 ...
- 有关ADO.NET基础中的基础的熟悉过程
现在对于ADO.NET基础的理解与记忆并不严谨和完善 所以,只写一点关于自己的理解,嗯,一种去转换思维理解的方法吧,算是吧 希望各位前辈或者同学,积极指出其中的错误和偏差 个人对于刚接触的ADO.NE ...
- 如鹏网学习笔记(六)ADO.Net基础
ADO.Net基础 一.ADO.Net简介 1,程序要通过SQL语句自动化的操作数据库,必须要用一个类库, 类库要提供execute("insert into ...")/exec ...
- ADO.NET基础开发
ADO.NET是微软新一代.NET数据库的访问架构,ADO是ActiveX Data Objects的缩写.ADO.NET是数据库应用程序和数据源之间沟通的桥梁,主要提供了一个面向对象的数据访问架构, ...
- 086 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 03 面向对象基础总结 01 面向对象基础(类和对象)总结
086 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 03 面向对象基础总结 01 面向对象基础(类和对象)总结 本文知识点:面向对象基础(类和对象)总结 说明 ...
- day33-线程基础03
线程基础03 6.用户线程和守护线程 用户线程:也叫工作线程,当线程的任务执行完或者通知方法结束.平时用到的普通线程均是用户线程,当在Java程序中创建一个线程,它就被称为用户线程 守护线程(Daem ...
- ADO.NET基础巩固-----连接类和非连接类
最近的一段时间自己的状态还是不错的,早上,跑步,上自习看书,下午宿舍里面编程实战,晚上要么练习代码,要么去打球(在不打就没机会了),生活还是挺丰富的. 关于C#的基础回顾就先到前面哪里,这 ...
随机推荐
- RCP:eclipse的DEBUG机制
Eclipse debug文档翻译 运行一个程序需要添加launch configurable,在自定义launch configuration的时候会指定模式,比如run,debug,profile ...
- node(websocket)
websocket原本是html5下实现长链接的一个特性,当前已被众多浏览器支持. 在websocket协议中,首先通过http交换一次握手,明确将协议升级至websocket.同时建立一个TCP通道 ...
- 利用avalon 实现一个简单的成绩单
本文的灵感是来自Halower的这篇博文,他是使用knockout与jQuery实现的.不过我觉得MVVM本来就强大的事件绑定功能,因此用jQuery 是多此一举.另,他也用了一些面向对象的写法.我个 ...
- 统计第一个空字符前面的字符长度(java实现)
举例来说:char buf[] = {'a','b','c','d','e','f','\0','x','y','z'}当输入N=10或20,期待输出是6:当输入N=3或5,期待输出是3或5. pac ...
- Jetty 9 源码分析 Connector及Server类(一)
本文的源码基于Jetty9,主要分析了Jetty 的Connector与Server类间在Jetty启动过程中的一些细节.Jetty9 对以前的Connector体系进行了重构, 结构与6和7都不同, ...
- webservice 之 WSDL的解析
先看一个wsdl, <?xml version="1.0" encoding="UTF-8" standalone="no"?> ...
- Atitit 图像处理 平滑 也称 模糊, 归一化块滤波、高斯滤波、中值滤波、双边滤波)
Atitit 图像处理 平滑 也称 模糊, 归一化块滤波.高斯滤波.中值滤波.双边滤波) 是一项简单且使用频率很高的图像处理方法 用途 去噪 去雾 各种线性滤波器对图像进行平滑处理,相关OpenC ...
- Atitit.java c#这类编程语言的设计失败点attilax总结
Atitit.java c#这类编程语言的设计失败点attilax总结 1. Npe1 2. Api粒度过小而又没有提供最常用模式1 3. checked exception(jeig n jyejy ...
- atitit.vod search doc.doc 点播系统搜索功能设计文档
atitit.vod search doc.doc 点播系统搜索功能设计文档 按键的enter事件1 Left rig事件1 Up down事件2 key_events.key_search = fu ...
- Ext2.x学习笔记
Ext2.X学习笔记一 一.ExtJS简介 1.1 什么是Ext JS? · Ext JS是一个Ajax框架,可以用来开发富客户端的Ajax应用,是一个用javascript写的,主要用于创建前端用 ...

