亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

我創建了一個沒有任何表的空數據庫,并且[保留]內的數據

我創建了一個沒有任何表的空數據庫,并且[保留]內的數據

躍然一笑 2019-04-18 18:15:05
我的db有問題。沒有任何表和數據,只有空數據庫。我應該在代碼中更改什么?我想用硬編碼的值創建一個數據庫,因為我想稍后在spinner中使用它們。Database class    public class Database extends SQLiteOpenHelper {    private static final String DATABASE_NAME = "CurrencyExchange.db";    private static final String CURRENCY_TABLE = "currency_table";    public Database(Context context) {    super(context, DATABASE_NAME, null, 1);}@Overridepublic void onCreate(SQLiteDatabase db) {    db.execSQL("CREATE TABLE "+CURRENCY_TABLE+ " ( ID INTEGER PRIMARY KEY AUTOINCREMENT, BGN TEXT, NZD TEXT, ILS TEXT, RUB TEXT, CAD TEXT, USD TEXT, PHP TEXT, CHF TEXT, ZAR TEXT, AUD TEXT, JPY TEXT, TRY TEXT, HKD TEXT, MYR TEXT, THB TEXT, HRK TEXT, NOK TEXT, IDR TEXT, DKK TEXT, CZK TEXT, HUF TEXT, GBP TEXT, MXN TEXT, KRW TEXT, ISK TEXT, SGD TEXT, BRL TEXT, PLN TEXT, INR TEXT, RON TEXT, CNY TEXT, SEK TEXT)");}@Overridepublic void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {    db.execSQL("DROP TABLE IF EXISTS "+CURRENCY_TABLE);    onCreate(db);}public boolean insertData(){    SQLiteDatabase database = this.getWritableDatabase();    ContentValues contentValues = new ContentValues();    final String insert_data = "INSERT INTO "+CURRENCY_TABLE+ " VALUES (0,'BGN','NZD','ILS','RUB','CAD','USD','PHP','CHF','ZAR','AUD','JPY','TRY','HKD','MYR','THB','HRK','NOK','IDR','DKK','CZK','HUF','GBP','MXN','KRW','ISK','SGD','BRL','PLN','INR','RON','CNY','SEK')";    contentValues.put(CURRENCY_TABLE, insert_data);    return database.insert(CURRENCY_TABLE, null, contentValues) != -1;}主要活動    public class MainActivity extends AppCompatActivity {Database database;@Overrideprotected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_main);    database = new Database(this);    database.insertData();
查看完整描述

3 回答

?
SMILET

TA貢獻1796條經驗 獲得超4個贊

這不是你如何使用 ContentValues


使用insert_data您制作的變量,您可以db.execSQL()再次使用


db.execSQL(insert_data);

如果你想使用ContentValues,database.insert()你必須像這樣使用它:


ContentValues values= new ContentValues();

values.put(COLUMN1_NAME, value1);

values.put(COLUMN2_NAME, value2);

values.put(COLUMN3_NAME, value3);

//for each column of your table


return database.insert(CURRENCY_TABLE, null, values) != -1;


查看完整回答
反對 回復 2019-05-15
  • 3 回答
  • 0 關注
  • 596 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號