Command对象的说明

作者&投稿:董世 (若有异议请与网页底部的电邮联系)
C#查询SQL数据库Command对象的方法问题~

ExecuteScalar方法返回的类型是object类型,这个方法返回sql语句执行后的第一行第一列的值,由于不知到sql语句到底是什么样的结构(有可能是int,有可能是char等等),所以ExecuteScalar方法返回一个最基本的类型object,这个类型是所有类型的基类,换句话说:可以转换为任意类型。

ExecuteNonQuery方法是用来执行insert、delete、update语句的,由于这些语句执行后只有一个结果:“影响了**行”,所以ExecuteNonQuery方法返回的是影响的行数(int)。


虽然SQL中列的name本身就是字符串类型,但是你通过dataReader["name"]这种方式访问这个字段,必须强制类型转换,因为dataReader["name"]就像一个数组,数组中的每个元素的类型都应该一样,所以dataReader[]这个数组中的元素类型也被定义为object类型,以方便转换。

executereader方法就可以返回对应不同数据库的datareader例如sql是sqldatareader

使用 Command 对象查询数据库并返回 Recordset 对象中的记录,以便执行大量操作或处理数据库结构。取决于提供者的功能,某些 Command 集合、方法或属性被引用时可能会产生错误。
可以使用 Command 对象的集合、方法、属性进行下列操作:
· 使用 CommandText 属性定义命令(例如,SQL 语句)的可执行文本。
· 通过 Parameter 对象和 Parameters 集合定义参数化查询或存储过程参数。
· 可使用 Execute 方法执行命令并在适当的时候返回 Recordset 对象。
· 执行前应使用 CommandType 属性指定命令类型以优化性能。
· 使用 Prepared 属性决定提供者是否在执行前保存准备好(或编译好)的命令版本。
· 使用 CommandTimeout 属性设置提供者等待命令执行的秒数。
· 通过设置 ActiveConnection 属性使打开的连接与 Command 对象关联。
· 设置 Name 属性将 Command 标识为与 Connection 对象关联的方法。
· 将 Command 对象传送给 Recordset 的 Source 属性以便获取数据。
注意 如果不想使用 Command 对象执行查询,请将查询字符串传送给 Connection 对象的 Execute 方法或 Recordset 对象的 Open 方法。但是,当需要使命令文本具有持久性并重新执行它,或使用查询参数时,则必须使用 Command 对象。
要独立于先前已定义的 Connection 对象创建 Command 对象,请将它的 ActiveConnection 属性设置为有效的连接字符串。ADO 仍将创建 Connection 对象,但它不会将该对象赋给对象变量。但是,如果正在将多个 Command 对象与同一个连接关联,则必须显式创建并打开 Connection 对象,这样即可将 Connection 对象赋给对象变量。如果没有将 Command 对象的 ActiveConnection 属性设置为该对象变量,则即使使用相同的连接字符串,ADO 也将为每个 Command 对象创建新的 Connection 对象。
要执行 Command,只需通过它所关联的 Connection 对象的 Name 属性,将其简单调用即可。必须将 Command 的 ActiveConnection 属性设置为 Connection 对象。如果 Command 带有参数,则将这些参数的值作为参数传送给方法。
如果在相同连接上执行两个或多个 Command 对象,并且某个 Command 对象是带输出参数的存储过程,这时会发生错误。要执行各个 Command 对象,请使用独立的连接或将所有其他 Command 对象的连接断开



我说的简单点, 别看那一大段一大段的复制粘贴,我了解你问题的根本, command对象是指谁呢, 就是你的sql sever或者access里面, 中间那个能写sql 查询语句的空白地方, command对象,就是指那里。 我举个简单的例子供你形成思路:ADO总对象其实就是告诉程序或者你的IDE,你要开数据库的进程了,这个对象就是这么个东西,ADO的connection对象,这个connection名字其实就是一个代码集合的名字,就相当于你调鸡尾酒,各种酒都有,最后为了方便,你不可能把这个杯里的东西按各种酒的名字挨个命名,那么这个酒的名字就是对象名,这个杯子就是各种酒的封装,各种酒就是实现各种功能的代码。connection对象封装的就是是打开程序与数据库连接的途径和方法,其实connection这个对象就是为了让使用者直观的知道是干嘛的,他其实就是一个程序代码的集合,里面有规定你如何打开数据库的代码,有连接超时等等的代码,都是在connection这个名词下的代码的封装。 那么recordset就是那个你各种查询鼓捣出来的记录集合也就是表的对象。 同理,command对象就是select语句的封装。就是各种查询,e增,添,删,改的语句的集合。 那么你用command对象查询完了以后,那个结果也就是得出的查询记录表附给谁呢。 还是附给recordset 这个对象。 让他去生成你程序能产生的输出结果,也就是通过command对象查询,附给recordset对象让你的用户能看到结果。 定义语句
我就不写了,简单告诉你怎么用,比如:
command.commandtext="select * from table where name=tom"
command.commandtype=adcommandtext
set recordset=command.excute
上面什么意思呢, 就是你通过command对象允许的查询 查询出来一个表, 然后再set recordset 记录,给它赋予一个新实例,也就是一个新表。 通过command.excute语句,也就是执行command对象的查询结果,附给记录集。 就完成了这么一个过程。 求采纳。本人纯手打,费脑细胞。多谢。


