在 C# 中执行非查询结果
本文关键字:查询 结果 执行 | 更新日期: 2023-09-27 18:36:25
如何知道我是否成功创建数据库?我正在使用"CREATE DATABASE DemoDB"
作为SQL命令。 ExecuteNonQuery()
方法返回 0。如果我成功创建了数据库,我应该使用什么来了解?
正如 MSDN 所说:
对于 UPDATE、INSERT 和 DELETE 语句,返回值为 受命令影响的行数。当触发器存在于 正在插入或更新的表,返回值包括数字 受插入或更新操作和数量影响的行数 受一个或多个触发器影响的行数。对于所有其他类型的 语句,返回值为 -1。如果发生回滚,则返回 值也是 -1。
ExecuteNonQuery 将为 CREATE DATABASE 命令返回 0,因为它返回查询更改的行。
如果数据库存在,这将返回一些行:
SELECT SCHEMA_NAME FROM INFORMATION_SCHEMA.SCHEMATA WHERE SCHEMA_NAME = 'DemoDB'
如果出现错误,ExecuteNonQuery会抛出MySqlException异常。如果成功,则返回 0,但您无需检查返回值;如果它正常返回,则成功。例如,这是我尝试创建已存在的数据库时遇到的异常:
无法创建数据库"名称";数据库存在