本帖最后由 dhy3605 于 2011-10-03 22:41:36 编辑

解决方案 »

  1.   


    10-04 01:50:29.428: DEBUG/AndroidRuntime(297): >>>>>>>>>>>>>> AndroidRuntime START <<<<<<<<<<<<<<
    10-04 01:50:29.428: DEBUG/AndroidRuntime(297): CheckJNI is ON
    10-04 01:50:29.678: DEBUG/AndroidRuntime(297): --- registering native functions ---
    10-04 01:50:30.089: DEBUG/ddm-heap(297): Got feature list request
    10-04 01:50:30.479: DEBUG/PackageParser(52): Scanning package: /data/app/vmdl62227.tmp
    10-04 01:50:30.580: INFO/PackageManager(52): Removing non-system package:com.java.wjd
    10-04 01:50:30.589: DEBUG/PackageManager(52): Removing package com.java.wjd
    10-04 01:50:30.589: DEBUG/PackageManager(52):   Activities: com.java.wjd.MaillistActivity
    10-04 01:50:30.689: DEBUG/PackageManager(52): Scanning package com.java.wjd
    10-04 01:50:30.689: INFO/PackageManager(52): /data/app/vmdl62227.tmp changed; unpacking
    10-04 01:50:30.708: DEBUG/installd(32): DexInv: --- BEGIN '/data/app/vmdl62227.tmp' ---
    10-04 01:50:30.888: DEBUG/dalvikvm(303): DexOpt: load 59ms, verify 23ms, opt 1ms
    10-04 01:50:30.918: DEBUG/installd(32): DexInv: --- END '/data/app/vmdl62227.tmp' (success) ---
    10-04 01:50:30.918: DEBUG/PackageManager(52):   Activities: com.java.wjd.MaillistActivity
    10-04 01:50:30.939: DEBUG/ActivityManager(52): Uninstalling process com.java.wjd
    10-04 01:50:30.939: DEBUG/ActivityManager(52): Force removing process ProcessRecord{44e0b8b8 286:com.java.wjd/10029} (com.java.wjd/10029)
    10-04 01:50:30.968: INFO/Process(52): Sending signal. PID: 286 SIG: 9
    10-04 01:50:30.988: INFO/UsageStats(52): Unexpected resume of com.android.launcher while already resumed in com.java.wjd
    10-04 01:50:31.029: INFO/WindowManager(52): WIN DEATH: Window{44d69a48 com.java.wjd/com.java.wjd.MaillistActivity paused=false}
    10-04 01:50:31.099: DEBUG/ActivityManager(52): Received spurious death notification for thread android.os.BinderProxy@44c9f4d0
    10-04 01:50:31.158: WARN/InputManagerService(52): Got RemoteException sending setActive(false) notification to pid 286 uid 10029
    10-04 01:50:31.349: INFO/installd(32): move /data/dalvik-cache/data@[email protected]@classes.dex -> /data/dalvik-cache/data@[email protected]@classes.dex
    10-04 01:50:31.358: DEBUG/PackageManager(52): New package installed in /data/app/com.java.wjd.apk
    10-04 01:50:31.479: DEBUG/AndroidRuntime(297): Shutting down VM
    10-04 01:50:31.479: DEBUG/dalvikvm(297): DestroyJavaVM waiting for non-daemon threads to exit
    10-04 01:50:31.488: DEBUG/dalvikvm(297): DestroyJavaVM shutting VM down
    10-04 01:50:31.488: DEBUG/dalvikvm(297): HeapWorker thread shutting down
    10-04 01:50:31.488: DEBUG/dalvikvm(297): HeapWorker thread has shut down
    10-04 01:50:31.488: DEBUG/jdwp(297): JDWP shutting down net...
    10-04 01:50:31.488: INFO/dalvikvm(297): Debugger has detached; object registry had 1 entries
    10-04 01:50:31.498: DEBUG/dalvikvm(297): VM cleaning up
    10-04 01:50:31.538: DEBUG/ActivityManager(52): Uninstalling process com.java.wjd
    10-04 01:50:31.538: ERROR/AndroidRuntime(297): ERROR: thread attach failed
    10-04 01:50:31.548: DEBUG/dalvikvm(297): LinearAlloc 0x0 used 623916 of 5242880 (11%)
    10-04 01:50:31.668: WARN/ResourceType(52): Resources don't contain package for resource number 0x7f0700e5
    10-04 01:50:31.678: WARN/ResourceType(52): Resources don't contain package for resource number 0x7f020031
    10-04 01:50:31.678: WARN/ResourceType(52): Resources don't contain package for resource number 0x7f020030
    10-04 01:50:31.678: WARN/ResourceType(52): Resources don't contain package for resource number 0x7f050000
    10-04 01:50:31.698: WARN/ResourceType(52): Resources don't contain package for resource number 0x7f060000
    10-04 01:50:31.709: WARN/ResourceType(52): Resources don't contain package for resource number 0x7f060001
    10-04 01:50:32.008: DEBUG/dalvikvm(98): GC freed 2606 objects / 149440 bytes in 317ms
    10-04 01:50:32.109: DEBUG/dalvikvm(52): GC freed 6590 objects / 472048 bytes in 297ms
    10-04 01:50:32.538: DEBUG/dalvikvm(52): GC freed 1929 objects / 94632 bytes in 299ms
    10-04 01:50:32.538: WARN/ResourceType(52): Resources don't contain package for resource number 0x7f0700e5
    10-04 01:50:32.551: WARN/ResourceType(52): Resources don't contain package for resource number 0x7f020031
    10-04 01:50:32.551: WARN/ResourceType(52): Resources don't contain package for resource number 0x7f020030
    10-04 01:50:32.551: WARN/ResourceType(52): Resources don't contain package for resource number 0x7f050000
    10-04 01:50:32.559: WARN/ResourceType(52): Resources don't contain package for resource number 0x7f060000
    10-04 01:50:32.579: WARN/ResourceType(52): Resources don't contain package for resource number 0x7f060001
    10-04 01:50:32.918: DEBUG/AndroidRuntime(308): >>>>>>>>>>>>>> AndroidRuntime START <<<<<<<<<<<<<<
    10-04 01:50:32.918: DEBUG/AndroidRuntime(308): CheckJNI is ON
    10-04 01:50:33.359: DEBUG/AndroidRuntime(308): --- registering native functions ---
    10-04 01:50:33.758: DEBUG/ddm-heap(308): Got feature list request
    10-04 01:50:34.149: INFO/ActivityManager(52): Starting activity: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 cmp=com.java.wjd/.MaillistActivity }
    10-04 01:50:34.189: INFO/ActivityManager(52): Start proc com.java.wjd for activity com.java.wjd/.MaillistActivity: pid=314 uid=10029 gids={}
    10-04 01:50:34.209: DEBUG/AndroidRuntime(308): Shutting down VM
    10-04 01:50:34.209: DEBUG/dalvikvm(308): DestroyJavaVM waiting for non-daemon threads to exit
    10-04 01:50:34.218: DEBUG/dalvikvm(308): DestroyJavaVM shutting VM down
    10-04 01:50:34.218: DEBUG/dalvikvm(308): HeapWorker thread shutting down
    10-04 01:50:34.218: DEBUG/dalvikvm(308): HeapWorker thread has shut down
    10-04 01:50:34.229: DEBUG/jdwp(308): JDWP shutting down net...
    10-04 01:50:34.229: INFO/dalvikvm(308): Debugger has detached; object registry had 1 entries
    10-04 01:50:34.239: DEBUG/dalvikvm(308): VM cleaning up
    10-04 01:50:34.258: ERROR/AndroidRuntime(308): ERROR: thread attach failed
    10-04 01:50:34.309: DEBUG/dalvikvm(308): LinearAlloc 0x0 used 639500 of 5242880 (12%)
    10-04 01:50:34.439: DEBUG/ddm-heap(314): Got feature list request
    10-04 01:50:34.908: ERROR/Database(314): Error inserting phone=123 address=123 qq=123 name=wjd
    10-04 01:50:34.908: ERROR/Database(314): android.database.sqlite.SQLiteException: table T_list has no column named phone: , while compiling: INSERT INTO T_list(phone, address, qq, name) VALUES(?, ?, ?, ?);
    10-04 01:50:34.908: ERROR/Database(314):     at android.database.sqlite.SQLiteProgram.native_compile(Native Method)
    10-04 01:50:34.908: ERROR/Database(314):     at android.database.sqlite.SQLiteProgram.compile(SQLiteProgram.java:110)
    10-04 01:50:34.908: ERROR/Database(314):     at android.database.sqlite.SQLiteProgram.<init>(SQLiteProgram.java:59)
    10-04 01:50:34.908: ERROR/Database(314):     at android.database.sqlite.SQLiteStatement.<init>(SQLiteStatement.java:41)
    10-04 01:50:34.908: ERROR/Database(314):     at android.database.sqlite.SQLiteDatabase.compileStatement(SQLiteDatabase.java:1027)
    10-04 01:50:34.908: ERROR/Database(314):     at android.database.sqlite.SQLiteDatabase.insertWithOnConflict(SQLiteDatabase.java:1413)
    10-04 01:50:34.908: ERROR/Database(314):     at android.database.sqlite.SQLiteDatabase.insert(SQLiteDatabase.java:1286)
    10-04 01:50:34.908: ERROR/Database(314):     at com.java.wjd.MaillistActivity$DBOpenHelper.insert(MaillistActivity.java:87)
    10-04 01:50:34.908: ERROR/Database(314):     at com.java.wjd.MaillistActivity.onCreate(MaillistActivity.java:34)
    10-04 01:50:34.908: ERROR/Database(314):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
    10-04 01:50:34.908: ERROR/Database(314):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2459)
    10-04 01:50:34.908: ERROR/Database(314):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2512)
    10-04 01:50:34.908: ERROR/Database(314):     at android.app.ActivityThread.access$2200(ActivityThread.java:119)
    10-04 01:50:34.908: ERROR/Database(314):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1863)
    10-04 01:50:34.908: ERROR/Database(314):     at android.os.Handler.dispatchMessage(Handler.java:99)
    10-04 01:50:34.908: ERROR/Database(314):     at android.os.Looper.loop(Looper.java:123)
    10-04 01:50:34.908: ERROR/Database(314):     at android.app.ActivityThread.main(ActivityThread.java:4363)
    10-04 01:50:34.908: ERROR/Database(314):     at java.lang.reflect.Method.invokeNative(Native Method)
    10-04 01:50:34.908: ERROR/Database(314):     at java.lang.reflect.Method.invoke(Method.java:521)
    10-04 01:50:34.908: ERROR/Database(314):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
    10-04 01:50:34.908: ERROR/Database(314):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
    10-04 01:50:34.908: ERROR/Database(314):     at dalvik.system.NativeStart.main(Native Method)
    10-04 01:50:35.118: INFO/ActivityManager(52): Displayed activity com.java.wjd/.MaillistActivity: 943 ms (total 943 ms)
    10-04 01:50:40.389: DEBUG/dalvikvm(98): GC freed 2644 objects / 150912 bytes in 212ms
    10-04 01:50:45.569: DEBUG/dalvikvm(216): GC freed 125 objects / 5424 bytes in 330ms
      

  2.   

    表格创建失败,
    sql语句问题
    String sql = "create table "+TABLE_NAME+"("
    +ID+" integer primary key autoincrement ,"
    +NAME+"varchar,"
    +PHONE+"varchar"
    +QQ+"varchar"
    +ADDRESS+"varchar)";
    db.execSQL(sql);
    String sql = "create table "+TABLE_NAME+"("
    +ID+" integer primary key autoincrement,"
    +NAME+"varchar,"
    +PHONE+"varchar,"
    +QQ+"varchar,"
    +ADDRESS+"varchar)";db.execSQL(sql);
    试试
      

  3.   

    你打印一下sql语句,里面肯定乱七八糟的,该加空格的地方没有加空格。这样应该就可以了: 
    String sql = "create table "+TABLE_NAME+"("
    +ID+" integer primary key autoincrement,"
    +NAME+" varchar,"    //这里少了空格 
    +PHONE+" varchar,"    //这里少了空格 
    +QQ+" varchar,"    //这里少了空格 
    +ADDRESS+" varchar)";    //这里少了空格 
      

  4.   

    这样子改之后问题还是老样子package com.java.wjd;import android.app.Activity;
    import android.content.ContentValues;
    import android.content.Context;
    import android.database.Cursor;
    import android.database.sqlite.SQLiteDatabase;
    import android.database.sqlite.SQLiteDatabase.CursorFactory;
    import android.database.sqlite.SQLiteOpenHelper;
    import android.os.Bundle;public class MaillistActivity extends Activity { private final static String DATABASE = "Info";
    private final static String TABLE_NAME = "T_list";
    private final static String ID = "id";
    private final static String NAME = "name";
    private final static String PHONE = "phone";
    private final static String QQ = "qq";
    private final static String ADDRESS = "address";
    private final static int DB_VERSION = 1;
    private Cursor m_cursor;
    private Context m_context = null;
    private SQLiteDatabase m_SQLiteDatabase;
    private DBOpenHelper m_DBOpenHelper;

    public final static String LOGIN_TABLE_NAME = "contantslogin";

        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
            m_DBOpenHelper = new DBOpenHelper(this);
            m_DBOpenHelper.open();
            m_DBOpenHelper.insert("wjd","123","123","123");
            m_DBOpenHelper.select();
            m_DBOpenHelper.show();
            //m_DBOpenHelper.close();
            
        }
        
        class DBOpenHelper extends SQLiteOpenHelper{ public DBOpenHelper(Context context) {

    super(context, DATABASE, null, DB_VERSION);

    } public void onCreate(SQLiteDatabase db) {

    String sql = "create table "+TABLE_NAME+"("
    +ID+" integer primary key autoincrement,"
    +NAME+" varchar,"    //这里少了空格 
    +PHONE+" varchar,"    //这里少了空格 
    +QQ+" varchar,"    //这里少了空格 
    +ADDRESS+" varchar)";    //这里少了空格  db.execSQL(sql);
    } public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    String sql = "drop table if exists "+TABLE_NAME;
    db.execSQL(sql);
    sql = "drop table if exists "+LOGIN_TABLE_NAME;  
            db.execSQL(sql);  
            onCreate(db);          }
        
    public void open(){

    m_SQLiteDatabase = m_DBOpenHelper.getWritableDatabase();

    }

    public void close(){

    m_DBOpenHelper.close();

    }

    public long insert(String m_name,String m_phone,String m_qq,String m_address){

    ContentValues cv = new ContentValues();
    cv.put(NAME,m_name);
    cv.put(PHONE,m_phone);
    cv.put(QQ,m_qq);
    cv.put(ADDRESS,m_address);
    return m_SQLiteDatabase.insert(TABLE_NAME,null,cv);
    }

    public void select(){

    m_cursor = m_SQLiteDatabase.rawQuery("select * from T_list",null);

    }

    public void show(){
    if(m_cursor != null){
    if(m_cursor.moveToFirst()){
    do{
    int num = m_cursor.getColumnIndex(NAME);
    String str = m_cursor.getString(num);
    System.out.println(str);
    }while(m_cursor.moveToNext());
    }
    }

    }

        }
        
    }
    10-04 02:18:15.711: ERROR/Database(283): Error inserting phone=123 address=123 qq=123 name=wjd
    10-04 02:18:15.711: ERROR/Database(283): android.database.sqlite.SQLiteException: table T_list has no column named phone: , while compiling: INSERT INTO T_list(phone, address, qq, name) VALUES(?, ?, ?, ?);
    10-04 02:18:15.711: ERROR/Database(283):     at android.database.sqlite.SQLiteProgram.native_compile(Native Method)
    10-04 02:18:15.711: ERROR/Database(283):     at android.database.sqlite.SQLiteProgram.compile(SQLiteProgram.java:110)
    10-04 02:18:15.711: ERROR/Database(283):     at android.database.sqlite.SQLiteProgram.<init>(SQLiteProgram.java:59)
    10-04 02:18:15.711: ERROR/Database(283):     at android.database.sqlite.SQLiteStatement.<init>(SQLiteStatement.java:41)
    10-04 02:18:15.711: ERROR/Database(283):     at android.database.sqlite.SQLiteDatabase.compileStatement(SQLiteDatabase.java:1027)
    10-04 02:18:15.711: ERROR/Database(283):     at android.database.sqlite.SQLiteDatabase.insertWithOnConflict(SQLiteDatabase.java:1413)
    10-04 02:18:15.711: ERROR/Database(283):     at android.database.sqlite.SQLiteDatabase.insert(SQLiteDatabase.java:1286)
    10-04 02:18:15.711: ERROR/Database(283):     at com.java.wjd.MaillistActivity$DBOpenHelper.insert(MaillistActivity.java:89)
    10-04 02:18:15.711: ERROR/Database(283):     at com.java.wjd.MaillistActivity.onCreate(MaillistActivity.java:34)
    10-04 02:18:15.711: ERROR/Database(283):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
    10-04 02:18:15.711: ERROR/Database(283):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2459)
    10-04 02:18:15.711: ERROR/Database(283):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2512)
    10-04 02:18:15.711: ERROR/Database(283):     at android.app.ActivityThread.access$2200(ActivityThread.java:119)
    10-04 02:18:15.711: ERROR/Database(283):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1863)
    10-04 02:18:15.711: ERROR/Database(283):     at android.os.Handler.dispatchMessage(Handler.java:99)
    10-04 02:18:15.711: ERROR/Database(283):     at android.os.Looper.loop(Looper.java:123)
    10-04 02:18:15.711: ERROR/Database(283):     at android.app.ActivityThread.main(ActivityThread.java:4363)
    10-04 02:18:15.711: ERROR/Database(283):     at java.lang.reflect.Method.invokeNative(Native Method)
    10-04 02:18:15.711: ERROR/Database(283):     at java.lang.reflect.Method.invoke(Method.java:521)
    10-04 02:18:15.711: ERROR/Database(283):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
    10-04 02:18:15.711: ERROR/Database(283):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
    10-04 02:18:15.711: ERROR/Database(283):     at dalvik.system.NativeStart.main(Native Method)
      

  5.   


    正确的
    clean一下工程,再编译!
      

  6.   

    这句sql语句是对的,我知道,但我这程序还有其它地方错误
      

  7.   


    程序没错误,是你以前创建的数据库还在存在,表格已经存在啦!修改程序后 数据库没有变化!
    进入dos环境
    adb shell
    cd data/data/工程名/databases/
    rm Info
    把数据库删拉!
    再试试就可以啦!
      

  8.   

    ......算了,你那边能正常插入数据啊,我这边就不能诶,其实我昨天就发现错误了除了sql语句错误,还有一个地方也错了private final static String DATABASE = "Info";你没觉得这个地方少个东西吗
      

  9.   

    ........算了,private final static String DATABASE = "Info.db";Info后面少了个.db