郭宏志编写的android无线点餐系统的点菜功能怎么实现不了?老是报错
07-16 01:00:47.741: ERROR/AndroidRuntime(405): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.amaker.wlo/com.amaker.wlo.OrderActivity}: android.database.sqlite.SQLiteException: no such table: TableTbl: , while compiling: SELECT _id, num, description FROM TableTbl ORDER BY num DESC
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.os.Handler.dispatchMessage(Handler.java:99)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.os.Looper.loop(Looper.java:123)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.app.ActivityThread.main(ActivityThread.java:4627)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at java.lang.reflect.Method.invokeNative(Native Method)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at java.lang.reflect.Method.invoke(Method.java:521)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at dalvik.system.NativeStart.main(Native Method)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): Caused by: android.database.sqlite.SQLiteException: no such table: TableTbl: , while compiling: SELECT _id, num, description FROM TableTbl ORDER BY num DESC
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.database.sqlite.SQLiteCompiledSql.native_compile(Native Method)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.database.sqlite.SQLiteCompiledSql.compile(SQLiteCompiledSql.java:91)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.database.sqlite.SQLiteCompiledSql.<init>(SQLiteCompiledSql.java:64)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.database.sqlite.SQLiteProgram.<init>(SQLiteProgram.java:80)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.database.sqlite.SQLiteQuery.<init>(SQLiteQuery.java:46)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:42)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:330)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:280)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at com.amaker.provider.TableProvider.query(TableProvider.java:96)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.content.ContentProvider$Transport.query(ContentProvider.java:163)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.content.ContentResolver.query(ContentResolver.java:245)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.app.Activity.managedQuery(Activity.java:1520)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at com.amaker.wlo.OrderActivity.setTableAdapter(OrderActivity.java:120)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at com.amaker.wlo.OrderActivity.onCreate(OrderActivity.java:71)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.amaker.wlo/com.amaker.wlo.OrderActivity}: android.database.sqlite.SQLiteException: no such table: TableTbl: , while compiling: SELECT _id, num, description FROM TableTbl ORDER BY num DESC
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.os.Handler.dispatchMessage(Handler.java:99)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.os.Looper.loop(Looper.java:123)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.app.ActivityThread.main(ActivityThread.java:4627)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at java.lang.reflect.Method.invokeNative(Native Method)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at java.lang.reflect.Method.invoke(Method.java:521)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at dalvik.system.NativeStart.main(Native Method)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): Caused by: android.database.sqlite.SQLiteException: no such table: TableTbl: , while compiling: SELECT _id, num, description FROM TableTbl ORDER BY num DESC
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.database.sqlite.SQLiteCompiledSql.native_compile(Native Method)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.database.sqlite.SQLiteCompiledSql.compile(SQLiteCompiledSql.java:91)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.database.sqlite.SQLiteCompiledSql.<init>(SQLiteCompiledSql.java:64)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.database.sqlite.SQLiteProgram.<init>(SQLiteProgram.java:80)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.database.sqlite.SQLiteQuery.<init>(SQLiteQuery.java:46)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:42)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:330)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:280)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at com.amaker.provider.TableProvider.query(TableProvider.java:96)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.content.ContentProvider$Transport.query(ContentProvider.java:163)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.content.ContentResolver.query(ContentResolver.java:245)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.app.Activity.managedQuery(Activity.java:1520)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at com.amaker.wlo.OrderActivity.setTableAdapter(OrderActivity.java:120)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at com.amaker.wlo.OrderActivity.onCreate(OrderActivity.java:71)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
07-16 01:00:47.741: ERROR/AndroidRuntime(405): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
/**
*
* @author 郭宏志
* 数据库工具类
*/
public class DBHelper extends SQLiteOpenHelper{
// 数据库名称常量
private static final String DATABASE_NAME = "Wireless.db";
// 数据库版本常量
private static final int DATABASE_VERSION = 2;
// 表名称常量
public static final String TABLES_TABLE_NAME = "TableTbl";
public static final String TABLES_TABLE_NAME2 = "MenuTbl";
// 构造方法
public DBHelper(Context context) {
// 创建数据库
super(context, DATABASE_NAME,null, DATABASE_VERSION);
} // 创建时调用
public void onCreate(SQLiteDatabase db) {
//将注释去掉---Bylee
db.execSQL("CREATE TABLE" + " IF NOT EXISTS "+TABLES_TABLE_NAME+ " ("
+ Tables._ID + " INTEGER PRIMARY KEY,"
+ Tables.NUM + " TEXT,"
+ Tables.DESCRIPTION + " TEXT"
+ ");"); db.execSQL("CREATE TABLE " + TABLES_TABLE_NAME2 + " ("
+ Menus._ID + " INTEGER PRIMARY KEY,"
+ Menus.TYPE_ID + " INTEGER,"
+ Menus.NAME + " TEXT,"
+ Menus.PRICE + " INTEGER,"
+ Menus.PIC + " TEXT,"
+ Menus.REMARK + " TEXT"
+ ");");
} // 版本更新时调用
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// 删除表
db.execSQL("DROP TABLE IF EXISTS TableTbl");//将注释去掉---Bylee
db.execSQL("DROP TABLE IF EXISTS MenuTbl");
onCreate(db);
}}
// 授权常量
public static final String AUTHORITY = "com.amaker.provider.TABLES";
// 访问Uri
public static final Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY + "/table");
// 默认排序常量
public static final String DEFAULT_SORT_ORDER = "num desc";// 按桌号排序
// 表字段常量
public static final String NUM = "num"; //桌号
public static final String DESCRIPTION= "description"; // 描述
}
另一个地方是:db.execSQL("CREATE TABLE" + " IF NOT EXISTS "+TABLES_TABLE_NAME+ " ("
+ Tables._ID + " INTEGER PRIMARY KEY,"
+ Tables.NUM + " TEXT,"
+ Tables.DESCRIPTION + " TEXT"
+ ");"); 这个里面是不是需要加上Tables.FLAG,并且NUM不是TEXT类型的
不是添加数据库吗?请问数据库怎么添加啊? ~菜鸟求指教~