列不是在sqlite数据库中创建的?

时间:2013-02-17 13:54:35

标签: android android-sqlite

public static final String Database_Name="content.db";
public static final int Database_Version=1;
public static final String Table_Name="images";
public static final String Column1="contentid";
public static final String Column2="content_type";
public static final String Column3="content";
public static final String Column4="has_update";
public static final String Column5="server";
public static final String Column6="_id";
public static final String Create_Database="CREATE TABLE" + Table_Name +
        "(" + Column6 + "INTEGER PRIMARY KEY AUTOINCREMENT,"+ Column1 + "LONG," + Column2 + "TEXT," 
+ Column3 + "TEXT," + Column4 + "INTEGER," + Column5 + "INTEGER" + ");";

我在android中使用上面的声明创建一个sqlite表并且执行代码执行成功但是在logcat中给出了一个例外,说明列内容尚未创建,什么可能导致我无法理解的问题。请帮助... ..........

这是logcat语句

02-17 19:36:15.658: E/SQLiteLog(31602): (1) table images has no column named content

1 个答案:

答案 0 :(得分:2)

您可以复制/粘贴错误消息吗?

我认为你的创建查询中的一个问题是你不会在列名和类型之间留有空格。不知道这是否是实际问题,但对我来说听起来有问题。

编辑: 我的意思是你创建查询应该看起来像

public static final String Create_Database = 
"CREATE TABLE " + Table_Name +
        " (" + Column6 + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
        Column1 + " LONG, " + 
        Column2 + " TEXT, " + 
        Column3 + " TEXT, " + 
        Column4 + " INTEGER, " + 
        Column5 + " INTEGER);";