本文介绍了从填充数据库中微调的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述


   我试图从填充DB中飞旋......

我的code:

 字符串MY_DATABASE_NAME =TESTDB;
  字符串MY_DATABASE_TABLE =testDBrecords;
  TextView的resultsView;
  微调微调;
  ArrayAdapter<串GT; adapterForSpinner;  / **当第一次创建活动调用。 * /
@覆盖
公共无效的onCreate(捆绑savedInstanceState){
  super.onCreate(savedInstanceState);
  的setContentView(R.layout.main);
  微调=(微调)findViewById(R.id.spinner);
  resultsView =(的TextView)findViewById(R.id.textview);  SQLiteDatabase MYDB = NULL;
  MYDB = this.openOrCreateDatabase(MY_DATABASE_NAME,1,NULL);
  myDB.execSQL(CREATE TABLE IF NOT EXISTS+ MY_DATABASE_TABLE +(姓氏VARCHAR,姓VARCHAR,国家VARCHAR,年龄INT(3)););
  myDB.execSQL(插入+ MY_DATABASE_TABLE +(姓氏,名字,国籍,年龄)VALUES('name1b','name1a','countrya,34););
  myDB.execSQL(插入+ MY_DATABASE_TABLE +(姓氏,名字,国籍,年龄)VALUES('name2b,name2a,countryb,27););
  光标C = myDB.query(MY_DATABASE_TABLE,NULL,NULL,NULL,NULL,NULL,NULL);
  INT firstnameColumnIndex = c.getColumnIndexOrThrow(名字);
  INT ageColumnIndex = c.getColumnIndexOrThrow(时代);
  adapterForSpinner =新ArrayAdapter<串GT;(这一点,android.R.layout.simple_spinner_item);
          adapterForSpinner.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
          spinner.setAdapter(adapterForSpinner);
  如果(c.moveToFirst()){
          做{
                  adapterForSpinner.add(c.getString(firstnameColumnIndex)+老龄化+ c.getShort(ageColumnIndex));
          }
          而(c.moveToNext());
          如果(MYDB!= NULL){
          myDB.close();
      }
 }
其他{
  resultsView.setText(DB EMPTY !!);
}
}

没有错误,但运行一段时间强制关闭....

logcat的错误:

  3月3日至24日:09:31.501:信息/数据库(546):sqlite的返回:错误code = 1,味精=近name2a:语法错误
3月3日至24日:09:31.501:ERROR /数据库(546):失败1(近name2a:语法错误)上0x1ec430时preparingINSERT INTO testDBrecords(姓氏,名字,国籍,年龄)VALUES(' name2b,name2a,countryb,2​​7);。
3月3日至24日:09:31.743:DEBUG / AndroidRuntime(546):关闭VM
3月3日至24日:09:31.743:WARN / dalvikvm(546):主题ID = 1:螺纹未捕获的异常(组= 0x40015560)退出
3月3日至24日:09:31.981:ERROR / AndroidRuntime(546):致命异常:主要
3月3日至24日:09:31.981:ERROR / AndroidRuntime(546):了java.lang.RuntimeException:无法启动活动ComponentInfo {com.acarin.project / com.acarin.project.Rough}:android.database.sqlite.SQLiteException :近name2a:语法错误:INSERT INTO testDBrecords(姓氏,名字,国籍,年龄)VALUES('name2b,name2a,countryb,2​​7);
3月3日至24日:09:31.981:ERROR / AndroidRuntime(546):在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1622)
3月3日至24日:09:31.981:ERROR / AndroidRuntime(546):在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1638)
3月3日至24日:09:31.981:ERROR / AndroidRuntime(546):在android.app.ActivityThread.access $ 1500(ActivityThread.java:117)
3月3日至24日:09:31.981:ERROR / AndroidRuntime(546):在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:928)
3月3日至24日:09:31.981:ERROR / AndroidRuntime(546):在android.os.Handler.dispatchMessage(Handler.java:99)
3月3日至24日:09:31.981:ERROR / AndroidRuntime(546):在android.os.Looper.loop(Looper.java:123)
3月3日至24日:09:31.981:ERROR / AndroidRuntime(546):在android.app.ActivityThread.main(ActivityThread.java:3647)
3月3日至24日:09:31.981:ERROR / AndroidRuntime(546):在java.lang.reflect.Method.invokeNative(本机方法)
3月3日至24日:09:31.981:ERROR / AndroidRuntime(546):在java.lang.reflect.Method.invoke(Method.java:507)
3月3日至24日:09:31.981:ERROR / AndroidRuntime(546):在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:839)
3月3日至24日:09:31.981:ERROR / AndroidRuntime(546):在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
3月3日至24日:09:31.981:ERROR / AndroidRuntime(546):在dalvik.system.NativeStart.main(本机方法)
3月3日至24日:09:31.981:ERROR / AndroidRuntime(546):android.database.sqlite.SQLiteException:由近造成name2a:语法错误:INSERT INTO testDBrecords(姓氏,名字,国籍,年龄)VALUES(' name2b,name2a,countryb,2​​7);
3月3日至24日:09:31.981:ERROR / AndroidRuntime(546):在android.database.sqlite.SQLiteDatabase.native_execSQL(本机方法)
3月3日至24日:09:31.981:ERROR / AndroidRuntime(546):在android.database.sqlite.SQLiteDatabase.execSQL(SQLiteDatabase.java:1743)
3月3日至24日:09:31.981:ERROR / AndroidRuntime(546):在com.acarin.project.Rough.onCreate(Rough.java:32)
3月3日至24日:09:31.981:ERROR / AndroidRuntime(546):在android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
3月3日至24日:09:31.981:ERROR / AndroidRuntime(546):在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1586)
3月3日至24日:09:31.981:ERROR / AndroidRuntime(546):11 ...更多
3月3日至24日:09:32.178:WARN / ActivityManager(66):强制完成活动com.acarin.project / .Rough
3月3日至24日:09:32.767:WARN / ActivityManager(66):为HistoryRecord活动暂停超时{406c9448 com.acarin.project / .Rough}
3月3日至24日:09:33.693:WARN / ActivityManager(66):为HistoryRecord活动空闲超时{406c9448 com.acarin.project / .Rough}
3月3日至24日:09:37.055:DEBUG / dalvikvm(282):GC_EXPLICIT释放19K,55%免费2594K / 5703K,外部只有716K / 1038K,暂停15976ms
3月3日至24日:09:41.994:DEBUG / dalvikvm(299):GC_EXPLICIT释放6K,54%免费2536K / 5511K,外部只有716K / 1038K,暂停317ms
3月3日至24日:09:43.742:WARN / ActivityManager(66):活动破坏超时HistoryRecord {406c9448 com.acarin.project / .Rough}

任何帮助将是AP preciated。


解决方案

You're missing two quotes! Change it to:

这篇关于从填充数据库中微调的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

06-12 06:00