使用 SACommand 对象可针对 SQL Anywhere 数据库执行 SQL 语句或调用存储过程。可以使用下列方法中的任一种检索数据库中的数据:
ExecuteReader 发出返回结果集的 SQL 查询。此方法使用只进、只读游标。可以沿一个方向快速循环遍历结果集中的行。
有关详细信息,请参见ExecuteReader 方法。
ExecuteScalar 发出返回单个值的 SQL 查询。可以是结果集的第一行中的第一列,或返回集合值(如 COUNT 或 AVG)的 SQL 语句。此方法使用只进、只读游标。
有关详细信息,请参见ExecuteScalar 方法。
使用 SACommand 对象时,可使用 SADataReader 检索基于连接的结果集。但是,只能对一个表中的数据进行更改(插入、更新或删除)。不能更新基于连接的数据集。
以下说明采用 SQL Anywhere 提供的 Simple 编码示例。
有关 Simple 代码示例的详细信息,请参见了解 Simple 示例项目。
声明并初始化一个 Connection 对象。
SAConnection conn = new SAConnection( "Data Source=SQL Anywhere 12 Demo" ); |
打开该连接。
try { conn.Open(); |
添加一个 Command 对象以定义并执行一条 SQL 语句。
SACommand cmd = new SACommand( "SELECT Surname FROM Employees", conn ); |
如果要调用存储过程,必须为该存储过程指定参数。
有关详细信息,请参见使用存储过程和SAParameter 类。
调用 ExecuteReader 方法以返回 DataReader 对象。
SADataReader reader = cmd.ExecuteReader(); |
显示结果。
listEmployees.BeginUpdate(); while( reader.Read() ) { listEmployees.Items.Add( reader.GetString( 0 ) ); } listEmployees.EndUpdate(); |
关闭 DataReader 和 Connection 对象。
reader.Close(); conn.Close(); |
声明并初始化一个 SAConnection 对象。
SAConnection conn = new SAConnection( "Data Source=SQL Anywhere 12 Demo" ); |
打开该连接。
conn.Open(); |
添加一个 SACommand 对象,以定义并执行一条 SQL 语句。
SACommand cmd = new SACommand( "SELECT COUNT(*) FROM Employees WHERE Sex = 'M'", conn ); |
如果要调用存储过程,必须为该存储过程指定参数。
有关详细信息,请参见使用存储过程。
调用 ExecuteScalar 方法返回包含该值的对象。
int count = (int) cmd.ExecuteScalar(); |
关闭 SAConnection 对象。
conn.Close(); |
使用 SADataReader 时,可使用多种 Get 方法来返回指定数据类型的结果。
有关详细信息,请参见SADataReader 类。
![]() |
使用DocCommentXchange 讨论此页。
|
版权 © 2010, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.0 |