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#的基础回顾就先到前面哪里,这 ...
随机推荐
- CQRS\ES架构介绍
大家好,我叫汤雪华.我平时工作使用Java,业余时间喜欢用C#做点开源项目,如ENode, EQueue.我个人对DDD领域驱动设计.CQRS架构.事件溯源(Event Sourcing,简称ES). ...
- 新浪微博UWP UI意见征求
各位园主,卑职最近在忙一些新浪微博UWP的事儿,其中有一些UI上的design和实现,拿出来见见公婆,请大家给个意见: 您是喜欢A还是B.麻烦直接回在评论区了,写A或B,愿意多写几句意见的更欢迎! 先 ...
- git抽疯了。。。
今天用git推送提交的时候,莫名其妙的要求输入密码,输就输吧,输入了还都验证不了,继续弹出输入框,难道我的密码记错了,于是我去更改了密码,但还是继续弹出密码输入框. 百思不得姐,于是把重新生成了pub ...
- 设计模式之美:Interpreter(解释器)
索引 意图 结构 参与者 适用性 效果 相关模式 实现 实现方式(一):Interpreter 模式结构样式代码. 实现方式(二):解释波兰表达式(Polish Notation). 意图 给定一个语 ...
- Html做三个平台原生APP啦
DeviceOne之前介绍过了,现在来介绍一下DeviceOne快速开发到什么程度 使用js只需要5分钟就可以打出垮Android.ios.windows三大平台的纯原生UI的安装包. 只需要6个小时 ...
- 冲刺阶段 day 14
项目进展 经过这几个星期的努力,我们已经完成了我们的软件工程项目,经过多次测试,项目已经可以准确无误地运行. 存在问题 测试期间,未发现问题. 心得体会 在这几个星期的努力下,我们终于完成了我们预期的 ...
- [.net 面向对象程序设计进阶] (2) 正则表达式 (一) 快速入门
[.net 面向对象程序设计进阶] (2) 正则表达式 (一) 快速入门 1. 什么是正则表达式? 1.1 正则表达式概念 正则表达式,又称正则表示法,英文名:Regular Expression(简 ...
- 一天一小段js代码(no.3)
//遍历属性,返回名值对 function outputAttributes(element){ var pairs = new Array(), attrName, attrValue, i, le ...
- Move to Github
Hi,各位,好久不见.我已经将博客移动到了 Github 上.原因是我喜欢用 Markdown 而不是 WYSIWYG 的编辑器写博客.请访问新地址: http://lxconan.github.io
- redis系列-redis的持久化
redis对数据的持久化有两种方式:RDB(快照保存)和AOF(命令日志). RDB 介绍:将内存快照保存到磁盘,dump.rdb二进制文件 触发:满足“N 秒内数据集至少有 M 个改动”,或使用sa ...

