执行SQL语句:Command对象

1.Command对象概述

  Command对象是一个数据命令对象,主要功能是向数据库发送查询、更新、删除、修改操作的SQL语句。Command对象主要有以下几种方式。

    SqlCommand:用于向SQL Server数据库发送SQL语句,位于System.Data.SqlClient命名空间。

    OleDbCommand:用于向使用OLEDB公开的数据库发送SQL语句,位于System.Data.OleDb命名空间。例如,Access数据库和MySQL数据库都是OLEDB公开的数据库。

    OdbcCommand:用于向ODBC公开的数据库发送SQL语句,位于System.Data.Odbc命名空间。有些数据库如果没有提供相应的连接程序,则可以配置好ODBC连接后,使用OdbcCommand。

    OracleCommand:用于向Oracle数据库发送SQL语句,位于System.Data.OracleClient命名空间。

2.设置数据源类型

  Command对象有3个重要的属性,分别是Connection、CommandText和CommandType。Connection属性用于设置SqlCommand使用的SqlConnection。CommandText属性用于设置要对数据源执行的SQL语句或存储过程。CommandType属性用于设置指定CommandText的类型。CommandType属性的值是CommandType枚举值,CommandType枚举有3个枚举成员,分别介绍如下。

    StoredProcedure:存储过程的名称。

    TableDirect:表的名称。

    Text:SQL文本命令。

  如果要设置数据源的类型,则可以通过设置CommandType属性来实现。

3.执行SQL语句

  Command对象需要取得将要执行的SQL语句,通过调用该类提供的多种方法,向数据库提交SQL语句。下面详细介绍SqlCommand对象中的几种执行SQL语句的方法。

  1.ExecuteNonQuery方法

  执行SQL语句,并返回受影响的行数,在使用SqlCommand向数据库发送增、删、改命令时,通常使用ExecuteNonQuery方法执行发送的SQL语句。

        private void button1_Click(object sender, EventArgs e)
{
string connString = "server=.;database=denglu;uid=test;pwd=test;connect timeout=5";
SqlConnection sqlconn = new SqlConnection(connString);
sqlconn.Open(); SqlCommand sqlcmd = new SqlCommand();
sqlcmd.Connection = sqlconn;
sqlcmd.CommandText = "update Users set password=888 where username='哈哈哈'";
sqlcmd.CommandType = CommandType.Text; //int i = Convert.ToInt32(sqlcmd.ExecuteNonQuery()); //ExecuteNonQuery返回受影响的行数
//MessageBox.Show(i.ToString());
}

  2.ExecuteReader方法

  执行SQL语句,并生成一个包含数据的SqlDataReader对象的实例。

  代码:

        private void button1_Click(object sender, EventArgs e)
{
string connString = "server=.;database=denglu;uid=test;pwd=test;connect timeout=5";
SqlConnection sqlconn = new SqlConnection(connString);
sqlconn.Open(); SqlCommand sqlcmd = new SqlCommand();
sqlcmd.Connection = sqlconn;
sqlcmd.CommandText = "select password from users";
sqlcmd.CommandType = CommandType.Text; //使用ExecuteReader方法实例化一个SqlDataReader对象
SqlDataReader sdr = sqlcmd.ExecuteReader();
while (sdr.Read())
{
listView1.Items.Add(sdr[0].ToString());
} sqlconn.Dispose();
button1.Enabled = false;
}

  界面:


  3.ExecuteScalar方法
  执行SQL语句,返回结果集中的第一行的第一列
  代码:
