我試圖在 SQLITE 數據庫中插入數據,但當我打開數據庫時它不存在。我正在嘗試開發一個能夠在數據庫中存儲數據的應用程序。但是當我嘗試添加數據時,它不會添加到表中。以下是數據庫助手和我調用插入數據函數的活動的代碼:公共類 DatabaseHelper 擴展 SQLiteOpenHelper {public static final String DATABASE_NAME = "Channels.db" ;public static final String TABLE_NAME = "Channels_table" ;public static final String COL_1 = "Channel_number" ;public static final String COL_2 = "Channel_name" ;public DatabaseHelper(Context context){ super(context, DATABASE_NAME , null , 1);}@Overridepublic void onCreate(SQLiteDatabase db) { db.execSQL("create table " + TABLE_NAME + " (Channel_number INTEGER PRIMARY KEY , Channel_name TEXT )");}@Overridepublic void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME); onCreate(db);}public boolean insertData(int c_number , String c_name){ SQLiteDatabase db = this.getWritableDatabase(); ContentValues contentValues = new ContentValues(); contentValues.put(COL_1 , c_number); contentValues.put(COL_2 , c_name); long result = db.insert(TABLE_NAME , null , contentValues); if (result == -1){ return false; } else return true;}公共類Add_Activity擴展AppCompatActivity {DatabaseHelper db;EditText channel_name , channel_number ;Button Add_button;protected void onCreate (Bundle savedInstanceBundle) { super.onCreate(savedInstanceBundle); setContentView(R.layout.add_view); channel_name = findViewById(R.id.channel_name_textview); channel_number = findViewById(R.id.channel_number_textview); Add_button = (Button) findViewById(R.id.add_button); db = new DatabaseHelper(this); Button_tapped();}當我點擊按鈕時,我收到了插入不成功的消息,并且數據沒有被插入到數據庫中。我需要的是能夠看到成功插入 toast 并找到數據庫中的數據。
1 回答

江戶川亂折騰
TA貢獻1851條經驗 獲得超5個贊
嘗試這個
db.execSQL("CREATE TABLE " + TABLE_NAME + " ( " + COL_1 + " INTEGER PRIMARY KEY, " + COL_2 + " TEXT )");
代替
db.execSQL("create table " + TABLE_NAME + " (Channel_number INTEGER PRIMARY KEY , Channel_name TEXT )");
添加回答
舉報
0/150
提交
取消