public class Record extends SQLiteOpenHelper {
static final String DATABASE_NAME = "mydb.db"; // 사용할 DB명
static final String table = "table";
static final int DATABASE_VERSION = 1; // DB 버전
public Record(Context context){
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override // 테이블 생성코드
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE IF NOT EXISTS" + table +
" (" + "calo TEXT," + "timestamp DATE DEFAULT
(datetime('now','localtime'));");
}
@Override // 테이블 삭제코드
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS table;");
onCreate(db);
}
}
public class end extends Activity{
Record record;
SQLiteDatabase db;
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.end);
int calo =getIntent().getIntExtra("cal", 0);
record= new Record(this);
db= record.getWritableDatabase();
db.execSQL("INSERT INTO table VALUES ('"+calo+"')");
Cursor cursor = db.rawQuery("SELECT SUM(calo) FROM table ", null);
while(cursor.moveToNext()){
int addr = cursor.getInt(0);
String addrrr = Integer.toString(addr);
String datee = cursor.getString(1);
TextView TEXT =(TextView)findViewById(R.id.record);
TEXT.setText(addr + datee);
}
1.android.database.sqlite.SQLiteException: near "EXISTtable":
syntax error (code 1): , while compiling:
CREATE TABLE IF NOT EXISTtable (calo TEXT,timestamp DATE DEFAULT (datetime('now','localtime'));
라고 오류가 뜨거든요...
그래서 테이블 생성 하는 구문 뛰어 쓰기도 고쳐 봤는데도 똑같은 오류가 뜹니다...
무엇이 문제 일까요...
2. db.execSQL("CREATE TABLE IF NOT EXISTS" + table +
" (" + "calo TEXT," + "timestamp DATE DEFAULT
(datetime('now','localtime'));");
}
이렇게 테이블 생성 구문을 넣었는데요...첫번째 컬럼에는 칼로리를
두번째 컬럼에는 시간을 넣으려고 합니다.
db.execSQL("INSERT INTO table VALUES
('"+calo+"')");
그런데 인절트 구문을 쓸때도 타임스템프 구문을 넣어 줘야 할까요...
아니면 생성 할때 넣어 줬으니 안넣어 줘도 될까요..