使用如下语句创建一Command对象
你用的是c#的语法。c#在语法应用上非常灵活,SqlCommand comm=new SqlCommand(“select * from Book”,conn)这句话实际上直接就定义了一个CommandText="select * from Book"、Connection=conn的SqlCommand对象。当然对于SqlCommand类,它还有其他重载的构造函数,你可以先使用SqlCommand comm=new SqlCommand(...

一个很菜鸟的问题“rs.Open sql,conn,3,2” 中的3,2 是什么意思
打开游标。3代表Cursortype,2代表LockType 语法 recordset.Open Source,ActiveConnection,CursorType,LockType,Options 参数 Source 可选,变体型,计算 Command 对象的变量名、SQL 语句、表名、存储过程调用或持久 Recordset 文件名。ActiveConnection 可选。变体型,计算有效 Connection 对象变量名;或字符串,...

用Visual C++开发数据库应用程序(3)
同__CommandPtr接口一样,它不一定要使用一个已经创建的数据连接,可以用一个连接串代替连接指针赋给__RecordsetPtr的connection成员变量,让它自己创建数据连接。如果要使用多个记录集,最好的方法是同Command对象一样使用已经创建了数据连接的全局—ConnectionPtr接口,然后使用__Recordse7tPtr执行存储过程和SQL语句。6、24 ...

ado.net的几个核心对象
个人理解,我们在数据库中查出来的信息就放在dateset中。dateset可以包含许多datatable。3.2、Data Provider 3.21、Connection 对象:提供与数据源的连接。3.22、Command对象:用于访问数据、返回数据、修改数据、运行存储过程以及发送或检索参数信息的数据库命 令。3.23、DataReader 对象:从数据源中提供...

在VB中如何调用带参数的SP_EXECUTESQL[系统存储过程]呀!谢谢了!_百度...
通过Command对象的Parameters集合向所调用的存储过程传递参数,其中对象Parameters(0)为执行存储过程的返回值,返回值为0则执行存储过程成功;’第三种方法 adocomm.Parameters(1) = "1"adocomm.Parameters(2) = "OutputParameters" 'OutputParameters可以为任意的字符串或数字 adocomm.Execute ReturnValue =...

SqlCommand Cmd = new SqlCommand(Sql, Conn)什么意思
Command对象的构造函数的参数有两个,一个是需要执行的SQL语句,另一个是数据库连接对象。创建Command对象后,就可以执行SQL命令,执行后完成并关闭数据连接,示例代码如下所示。cmd.ExecuteNonQuery(); \/\/执行SQL命令 con.Close(); \/\/关闭连接 3 SqlCommand对象有三个方法;1.ExecuteNonQuery();它的返回...

c#的winform窗体中如何嵌套exe应用程序
(4) 使用 Command 对象的 ExecuteScalar 方法 一般使用 Command 对象的 ExecuteReader 方法来将数据库的返回结果保存在 DataReader 中。如以下代码所示:dbReader = cmd.ExecuteReader();但如果返回结果是单个标量值,如一个整数或一个字符串,则可以执行 Command 对象的 ExecuteScalar 方法直接获取...

如何在VC中调用存储过程
定义好一个Connection连接,然后再产生一个Command对象,利用Command 对象进行存储过程调用 _ConnectionPtr m_Conn;_CommandPtr m_Command _variant_t vNULL;\/\/定义为无参数 vNULL.vt = VT_ERROR;vNULL.scode = DISP_E_PARAMNOTFOUND m_Conn.CreateInstance( __uuidof( ADODB::Connection ));\/\/初始化...