```
SqlConnection sqlConnection;
private void Form2_Load(object sender, EventArgs e)
{
string connString = "server=.;database=TBWRIMS;uid=test;pwd=test;connect timeout=5";
sqlConnection = new SqlConnection(connString);
sqlConnection.Open();
}

    private void btn1_Click(object sender, EventArgs e)
{
try
{
if (sqlConnection.State == ConnectionState.Open || txt1.Text != "")
{
SqlCommand sqlCommand = new SqlCommand(); //***
sqlCommand.Connection = sqlConnection; //设置Connection属性
sqlCommand.CommandText = "select count(*) from" + txt1.Text.Trim(); // 设置CommandText属性,以及SQL语句
sqlCommand.CommandType = CommandType.Text; //设置CommandType属性为Text,使其只执行SQL语句 int i = Convert.ToInt32(sqlCommand.ExecuteScalar()); //使用ExecuteScalar方法获取指定数据表中的数据数量
lab2.Text = "数据表中共有:"+ i.ToString() + "条数据"; }
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
&emsp;&emsp;<b>界面:</b>
<center><img src="https://img2018.cnblogs.com/blog/1849125/202001/1849125-20200131160758181-363282996.png" width="400" height="150"></center>

C#连接SQL Server数据库(二)的更多相关文章

  1. JeeSite如何正确连接SQL SERVER 数据库

    JeeSite如何正确连接SQL SERVER 数据库 jeesite介绍 感谢jeesite项目的作者thinkgem. 没有你我也不会更改这数据源非了恁大的劲,,,,嘻嘻嘻说多了. JeeSite ...

  2. Java使用JDBC连接SQL Server数据库|实现学生成绩信息系统

    Java实验四 JDBC 使用SQL Server数据库或者MySQL数据库各自的客户端工具,完成如下任务: (1)创建数据库students: (2)在数据students中创建表scores,包括 ...

  3. Excel VBA 连接各种数据库(三) VBA连接SQL Server数据库

    本文主要涉及: VBA中的SQL Server环境配置 VBA连接SQL Server数据库 VBA读写SQL Server数据 如何安装SQL Client 系统环境: Windows 7 64bi ...

  4. python 使用pymssql连接sql server数据库

    python 使用pymssql连接sql server数据库   #coding=utf-8 #!/usr/bin/env python#------------------------------ ...

  5. NetBeans连接SQL server数据库教程

    不废话,直接开始 1.下载sqljdbc.jar 可以从微软中国官方网站下载 SQLJDBC微软中国 笔者提供一个网盘链接Sqljdbc.jar 4个压缩包视版本选择,SQL 2012 用sqljdb ...

  6. 【转】PowerShell 连接SQL Server 数据库 - ADO.NET

    转至:http://www.pstips.net/connect-sql-database.html PowerShell 通过ADO.NET连接SQL Server数据库,并执行SQL脚本.工作中整 ...

  7. JDBC连接sql server数据库及其它

    JDBC连接sql server数据库的步骤如下: 1.加载JDBC驱动程序: 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), 这通过java.lang.Class类的 ...

  8. ThinkPHP连接sql server数据库

    亲身经历,在网上找连接sql server数据库的方法,还是不好找的,大多数都是照抄一个人的,而这个人的又写的不全,呵呵,先介绍一下我连接的方法吧.如果你是用THINKPHP连接,那么最重要的就是配置 ...

  9. JDBC连接sql server数据库的详细步骤和代码

    JDBC连接sql server数据库的详细步骤和代码 JDBC连接sql server数据库的步骤如下: 1.加载JDBC驱动程序: 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Ja ...

  10. python连接sql server数据库实现增删改查

    简述 python连接微软的sql server数据库用的第三方模块叫做pymssql(document:http://www.pymssql.org/en/stable/index.html).在官 ...

随机推荐

  1. Babel 7 主要改变

    1.不支持Node:0.10,0.12,4,5版本 2.更换命名-@babel/xxx 3.移除以年份命名的presets,统一更换成@babel/preset-env 4.移除 ’Stage‘ pr ...

  2. 杭电oj_2058——The sum problem(java实现)

    原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=2058 思路:等差数列公式变形:sum = a1 * len + len *(len -1)/2 抽象成 ...

  3. 酷卓 一键ROOT教程

    待编辑,还没写完 哈哈 酷卓 一键ROOT教程 首先简单介绍下酷卓. 酷卓由我个人开发,主要为了用户获取ROOT简单化,傻瓜化.酷卓获取方式:加QQ群 766969447 群文件下载就行 1. 手动选 ...

  4. 多线程启动selenium,报NameError: name '__file__' is not defined

    将__file__加上单引号就解决了:   # 获取当前文件名,用于创建模型及结果文件的目录   file_name = os.path.basename('__file__').split('.') ...

  5. Keep、小红书、美图…独角兽App能拿到新一轮救命钱吗?

    大多数人热爱手机,不是因为时尚的外观或者结实的零部件,而是因琳琅满目的App赋予其太多的功能.智能手机最先是清理掉人类的零碎时间,现如今又开始肢解我们大块的时间,或者说,智能手机本身就是生活.在如此背 ...

  6. 重新认识urllib

    # coding=utf-8 # urllib_get_file=urllib.request.urlretrieve(url=None,filename="test.zip") ...

  7. 二分-D - Can you solve this equation?

    D - Can you solve this equation? Now,given the equation 8*x^4 + 7*x^3 + 2*x^2 + 3*x + 6 == Y,can you ...

  8. idea 配置 tomcat 教程

    最近在搞一个项目需要用到idea 配置tomcat,翻了翻网上的帖子发现稂莠不齐,最后决定还是自己写个吧!(其实我挺蠢的走了好多的弯路,哎~) 1.首先准备一个需要大家tomcat的工程,然后使用id ...

  9. 数字输出精度 - C语言

    1. 浮点型/双精度浮点型 double a=1234.5678; printf("%8.2lf\n",a);// 小数点前的数表示总位数,小数点也算一位 printf(" ...

  10. HTML页面学习

    HTML 文档结构 <!DOCTYPE html> 文档声明 <html lang="en"> 语言 <head> 网站配置信息 <met ...