②command对象用来操作数据库。(三个重要的方法:ExecuteNonQuery(),ExecuteReader(),ExecuteScalar())

⑴以update(改数据)为例,用到ExecuteNonQuery()方法(执行SQL语句,返回受影响行)

private void button2_Click(object sender, EventArgs e)
{
SqlConnection conn =new SqlConnection("server=.;Initial catalog=db_PWMS;integrated security=SSPI");
conn.Open();//老规矩,先连接
try
{
SqlCommand cmd = new SqlCommand();//实例操作项cmd
cmd.Connection = conn;//操作conn这个数据库
cmd.CommandText = "update Table_1 set Prices =3333 where Origin ='国产'";//操作这样一句SQL语句
cmd.CommandType = CommandType.Text;//书上这么写的,不知道干嘛的,以后知道了再说。去掉这句话也没事。
cmd.ExecuteNonQuery();//command对象重要的三个方法之一,执行增删改
int i = Convert.ToInt32(cmd.ExecuteNonQuery());
label2.Text = i + "条数据发生改动";
}
catch (Exception ex){ MessageBox.Show(ex.Message); }
}

点击事件(button2)

执行前数据库

执行后

⑵以各种姿势查数据ExecuteScalar()方法(执行SQL语句,返回结果集中第一行第一列),但此方法通常与聚合函数一起使用

此方法的聚合函数

  说明
AVG() 平均值
count(列名)/count(*) 此列值的计数(不包括空值)/此表所有行的计数(包括空值)
max() 最大值
min() 最小值
sum()

以count()和max()为例

private void button3_Click(object sender, EventArgs e)
{
conn = new SqlConnection("server=.;Initial catalog=db_PWMS;integrated security=SSPI");
conn.Open();
try
{
string s1 = "select count (*) from Table_1";//表数量count()
string s2 = "select max (Prices) from Table_1";//Prices最大值max() SqlCommand cmd = new SqlCommand(s1,conn);
SqlCommand cmd1 = new SqlCommand(s2,conn);
int i = Convert.ToInt32(cmd.ExecuteScalar());//对象转int类型
int j = Convert.ToInt32(cmd1.ExecuteScalar()); label2.Text = i+"条数据";
label1.Text = "最贵的" + j;
}
catch (Exception ex){ MessageBox.Show(ex.Message); }
}

⑶ExecuteReader()方法(执行SQL语句,生成一个SqlDataReader对象的实例,返回 一个SqlDataReader对象)

private void button5_Click(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection("server=.;Initial catalog=db_PWMS;integrated security=SSPI");
conn.Open();//连接并打开
SqlCommand cmd = new SqlCommand("select * from Table_1",conn);//操作
SqlDataReader sdr = cmd.ExecuteReader();//ExecuteReader方法实例化个SqlDataReader对象
while (sdr.Read())//SqlDataReader的Read()方法 循环读取数据
{
label3.Text += sdr[].ToString();//读取第一列
listView1.Items.Add(sdr[].ToString());//读取第二列
}
}

