package com.java.wjd;import android.app.Activity;
import android.content.ContentUris;
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.widget.ListView;
import android.widget.Toast;public class StuInfoActivity extends Activity {
/** Called when the activity is first created. */
/*基本数据定义*/
public int sqlnum = 0;
/*控件定义*/
private ListView listview =null;
/*数据库定义*/
private SQLiteDatabase db = null;
private final static String DATABASE_NAME = "Listinfo.db";
private final static String TABLE_NAME = "T_list";
private final static String TABLE_ID ="id";
private final static String TABLE_USENAME ="usename";
private final static String TABLE_PHONE ="phone";
private final static String TABLE_QQ ="qq";
private final static String TABLE_ADDRESS ="address";
private final static String CREATE_TABLE ="create table "+TABLE_NAME+" ("+TABLE_ID+" int,"+TABLE_USENAME+" nvarchar(255),"+TABLE_PHONE+" int,"+TABLE_QQ+" int,"+TABLE_ADDRESS+" varchar(255))";
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
findId();
init();
}
public void findId(){
listview = (ListView)findViewById(R.id.ls);
}
public void init(){
this.deleteDatabase(DATABASE_NAME);
db = this.openOrCreateDatabase(DATABASE_NAME,MODE_PRIVATE,null);
try{
db.execSQL(CREATE_TABLE);
write();
read();
}
catch(Exception e){
}
}
public void read(){
Cursor cursor = db.rawQuery("select * from "+TABLE_NAME+"",new String[]{TABLE_ID.toString()});
System.out.println("你好");
sqlnum = cursor.getCount();
System.out.println(sqlnum);
if(cursor != null && sqlnum > 0){
Toast toast = Toast.makeText(this,"有数据插入了",Toast.LENGTH_SHORT);
toast.show();
}
cursor.close();
}
public void write(){
ContentValues cv = new ContentValues();
cv.put(TABLE_ID,1);
cv.put(TABLE_USENAME,"wjd");
cv.put(TABLE_PHONE,123456);
cv.put(TABLE_QQ,752570126);
cv.put(TABLE_ADDRESS,"浙江");
db.insert(TABLE_NAME,null,cv);
}
}请问这段代码有啥问题啊,为啥无法读出数据来
db.execSQL(CREATE_TABLE);
write();
read();
这里需要
write();db.close();read();
/** Called when the activity is first created. */
/*基本数据定义*/
public int sqlnum = 0;
/*控件定义*/ /*数据库定义*/
private SQLiteDatabase db = null;
private final static String DATABASE_NAME = "Listinfo.db";
private final static String TABLE_NAME = "T_list";
private final static String TABLE_ID ="id";
private final static String TABLE_USENAME ="usename";
private final static String TABLE_PHONE ="phone";
private final static String TABLE_QQ ="qq";
private final static String TABLE_ADDRESS ="address";
private final static String CREATE_TABLE ="create table "+TABLE_NAME+" ("+TABLE_ID+" int,"+TABLE_USENAME+" nvarchar(255),"+TABLE_PHONE+" int,"+TABLE_QQ+" int,"+TABLE_ADDRESS+" varchar(255))";
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//findId();
init();
}
// public void findId(){
// listview = (ListView)findViewById(R.id.ls);
// }
public void init(){
this.deleteDatabase(DATABASE_NAME);
db = this.openOrCreateDatabase(DATABASE_NAME,MODE_PRIVATE,null);
try{
db.execSQL(CREATE_TABLE);
System.out.println(CREATE_TABLE);
write();
System.out.println("write");
db.close();
System.out.println("read");
read();
}
catch(Exception e){
}
}
public void read(){
SQLiteDatabase db1 = this.openOrCreateDatabase(DATABASE_NAME,MODE_PRIVATE,null);
Cursor cursor = db1.rawQuery("select * from T_list where id==1", null);
System.out.println("hello");
sqlnum = cursor.getCount();
System.out.println(sqlnum);
if(cursor != null && sqlnum > 0){
Toast toast = Toast.makeText(this,"有数据插入了",Toast.LENGTH_SHORT);
toast.show();
}
cursor.close();
}
public void write(){
ContentValues cv = new ContentValues();
cv.put(TABLE_ID,1);
cv.put(TABLE_USENAME,"wjd");
cv.put(TABLE_PHONE,123456);
cv.put(TABLE_QQ,752570126);
cv.put(TABLE_ADDRESS,"浙江");
db.insert(TABLE_NAME,null,cv);
}
}贴上试验了下好使。
成了给分。偶缺分。
10-03 07:49:02.823: ERROR/AndroidRuntime(254): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.java.wjd/com.java.wjd.StuInfoActivity}: java.lang.ClassNotFoundException: com.java.wjd.StuInfoActivity in loader dalvik.system.PathClassLoader@44c06768
10-03 07:49:02.823: ERROR/AndroidRuntime(254): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2417)
10-03 07:49:02.823: ERROR/AndroidRuntime(254): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2512)
10-03 07:49:02.823: ERROR/AndroidRuntime(254): at android.app.ActivityThread.access$2200(ActivityThread.java:119)
10-03 07:49:02.823: ERROR/AndroidRuntime(254): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1863)
10-03 07:49:02.823: ERROR/AndroidRuntime(254): at android.os.Handler.dispatchMessage(Handler.java:99)
10-03 07:49:02.823: ERROR/AndroidRuntime(254): at android.os.Looper.loop(Looper.java:123)
10-03 07:49:02.823: ERROR/AndroidRuntime(254): at android.app.ActivityThread.main(ActivityThread.java:4363)
10-03 07:49:02.823: ERROR/AndroidRuntime(254): at java.lang.reflect.Method.invokeNative(Native Method)
10-03 07:49:02.823: ERROR/AndroidRuntime(254): at java.lang.reflect.Method.invoke(Method.java:521)
10-03 07:49:02.823: ERROR/AndroidRuntime(254): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
10-03 07:49:02.823: ERROR/AndroidRuntime(254): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
10-03 07:49:02.823: ERROR/AndroidRuntime(254): at dalvik.system.NativeStart.main(Native Method)
10-03 07:49:02.823: ERROR/AndroidRuntime(254): Caused by: java.lang.ClassNotFoundException: com.java.wjd.StuInfoActivity in loader dalvik.system.PathClassLoader@44c06768
10-03 07:49:02.823: ERROR/AndroidRuntime(254): at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:243)
10-03 07:49:02.823: ERROR/AndroidRuntime(254): at java.lang.ClassLoader.loadClass(ClassLoader.java:573)
10-03 07:49:02.823: ERROR/AndroidRuntime(254): at java.lang.ClassLoader.loadClass(ClassLoader.java:532)
10-03 07:49:02.823: ERROR/AndroidRuntime(254): at android.app.Instrumentation.newActivity(Instrumentation.java:1021)
10-03 07:49:02.823: ERROR/AndroidRuntime(254): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2409)
10-03 07:49:02.823: ERROR/AndroidRuntime(254): ... 11 more