DO.NET 由.Net Framework 数据提供程序和DataSet 两部分构成.

.NET FrameWork 是

Connection  连接对象

Command   命令对象

DataReader  阅读器对象

DataAdapter 适配器对象

四个核心对象构成。

使用是SqlServer数据库,所以,命令空间为

System.Data.Sqlclient

四个核心对象需加前缀

SqlConnection

SqlCommand

SqlDataReader

SqlDataAdapter

1、SqlConnection 是连接对象,创建应

用程序和数据库服务器之间的联接。

//连接字符串

string conString = “server=.;integrated security = sspi;database = MySchool”;

//创建连接

SqlConnection connection = new SqlConnection(conString);

//在应用程序中连接到数据库服务器。

方法:Open()打开连接

Close() 关闭连接

2、SqlCommand 命令对象,用于执行SQL语句并返回查询的结果集。

属性:

CommandText:要执行的SQL语句

Connection:连接对象

方法:

ExecuteScalar() ,查询聚合函数,返回单个值,返回类型为object.

ExecuteReader(),查询多行多列,返回一个结果集SqlDataReader对象。

ExecuteNonQuery() 用于执行增、删、改

等SQL语句,返回受影响的记录的条数。

返回类型为int

//示例

string selcmd = “select count(*) from userinfo”;

//创建命令对象

SqlCommand command = new SqlCommand(selcmd,connection);

//执行命令

object result = command.ExecuteScalar();

三种情况:

  • 查询单个值步骤

//1、连接字符串

string conString = “server=.;integrated security = sspi;database = MySchool”

//2、连接对象

SqlConnection connection = new SqlConnection(conString);

//3、打开连接

connection.Open();

//4、查询的SQL语句

string selcmd =string.Format(“select count(*)  from student where loginid=’{0}’”,userName);

//5、命令对象

SqlCommand command = new SqlC ommand(selcmd,connection);

//6、执行命令

int res = Convert.ToInt32(command.ExecuteScalar());

2.查询多行多列

//1、连接字符串

string conString = “server=.;integrated security = sspi;database = MySchool”

//2、连接对象

SqlConnection connection = new SqlConnection(conString);

//3、打开连接

connection.Open();

//4、查询的SQL语句

string selcmd = “select studentno,studentname,gradeid,phone from student”;

//5、命令对象

SqlCommand command = new SqlC ommand(selcmd,connection);

//6、执行命令,得到SqlDataReader对象

SqlDataReader reader = command.ExecuteReader();

while(reader.Read())

{

string no = reader[“StudentNo”].ToString();

string name = reader[“StudentName”].ToString();

Console.WriteLine(“{0}\t{1}”,no,name);

}

reader.Close();

connection.Close();

  • 执行增删改

//1、连接字符串

string conString = “server=.;integrated security = sspi;database = MySchool”

//2、连接对象

SqlConnection connection = new SqlConnection(conString);

//3、打开连接

connection.Open();

//4、查询的SQL语句

