SQLite中的create table语句是什么意思返回?
我已经观察到create table if not exists
在表确实存在的情况下同时返回0
和1
。返回值是表格是否存在的可靠指示吗?如果表已经存在,我希望该语句返回0
,而如果表已经存在则返回1
,类似于insert
语句。
答案 0 :(得分:2)
Changes
返回受影响的行的数量。
对于CREATE TABLE
语句,此值无意义。
没有简单的方法来确定CREATE TABLE IF NOT EXISTS
语句是否进行了创建。
您应事先使用PRAGMA table_info进行检查。
答案 1 :(得分:1)
即使表已存在,if not exists
语法也会使命令成功。它没有做任何事情。
我不确定你指的是"返回1"除非您正在谈论命令行客户端。在这种情况下,如果您只是从if not exists
语句中删除create
,那么如果表存在,该命令将返回1(表示失败)。