Back to project page SpeechWriter.
The source code is released under:
MIT License
If you think the Android project SpeechWriter listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
package edu.psu.rcy5017.speechwriter; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; import android.util.Log; //from w w w .j a v a 2s . c om /** * A helper class that is responsible for creating and updating the app database, * and for creating all the tables in the database. * @author Ryan Yosua * */ public final class DatabaseHelper extends SQLiteOpenHelper { private static final String TAG = "DatabaseHelper"; public static final int DATABASE_VERSION = 2; public static final String DATABASE_NAME = "PublicSpeakingAssistantDatabase"; public static final String COLUMN_ID = "_id"; // Speech Table public static final String SPEECH_TABLE_NAME = "Speech"; public static final String SPEECH_TITLE = "Title"; public static final String SPEECH_ORDER = "ListOrder"; // NoteCard Table public static final String NOTECARD_TABLE_NAME = "Notecard"; public static final String NOTECARD_TITLE = "Title"; public static final String NOTECARD_ORDER = "ListOrder"; public static final String SPEECH_ID = "SpeechID"; // Note Table public static final String NOTE_TABLE_NAME = "Note"; public static final String NOTE_TEXT = "Text"; public static final String NOTE_ORDER = "ListOrder"; public static final String NOTECARD_ID = "NoteCardID"; // SpeechRecording Table public static final String SPEECH_RECORDING_TABLE_NAME = "SpeechRecording"; public static final String SPEECH_RECORDING_TITLE = "Title"; public static final String SPEECH_RECORDING_ORDER = "ListOrder"; public DatabaseHelper(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); } @Override public void onCreate(SQLiteDatabase db) { createSpeechTable(db); createNoteCardTable(db); createNoteTable(db); createSpeechRecording(db); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { // Do nothing. } @Override public void onConfigure(SQLiteDatabase db) { super.onConfigure(db); db.setForeignKeyConstraintsEnabled(true); } private void createSpeechTable(SQLiteDatabase db) { final String createStatement = "CREATE TABLE " + SPEECH_TABLE_NAME + " (" + COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " + SPEECH_TITLE + " TEXT NOT NULL," + SPEECH_ORDER + " INTEGER NOT NULL" + ");"; db.execSQL(createStatement); } private void createNoteCardTable(SQLiteDatabase db) { final String createStatement = "CREATE TABLE " + NOTECARD_TABLE_NAME + " (" + COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " + NOTECARD_TITLE + " TEXT NOT NULL," + NOTECARD_ORDER + " INTEGER NOT NULL," + SPEECH_ID + " INTEGER NOT NULL," + "FOREIGN KEY("+ SPEECH_ID +") REFERENCES " + SPEECH_TABLE_NAME + "("+ COLUMN_ID +") ON DELETE CASCADE" + ");"; db.execSQL(createStatement); } private void createNoteTable(SQLiteDatabase db) { final String createStatement = "CREATE TABLE " + NOTE_TABLE_NAME + " (" + COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " + NOTE_TEXT + " TEXT NOT NULL," + NOTE_ORDER + " NOTE_ORDER NOT NULL," + NOTECARD_ID + " INTEGER NOT NULL," + "FOREIGN KEY("+ NOTECARD_ID +") REFERENCES " + NOTECARD_TABLE_NAME + "("+ COLUMN_ID +") ON DELETE CASCADE" + ");"; db.execSQL(createStatement); } private void createSpeechRecording(SQLiteDatabase db) { final String createStatement = "CREATE TABLE " + SPEECH_RECORDING_TABLE_NAME + " (" + COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " + SPEECH_RECORDING_TITLE + " TEXT NOT NULL," + SPEECH_RECORDING_ORDER + " INTEGER NOT NULL," + SPEECH_ID + " INTEGER NOT NULL," + "FOREIGN KEY("+ SPEECH_ID +") REFERENCES " + SPEECH_TABLE_NAME + "("+ COLUMN_ID +") ON DELETE CASCADE" + ");"; db.execSQL(createStatement); } }