ADO.NET基础学习 二(Command对象)的更多相关文章

  1. Go基础学习(二)

    数组[array] 数组定义[定义后长度不可变] 12 symbol := [...]string{USD: "$", EUR: "€", GBP: " ...

  2. Python入门基础学习 二

    Python入门基础学习 二 猜数字小游戏进阶版 修改建议: 猜错的时候程序可以给出提示,告诉用户猜测的数字偏大还是偏小: 没运行一次程序只能猜测一次,应该提供多次机会给用户猜测: 每次运行程序,答案 ...

  3. Python基础学习二

    Python基础学习二 1.编码 utf-8编码:自动将英文保存为1个字符,中文3个字符.ASCll编码被囊括在内. unicode:将所有字符保存为2给字符,容纳了世界上所有的编码. 2.字符串内置 ...

  4. java基础学习总结六(对象与类、类的属性与方法)

    一:面向过程与面向对象的区别 举例:一个人开门的动作,可以分解为开门,人进去,关门. 面向过程:人作为执行者,1:开门  2:进入   3:关门 面向对象:人作为指挥者,将开门,关门的动作都封装到门上 ...

  5. Django基础学习二

    今天继续学习django的基础 学习用户提交url如何获得返回值 1.首先需要在工程的urls文件定义指定的urls要路由给哪个函数 在这个例子中,我们定义home的urls路由给views里的tes ...

  6. 基础学习day06---面向对象二---static,类的初始化和调用顺序、单例模式

    一.static关键字 1.1.static关键字 静态:static用法:是一个修饰符,用于修饰成员(成员变量,成员函数)static 修饰的内容,所有对象共享当成员被静态修饰后,就多了一个调用方式 ...

  7. ADO.net基础学习总结(二)

    将连接字符串放入配置文件中 1.添加一个“应用程序配置文件:app.config” <?xml version="1.0" encoding="utf-8" ...

  8. salesforce lightning零基础学习(二) lightning 知识简单介绍----lightning事件驱动模型

    看此篇博客前或者后,看一下trailhead可以加深印象以及理解的更好:https://trailhead.salesforce.com/modules/lex_dev_lc_basics 做过cla ...

  9. WebService基础学习(二)—三要素

    一.Java中WebService规范      JAVA 中共有三种WebService 规范,分别是JAX-WS.JAX-RS.JAXM&SAAJ(废弃).   1.JAX-WS规范    ...

随机推荐

  1. Nginx的虚拟主机配置

    虚拟主机技术能够让同一台服务器.同一组Nginx进程上运行多个网站,降低了资金和服务器资源的损耗.Nginx可以配置三种类型的虚拟主机,本文就是主要介绍这三种虚拟主机配置方式. 配置基于IP的虚拟主机 ...

  2. -bash:syntax error near unexpected token '('

    在Xshell5中编写int main(int argc,char** argv)时, 出现-bash:syntax error near unexpected token '('  : 可是我是按照 ...

  3. unittest中的Empty suite错误

    import unittest from selenium import webdriver class ibdata(unittest.TestCase): @classmethod def set ...

  4. Luogu P1894 [USACO4.2]The Perfect Stall

    传送门 是道绿题???二分图(网络流)不应该是蓝打底??? 这题浏览一遍就知道是二分图(网络流)算法喽,二分图代码太短,不想写(←这人???),所以就拿网络流练练手. 设源点S=0,汇点T=n+m+1 ...

  5. NumPy库实现矩阵计算

    随着机器学习技术越来越向着整个社会进行推广,因此学好线性代数和Python当中的numpy库就相当重要了.我们应该知道numpy库的使用是sklearn库和opencv库的基础.主要用于矩阵的计算.当 ...

  6. Java并发编程基础之volatile

    首先简单介绍一下volatile的应用,volatile作为Java多线程中轻量级的同步措施,保证了多线程环境中“共享变量”的可见性.这里的可见性简单而言可以理解为当一个线程修改了一个共享变量的时候, ...

  7. Kali学习笔记41:SQL手工注入(3)

    前两篇文章都是基于目标系统允许union,order by语句 并且可以读取infomation_schema元数据库 如果遇到的是安全方面做得很好的应用,进行了权限限制,那么我们有什么办法呢? 猜测 ...

  8. [Swift]LeetCode62. 不同路径 | Unique Paths

    A robot is located at the top-left corner of a m x n grid (marked 'Start' in the diagram below). The ...

  9. [Swift]LeetCode780. 到达终点 | Reaching Points

    A move consists of taking a point (x, y) and transforming it to either (x, x+y) or (x+y, y). Given a ...

  10. [Swift]LeetCode1019. 链表中的下一个更大节点 | Next Greater Node In Linked List

    We are given a linked list with head as the first node.  Let's number the nodes in the list: node_1, ...