首页 > 代码库 > 安卓手机开发:SQLite数据库能够生成,但是无法创建表单

安卓手机开发:SQLite数据库能够生成,但是无法创建表单

 1 public class MyDBHelper extends SQLiteOpenHelper { 2     //数据库文件在SD卡中,此时必须用全限定名!! 默认路径在/data/data/databases/testDBinSD.sqlite, 但私密数据外界看不到-除非root。 3     private static final String SQL_NAME = "/sdcard/wang.sqlite";//数据库名称。//Environment.getExternalStorageDirectory().getPath() + "testDBinSD.sqlite";// 4     private static final String MAIN_DATA_TABLE_NAME = "wang";//表名。 5     private static final String MAIN_DATA_ID = "id";//表的4个字段 6     private static final String MAIN_DATA_NAME = "name"; 7     private static final String MAIN_DATA_SEX = "sex"; 8     private static final String MAIN_DATA_GRADE = "grade"; 9 10     //构造方法11     public MyDBHelper(Context context) {12         super(context, SQL_NAME, null, 1);13 14     }这一步没问题15 16     @Override17     public void onCreate(SQLiteDatabase db) {18         //建表19         String s = "CREATE TABLE person (id INTEGER PRIMARY KEY AUTOINCREMENT, name VARCHAR(20), age SMALLINT);";20         db.execSQL(s);21         db.execSQL("CREATE TABLE IF NOT EXISTS person" + "(_id INTEGER PRIMARY KEY AUTOINCREMENT, name VARCHAR, age INTEGER, info TEXT)");22     }
这部分有问题我觉得一直没执行,后来验证了一下确实没执行。

这部分卡了好久,后来只能查找
SQLiteOpenHelper 的使用方法,发现
  1. // 创建了一个DatabaseHelper对象,只执行这句话是不会创建或打开连接的  
  2.             DatabaseHelper dbHelper = new DatabaseHelper(SQLiteActivity.this,  
  3.                     "test_yangyz_db");  
  4.             // 只有调用了DatabaseHelper的getWritableDatabase()方法或者getReadableDatabase()方法之后,才会创建或打开一个连接  

只有打开或创建连接的时候才会调用oncreat,尽信书不如无书,网上好多教程也是。。。。。

 

 

安卓手机开发:SQLite数据库能够生成,但是无法创建表单