0

我有一个扩展 SQLiteOpenHelper 的类,我在其中定义了要创建的数据库表和列。这些是如下所示的字符串:

public String AS_COLUMN_A_BTN5 = "a_btn5";

然后我为每个 CREATE TABLE 语句定义了一个字符串。这些表是在 onCreate() 方法中创建的。

问题是我有超过 50 列,所以文件变得非常长且难以管理。

定义大量列的最佳实践是什么?

4

1 回答 1

0
  1. 将您的 create-database.sql 脚本写入文件并将其保存到您的 /assets 文件夹。
  2. 在你身上使用以下内容SQLiteOpenHelper

onCreate

@Override
public void onCreate( SQLiteDatabase db )
{
    InputStream in_stream = null;
    try {
        in_stream = mContext.getResources().getAssets().open( CREATE_SCRIPT );
        String[] statements = parseSqlFile( in_stream );
        for ( String statement : statements ) {
            db.execSQL( statement );
        }
    } catch ( IOException e ) {
        e.printStackTrace();
    } finally {
        try {
            if ( in_stream != null ) {
                in_stream.close();
            }
        } catch ( Exception e ) {
        }
    }
}

在第 8 行,您将找到一个名为parseSqlFile(). 这是一种采用 SQL 脚本并将其拆分为 sql 语句的方法。你可以从这里下载它(我从很久以前读过的博客中使用它。不幸的是,我不记得了)。

这样,您可以利用编辑器的语法突出显示来发现 sql 脚本中的拼写错误。

如果您有问题,请告诉我。

于 2013-04-08T19:15:08.937 回答