Android SQLite,一些SQL基础知识

时间:2011-06-13 20:20:15

标签: android database sqlite initialization oncreate

我正在关注本教程:http://www.codeproject.com/KB/android/AndroidSQLite.aspx

我必须过度思考这个SQLite的东西(过去我的域名服务器会自动初始化我要求的数据库,我可以在需要的时候进行查询。永远不要把它们放在一起)

我对onCreate函数有一些疑问。我从来没有记得使用过 我的SQL中的CREATE TRIGGER命令

我只需创建一个包含2或3列的表(如果算上主键)

我应该能做到的 db.execSQL("CREATE TABLE" + tableName +"("+colID+"INTEGER PRIMARY KEY,"+columnName+"TEXT)");

正确?

我需要“触发器”和“查看”吗?

5 个答案:

答案 0 :(得分:3)

如果你只需要一个地方来存储一些数据 - 那么Table就足够了。但如果您的逻辑更复杂,那么您将需要额外的东西。

另请注意,SQLite不支持某些触发器:Info from here

答案 1 :(得分:1)

您无需创建TRIGGER。除非是必需的。这是我在我的一个项目中实现的方式。希望这有帮助。

https://github.com/gopalB/FeedReader/blob/master/src/com/feedReader/provider/FeedDB.java

答案 2 :(得分:0)

如果您不需要TriggerView,则无需创建它们。看来教程只是解释了你可以做的一些事情。

答案 3 :(得分:0)

如果SQLite TRIGGERVIEW与MySQL中使用的相似,那么不,它们不一定是你想要完成的。

当您有复杂的查询时(例如,使用VIEW来连接多个表中的数据时),

JOIN非常有用。

TRIGGERS是修改表时运行的条件。 (例如使用UPDATEINSERT

答案 4 :(得分:0)

如上所述,由于缺少空格,您的create语句将无法正常工作。尝试:

db.execSQL("CREATE TABLE " + tableName +" (" + colID + " INTEGER PRIMARY KEY, " + columnName + " TEXT)");