string selcmd = “insert into subject values('easyui’,30,3)”;

//5、命令对象

SqlCommand command = new SqlC ommand(selcmd,connection);

//6、执行命令,得到结果

int res = command.ExecuteNonQuery();

  • 查询数据集

//1、连接字符串

string conString = “server=.;integrated security = sspi;database = MySchool”

//2、连接对象

SqlConnection connection = new SqlConnection(conString);

//3、打开连接

connection.Open();

//4、查询的SQL语句

string selcmd = “insert into subject values('easyui’,30,3)”;

//5、命令对象

SqlCommand command = new SqlC ommand(selcmd,connection);

//6、适配器对象

SqlDataAdapter da = new SqlDataAdapter(command);

//7、数据集对象

DataSet ds = new DataSet();

//8、将数据填充到数据集

da.Fill(ds);

ADO.NET基础必背知识的更多相关文章

  1. 优秀后端架构师必会知识:史上最全MySQL大表优化方案总结

    本文原作者“ manong”,原创发表于segmentfault,原文链接:segmentfault.com/a/1190000006158186 1.引言   MySQL作为开源技术的代表作之一,是 ...

  2. ADO.NET基础开发

    ADO.NET是微软新一代.NET数据库的访问架构,ADO是ActiveX Data Objects的缩写.ADO.NET是数据库应用程序和数据源之间沟通的桥梁,主要提供了一个面向对象的数据访问架构, ...

  3. (转)python资料汇总(建议收藏)零基础必看

    摘要:没料到在悟空问答的回答大受欢迎,为方便朋友,重新整理汇总,内容包括长期必备.入门教程.练手项目.学习视频. 一.长期必备. 1. StackOverflow,是疑难解答.bug排除必备网站,任何 ...

  4. ADO.NET基础03

    数据库和VS的连接,实现数据的同步,让用户的一切信息都可以在数据库中留下记录. ADO.NET基础      它是连接所有数据库的一种特殊的技术,提供对不同的数据库统一操作接口. 在VS中也可以添加数 ...

  5. C语言必背18个经典程序

    C语言必背18个经典程序 1./*输出9*9口诀.共9行9列,i控制行,j控制列.*/ #include "stdio.h" main() {int i,j,result; for ...

  6. .Net Core 系列:2、ADO.Net 基础

    目录: 1.环境搭建 2.ADO.Net 基础 3.ASP.Net Core 基础 4.MD5.Sha256.AES 加密 5.实现登录注册功能 6.实现目录管理功能 7.实现文章发布.编辑.阅览和删 ...

  7. 有关ADO.NET基础中的基础的熟悉过程

    现在对于ADO.NET基础的理解与记忆并不严谨和完善 所以,只写一点关于自己的理解,嗯,一种去转换思维理解的方法吧,算是吧 希望各位前辈或者同学,积极指出其中的错误和偏差 个人对于刚接触的ADO.NE ...

  8. 如鹏网学习笔记(六)ADO.Net基础

    ADO.Net基础 一.ADO.Net简介 1,程序要通过SQL语句自动化的操作数据库,必须要用一个类库, 类库要提供execute("insert into ...")/exec ...

  9. day 28 网络基础相关的知识

    1.网络基础相关的知识 架构 C/S 架构:  client 客户端  server服务器端 优势: 能充分发挥PC机的性能 B/S 架构: browser 浏览器 server服务器       隶 ...

随机推荐

  1. 关于强化神兽(圣兽)DBC参数详解

    狗的攻击类型是114,名称.攻击类型.攻击图像.怪物样子.怪物等级.不死系.破隐身.经验值.生命值.魔法值.防御.魔防.最小攻击.最大攻击.魔法力.道术力.敏捷.准确.行走速度.一步几格.行走等待.攻 ...

  2. rapidxml编写xml文件(一)

    int writeXML(void) { rapidxml::xml_document<> doc; rapidxml::xml_node<> *rot = doc.alloc ...

  3. Java AQS 的胡言乱语修正版

    前言 适合读者:3 年以上经验的同学 谈到并发编程,基本上都会想到JDK 的 JUC 工具包,它包含 锁,并发工具类,原子类,线程池,还有阻塞队列,这是从网上找的一个大致的知识体系. 相信这些工具读者 ...

  4. SQL 游标介绍及使用

    游标 游标(cursor)是系统为用户开设的一个数据缓冲区,存放SQL语句的执行结果.每个游标区都有一个名字,用户可以用SQL语句逐一从游标中获取记录,并赋给主变量,交由主语言进一步处理. 游标是处理 ...

  5. CSS样式的优先级(权重)

    当使用不同的选择器选中同一个元素并设置相同样式时,这时样式间产生了冲突 最终采用的是哪个选择器? 由选择器的优先级(权重)决定,权重高的优先显示 优先级规则(多个按位置分别进行计算,不进位): 内联样 ...

  6. Python中的lambda函数介绍

    Lambda函数,即Lambda 表达式(lambda expression),是一个匿名函数(不存在函数名的函数),Lambda表达式基于数学中的λ演算得名,直接对应于其中的lambda抽象(lam ...

  7. vs2017 vs2019配置sqlite3连接引擎(驱动)指南(二)vs2019续集

    在写完上一篇博客后,一觉醒来,又又又又不行了,介绍一个终极大招,如果你的fuck vs又提示无法打开sqlite3.h的问题 环境win10  vs2019 debug x86 实在没心情写文字了,直 ...

  8. VSCODE 教程网

    http://geek-docs.com/vscode/vscode-tutorials/vs-code-text-selection.html

  9. 杭电2070 Fibbonacci Number

    Fibbonacci Number Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others ...

  10. ApacheBench(ab)压力测试工具

    服务器负载太大而影响程序效率也是很常见的,Apache服务器自带有一个叫AB(ApacheBench)的工具,可以对服务器进行负载测试 基本用法: ab  -n 全部请求数 -c 并发数测试url 注 ...