SQLite-如果不存在,则创建表
SQLite中的CREATETABLE语句要返回什么SQLite-如果不存在,则创建表,sqlite,sqlite-net,Sqlite,Sqlite Net,SQLite中的CREATETABLE语句要返回什么 我观察到create table if not exists在表确实存在时返回0和1。返回值是否是表是否存在的可靠指示?如果表已经存在,我希望语句返回0,如果表不存在,则返回1,类似于insert语句。如果表不存在,则语法使命令成功,即使表已经存在。这根本没用 我不确定“returns1”指的是什么,除非您指的是命令行客户机。在这种情况下,如果只从create语句中删除if note exists,则如果表存在,命令将返回1(表示失败)。Ch
我观察到
create table if not exists
在表确实存在时返回0
和1
。返回值是否是表是否存在的可靠指示?如果表已经存在,我希望语句返回0
,如果表不存在,则返回1
,类似于insert
语句。如果表不存在,则语法使命令成功,即使表已经存在。这根本没用
我不确定“returns1”指的是什么,除非您指的是命令行客户机。在这种情况下,如果只从create
语句中删除if note exists
,则如果表存在,命令将返回1(表示失败)。Changes
返回受影响的行数。
对于CREATE TABLE
语句,此值没有意义
没有简单的方法确定CREATE TABLE IF NOT existed
语句是否创建了表。
您应该事先检查。使用SQLite网络库该命令是使用ExecuteNonQuery
执行的,因此它使用SQLite3.changes(connectionHandle)
查询SQLite中的更改。因此,您将此用作确定此库中是否存在表的方法()如果表确实存在,它会尝试迁移该表(如果不存在,则使用create table),但是,检查0有时会失败,因为它将返回1-即使在执行语句之前该表确实存在:/