SQLite-如果不存在,则创建表

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

SQLite中的CREATETABLE语句要返回什么


我观察到
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-即使在执行语句之前该表确实存在:/