sqlite &flex - 如果不存在则插入?

2021-11-12 00:00:00 database insert sqlite apache-flex

我正在使用 flex 开发我的第一个桌面应用程序,并且我也是第一次使用 sqlite.

I'm using flex to develop my first desktop app and I'm working with sqlite for the first time as well.

我正在创建我的数据库和所有表,我还想将几行数据添加到几个表中,以便用户在首次安装时可以使用一些数据.

I'm creating my database and all the tables and I would also like to add a few rows of data into a couple of the tables so that the users have some data to work with on first install.

我遇到的唯一问题是每次运行程序时它都会一遍又一遍地插入相同的数据.

The only problem I'm having is every time I run the program it keeps inserting the same data over and over again.

我只是想知道是否可以执行 - INSERT INTO IF NOT EXISTS.或其他类型的工作.

I'm just wondering if its possible to do a - INSERT INTO IF NOT EXISTS. or some other kind of work around.

谢谢!

推荐答案

感谢您的洞察力,但我仍然没有任何运气.

Thanks for the insight but I'm still not having any luck.

这是我的代码

stmt.text = "CREATE TABLE IF NOT EXISTS tbl_breed ("+" breed_id INTEGER PRIMARY KEY AUTOINCREMENT, "+"  breed_breed TEXT)";
stmt.execute();
stmt.text = "INSERT OR IGNORE INTO tbl_breed (breed_breed)"+" VALUES ('Test')";
stmt.execute();

好的,我解决了这个问题 - 我猜你必须对主键进行硬编码,这就是我所做的

Ok so I fixed the problem - I guess you have to hard code primary key here's what i did

stmt.text = "CREATE TABLE IF NOT EXISTS tbl_breed ("+" breed_id INTEGER PRIMARY KEY AUTOINCREMENT, "+"  breed_breed TEXT)";
stmt.execute();
stmt.text = "INSERT OR IGNORE INTO tbl_breed (breed_id,breed_breed)"+" VALUES ('1','test')";
stmt.execute();

相关文章