在 DB2 数据库中执行命令

Microsoft.HostIntegration.MsDb2Client.MsDb2Command 对象公开了多个 Execute 可用于执行预期操作的方法。 当将结果作为数据流返回时,使用 Microsoft.HostIntegration.MsDb2Client.MsDb2Command.ExecuteReader%2A 返回 DataReader 对象。 使用 Microsoft.HostIntegration.MsDb2Client.MsDb2Command.ExecuteScalar%2A 来返回单一实例值。 使用 Microsoft.HostIntegration.MsDb2Client.MsDb2Command.ExecuteNonQuery%2A 执行不返回行的命令。

将 MsDb2Command 与存储过程配合使用

Microsoft.HostIntegration.MsDb2Client.MsDb2Command对象与存储过程一起使用时,可以将对象的属性CommandType设置为 MsDb2CommandStoredProcedure。 使用CommandTypeStoredProcedureParameters属性,可以访问Command的输入、输出参数和返回值。 无论调用Execute方法,都可以访问Parameters属性。 但是,在调用Microsoft.HostIntegration.MsDb2Client.MsDb2Command.ExecuteReader%2A时,只有在DataReader关闭之后,才能访问返回值和输出参数。

请注意,修改数据的 SQL 语句(例如 INSERTUPDATEDELETE)不返回行。 同样,许多存储过程执行操作但不返回行。 若要执行不返回行的命令,请创建一个MsDb2Command对象,其中包含相应的 SQL 命令和一个Microsoft.HostIntegration.MsDb2Client.MsDb2Connection,包括任何必需的Microsoft.HostIntegration.MsDb2Client.MsDb2Parameters。 使用 ExecuteNonQuery 对象的方法 Microsoft.HostIntegration.MsDb2Client.MsDb2Command 执行命令。 该方法 Microsoft.HostIntegration.MsDb2Client.MsDb2Command.ExecuteNonQuery%2A 返回一个整数,表示受执行语句或存储过程影响的行数。 如果执行了多个语句,则返回的值是受执行的所有语句影响的记录的总和。

修改数据库和目录

若要执行命令来修改数据库或目录(如CREATE TABLECREATE PROCEDURE语句),请使用相应的 SQL 语句和对象Microsoft.HostIntegration.MsDb2Client.MsDb2Command创建Microsoft.HostIntegration.MsDb2Client.MsDb2Connection对象。 使用 Microsoft.HostIntegration.MsDb2Client.MsDb2Command 对象的 Microsoft.HostIntegration.MsDb2Client.MsDb2Command.ExecuteNonQuery%2A 方法执行命令。

另请参阅

使用 DB2 的托管提供程序
DB2 托管提供程序程序员指南