我想設置列值爲字符串。查詢設置android studio中的sql數據庫列值
這是DatabaseHelperClass方法:在這裏我想設置日期
public void setDate(String name, String date){
SQLiteDatabase db = this.getWritableDatabase();
String query = " SET " + COL3 + " TO " + date + " FROM " + TABLE_NAME +
" WHERE " + COL2 + " = " + name;
db.execSQL(query);
和類:
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.elevator_info);
myDB = new DatabaseHelper(this);
btnAddDate = (Button) findViewById(R.id.btnAddDate);
editText = (EditText) findViewById(R.id.editTextDate);
Intent receivedIntent = getIntent();
selectedID = receivedIntent.getIntExtra("id", -1);
selectedName = receivedIntent.getStringExtra("name");
btnAddDate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String newDate = editText.getText().toString();
myDB.setDate(selectedName,newDate);
}
});
}
這是我的logcat:
E/SQLiteLog(8210): (1) near "TO": syntax error
D/AndroidRuntime(8210): Shutting down VM
E/AndroidRuntime(8210): FATAL EXCEPTION: main
E/AndroidRuntime(8210): Process: com.example.goshoy.elevatorapp, PID: 8210
E/AndroidRuntime(8210): android.database.sqlite.SQLiteException: near "TO":
syntax error (code 1): , while compiling: SELECT date TO date1 FROM
elevatordatabase WHERE name = bag6
我做這個:
String query = " UPDATE " + TABLE_NAME + " SET " + COL3 + " = " +
date + " WHERE " + COL2 + " = " + name;
的logcat:
E/AndroidRuntime(10063): android.database.sqlite.SQLiteException: no such
column: date1 (code 1): , while compiling: UPDATE elevatordatabase SET date
= date1 WHERE name = bag
洙我這樣做:
SQLiteDatabase db = this.getWritableDatabase();
ContentValues cv = new ContentValues();
cv.put(COL3,date);
db.update(TABLE_NAME , cv , COL2 + " = " + name, null);
的logcat:
E/AndroidRuntime(12444):
android.database.sqlite.SQLiteException: no such column: bag4
(code 1): , while compiling: UPDATE elevatordatabase SET date=?
WHERE name = bag4
編輯我的問題。 – Goshoy
但它仍然不起作用。說沒有這樣的專欄。 – Goshoy
再次嘗試以單個qout –