sql >> データベース >  >> RDS >> SQLite

onUpgradeメソッドが呼び出されたことはありますか?

    onUpgrade()の正確な瞬間を知りたい方へ が呼び出されると、getReadableDatabase()のいずれかが呼び出されます。 またはgetWriteableDatabase()

    確実にトリガーされる方法がわからない場合は、答えは次のとおりです。SqLiteOpenHelperのコンストラクターにデータベースバージョンが提供されたときにトリガーされます。 更新されます。これが例です

    public class dbSchemaHelper extends SQLiteOpenHelper {
    
    private String sql;
    private final String D_TAG = "FundExpense";
    //update this to get onUpgrade() method of sqliteopenhelper class called
    static final int DB_VERSION = 2; 
    static final String DB_NAME = "fundExpenseManager";
    
    public dbSchemaHelper(Context context) {
        super(context, DB_NAME, null, DB_VERSION);
        // TODO Auto-generated constructor stub
    }
    

    今から...onUpgrade()

    @Override
    public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) {
        sql = "ALTER TABLE " + fundExpenseSchema.Expense.TABLE_NAME + " ADD COLUMN " + fundExpenseSchema.Expense.FUNDID + " INTEGER";
        arg0.execSQL(sql);
    }
    


    1. MySQLをMariaDB10にアップグレードします(パート1 – MariaDB 5.5をインストールします)

    2. 指定されたIDの最新の行を取得します

    3. 文字列を整数に型キャスト

    4. SQL Server 2005一意の制約を作成するにはどうすればよいですか?