我的db有問題。沒有任何表和數(shù)據(jù),只有空數(shù)據(jù)庫。我應(yīng)該在代碼中更改什么?我想用硬編碼的值創(chuàng)建一個數(shù)據(jù)庫,因?yàn)槲蚁肷院笤趕pinner中使用它們。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貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超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;
添加回答
舉報
0/150
提交
取消