This SqlTransaction has completed; it is no longer usable。 C#...
可以在new XXXCommand(sqlStr,conn,transaction),也可以用XXXCommand对象的引用打开 com.XXXTransaction=transaction;3 获取在本conn连接中参入了其他conn 例如:OleDbConnection conn = DBUtilFactory.getConnection("Access");updateStr = sb.ToString();updateStr = updateStr.Substring(0, updateStr....

连接数据库需要ADO组件中的什么对象,创建它的方法是什么\/
如果你为Command对象的ConnectionString属性指定合适的值(即,每次使用同样的服务器、初始目录、登录ID和其他参数),那么,连接已经打开且处于可用状态的机会很大。如果连接池中能够找到匹配的连接,连接(或重新连接)的时间将接近0(通常小于250 ms)。 然而,如果ADO(或VB)代码不释放Connection对象,或者,我们在不同的实例...

金阳县18078456742: ASP中Command对象到底是干什么用的?我看过很多asp教程
永金桂附: ASP编程技术-COMMAND对象的属性 -------------------------------------------------------------------------------- 我找这篇文章已经很久了,一直找不到,后来找了几本书,一点一点敲上去...

金阳县18078456742: 试简述使用Command对象进行数据库操作的基本设定方法和过程步骤
永金桂附: 1. Command介绍 Ø Dispose() Ø CommandText Ø 构造函数() SqlConnection conn = new SqlConnection();conn.ConnectionString = "server=KEVIN-LI;database=ADONET;uid=admin;pwd=123456";//打开连接conn.Open(); //执...

金阳县18078456742: ADO.Net中常用的对象有哪些?分别描述一下 -
永金桂附: Connection:主要是开启程序和数据库之间的连接.没有利用连接对象将数据库打开,是无法从数据库中取得数据的.Close和Dispose的区别,Close以后还可以Open,Dispose以后则不能再用. Command:主要可以用来对数据库发出一些指令...

金阳县18078456742: ADO Command 对象是什么意思? -
永金桂附: ADO Command 对象用于执行面向数据库的一次简单查询.此查询可执行诸如创建、添加、取回、删除或更新记录等动作. 如果该查询用于取回数据,此数据将以一个 RecordSet 对象返回.这意味着被取回的数据能够被 RecordSet 对象的属性、集合、方法或事件进行操作. Command 对象的主要特性是有能力使用存储查询和带有参数的存储过程.

金阳县18078456742: C#里面 SqlCommand command = new SqCommand(); 是什么意思??(通俗易懂举例解释回答加分+++)
永金桂附: 这个是实例化一个SqlCommand对象,这个对象用于对数据库的操作用.

金阳县18078456742: sqlcommand对象的有几个操作方法 -
永金桂附: 总结了一下,在任何时候都可以使用sqlcommand对象来完成您想要的操作.使用sqlcommand对象来返回数据集合的方法 string strconn="data source=billgates;initial catalog=test;integrated security=SSPI;"; SqlConnection conn=new ...

金阳县18078456742: 每个ado.net的核心对象的方法和属性 -
永金桂附: 一、Connection对象 Connection对象也称为数据库连接对象,Connection对象的功能是负责对数据源的连接.所有Connection对象的基类都是DbConnection类. 二、Command对象 Command对象也称为数据库命令对象,Command对象主要...

金阳县18078456742: Command对象的数据库 -
永金桂附: 根据所用的.NET数据提供程序的不同,Command对象的=也分成四种,分别是SqlCommand、OleDbCommand、OdbcCommand和OracleCommand,SQL数据程序对应的是SqlCommand对象,Command对象的主要属性和方法如表所示: 类别 ...

金阳县18078456742: .net command 对象有哪些主要属性和方法? -
永金桂附: 是指 dbcommand 类么?请参考: https://msdn.microsoft.com/zh-cn/library/system.data.common.dbcommand%28v=vs.110%29.aspx

金阳县18078456742: 常见的ADO对象有那些,都有什么作用 -
永金桂附: ADO主要包括Connection,Recordset和Command三个对象 主要功能如下: Connection对象: 打开或连接数据库或数据文件; Recordset对象: 存取数据库的内容 Command对象: 对数据库下达行动查询指令(SELECT,INSERT,UPDATE,DELETE),或调用存储过程.

你可能想看的相关专题

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网