Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/212.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Sqlite异常接近“外来”?_Java_Android_Mysql_Sqlite - Fatal编程技术网

Java Sqlite异常接近“外来”?

Java Sqlite异常接近“外来”?,java,android,mysql,sqlite,Java,Android,Mysql,Sqlite,我现在收到以下错误:- String CREATE_SUBCATEGORY_TABLE = "CREATE TABLE " + TABLE_SUBCATEGORY_LIST+ "(" + KEY_ID + " INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL," + KEY_NAME + " TEXT," + KEY_DESC + " TEXT,"+ KEY_CATEGORY_ID + " INTEGER,"

我现在收到以下错误:-

  String CREATE_SUBCATEGORY_TABLE = "CREATE TABLE " + TABLE_SUBCATEGORY_LIST+ "("
            + KEY_ID + " INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL," + KEY_NAME + " TEXT,"
            + KEY_DESC + " TEXT,"+ KEY_CATEGORY_ID + " INTEGER,"
            + KEY_CONTENT1+" TEXT,"+ KEY_CONTENTTYPE1 + " TEXT,"
            + KEY_CONTENT2+" TEXT,"+ KEY_CONTENTTYPE2 + " TEXT,"
            + KEY_CONTENT3+" TEXT,"+ KEY_CONTENTTYPE3 + " TEXT,"
            + KEY_CONTENT4+" TEXT,"+ KEY_CONTENTTYPE4 + " TEXT,"
            + KEY_CONTENT5+" TEXT,"+ KEY_CONTENTTYPE5 + " TEXT,"
            + KEY_CONTENT6+" TEXT,"+ KEY_CONTENTTYPE6 + " TEXT,"
            + KEY_ORDERID+" INTEGER,"+ KEY_STATUS+" TEXT,"
            + KEY_UPDATED+" TEXT, FOREIGN KEY ("+KEY_CATEGORY_ID+") REFERENCES "+CAT_TABLE+"("+KEY_CATEGORY_ID+")";

谁能指出我的错误吗。欢迎提供任何帮助或建议。谢谢。

在最后一行文本前面加空格,后面加逗号

您还必须关闭最后一个括号

您的最后一行正确地显示如下:

 android.database.sqlite.SQLiteException: near ")": syntax error (code 1): , while compiling: CREATE TABLE subcategory_list(id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,subcategory_name TEXT,subcategory_shdesc TEXT,category_id INTEGER,content1 TEXT,content_type1 TEXT,content2 TEXT,content_type2 TEXT,content3 TEXT,content_type3 TEXT,content4 TEXT,content_type4 TEXT,content5 TEXT,content_type5 TEXT,content6 TEXT,content_type6 TEXT,order_id INTEGER,status TEXT,updated TEXT, FOREIGN KEY (category_id) REFERENCES category_list(category_id)
您还可以省略文本和外键之间的+符号,因为您只是在连接两个字符串

+ KEY_UPDATED+" TEXT," +" FOREIGN KEY ("+KEY_CATEGORY_ID+") REFERENCES "+CAT_TABLE+"("+KEY_CATEGORY_ID+"))";

只需修复最后一行中的一些拼写错误:

+ KEY_UPDATED+" TEXT, FOREIGN KEY ("+KEY_CATEGORY_ID+") REFERENCES "+CAT_TABLE+"("+KEY_CATEGORY_ID+"))";

键\更新+文本+外键在文本之前,必须插入空格。否则结果将是UpdatedKeyText您仍然缺少结尾处的一个空格。所以您在文本前添加了空格,在文本后添加了逗号?你仍然得到完全相同的错误?我现在得到这个错误android.database.sqlite.SQLiteException:near:语法错误代码1
+ KEY_UPDATED + " TEXT," //added , and space
+" FOREIGN KEY (" + KEY_CATEGORY_ID + ") REFERENCES " 
+ CAT_TABLE + "("+KEY_CATEGORY_ID+"))"; //added "CREATE TABLE closing parenthesis"