插入在sqlitedatabase当前日期 [英] Inserting current date in sqlitedatabase
本文介绍了插入在sqlitedatabase当前日期的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在其中我插入当前日期的sqlitedatabase。的问题是,当我插入当前日期,这已是在数据库中的日期,得到改变到新的日期,以及。我想插入当前日期,而不是改变previously插入日期。请告诉我,我在做什么错在这里。谢谢
公共静态最后弦乐KEY_DATE =CURRENT_DATE; @覆盖
公共无效的onCreate(SQLiteDatabase DB){
// TODO自动生成方法存根
db.execSQL(CREATE TABLE+ DATABASE_TABLE +(+
KEY_ROWID +INTEGER PRIMARY KEY AUTOINCREMENT,+
KEY_DATE +TEXT NOT NULL,+
KEY_NAME +TEXT NOT NULL););
} @覆盖
公共无效onUpgrade(SQLiteDatabase分贝,INT oldVersion,诠释静态网页){
// TODO自动生成方法存根
db.execSQL(DROP TABLE IF EXISTS+ DATABASE_TABLE);
的onCreate(DB);
} 公共MyDatabase的(语境C){
ourContext = C;
} 公共MyDatabase的打开()抛出的SQLException {
ourHelper =新DbHelper(ourContext);
ourDatabase = ourHelper.getWritableDatabase();
返回此;
} 公共无效的close(){
ourHelper.close();
} 众长createEntry(字符串名称){
SimpleDateFormat的SDF =新的SimpleDateFormat();
日期数值指明MyDate =新的日期();
ContentValues CV =新ContentValues();
cv.put(KEY_DATE,sdf.format(数值指明MyDate));
cv.put(KEY_NAME,名);
返回ourDatabase.insert(DATABASE_TABLE,空,CV);
}
//下面code显示我是如何从阅读分贝
公共字符串的getData(){
// TODO自动生成方法存根 的String [] =列新的String [] {KEY_ROWID,KEY_DATE,KEY_NAME};
光标C = ourDatabase.query(DATABASE_TABLE,列,NULL,NULL,NULL,NULL,NULL);
字符串结果=; INT iRow = c.getColumnIndex(KEY_ROWID);
INT i日期= c.getColumnIndex(KEY_DATE);
INT INAME = c.getColumnIndex(KEY_NAME);
为(c.moveToFirst();!c.isAfterLast(); c.moveToNext()){ 结果=结果+ c.getString(iRow)++ c.getString(i日期)++ c.getString(INAME)++\\ n; } 返回结果; }
解决方案
这是我做的是,我后来添加的日期栏的错误。通过在同一时间产生的所有列,解决了问题。
覆盖
公共无效的onCreate(SQLiteDatabase DB){
// TODO自动生成方法存根
db.execSQL(CREATE TABLE+ DATABASE_TABLE +(+
KEY_ROWID +INTEGER PRIMARY KEY AUTOINCREMENT,+
KEY_DATE +TEXT NOT NULL,+
KEY_NAME +TEXT NOT NULL););
}
I have a sqlitedatabase in which I am inserting current date. The problem is that when I insert the current date, the dates which already are in the database get changed to the new date as well. I want to insert the current date and not change the previously inserted dates. Please tell me what am I doing wrong here. Thanks
public static final String KEY_DATE = "current_date";
@Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
db.execSQL("CREATE TABLE " + DATABASE_TABLE + " (" +
KEY_ROWID + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
KEY_DATE + " TEXT NOT NULL, " +
KEY_NAME + " TEXT NOT NULL);");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
db.execSQL("DROP TABLE IF EXISTS " + DATABASE_TABLE);
onCreate(db);
}
public MyDatabase(Context c){
ourContext = c;
}
public MyDatabase open() throws SQLException {
ourHelper = new DbHelper(ourContext);
ourDatabase = ourHelper.getWritableDatabase();
return this;
}
public void close(){
ourHelper.close();
}
public long createEntry(String name) {
SimpleDateFormat sdf = new SimpleDateFormat();
Date mydate = new Date();
ContentValues cv = new ContentValues();
cv.put(KEY_DATE, sdf.format(mydate));
cv.put(KEY_NAME , name);
return ourDatabase.insert(DATABASE_TABLE, null, cv);
}
// Below code show how I am reading from db
public String getData(){
// TODO Auto-generated method stub
String[] columns = new String[]{KEY_ROWID,KEY_DATE,KEY_NAME};
Cursor c = ourDatabase.query(DATABASE_TABLE, columns, null, null, null, null, null);
String result =" ";
int iRow = c.getColumnIndex(KEY_ROWID);
int iDate = c.getColumnIndex(KEY_DATE);
int iName = c.getColumnIndex(KEY_NAME);
for(c.moveToFirst(); !c.isAfterLast(); c.moveToNext()){
result = result + c.getString(iRow) + " " + c.getString(iDate) + " " + c.getString(iName) + " " + "\n";
}
return result;
}
解决方案
The mistake which I was making was that I had added date column later on. By creating all the columns at one time, fixed the problem.
Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
db.execSQL("CREATE TABLE " + DATABASE_TABLE + " (" +
KEY_ROWID + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
KEY_DATE + " TEXT NOT NULL, " +
KEY_NAME + " TEXT NOT NULL);");
}
这篇关于插入在sqlitedatabase当前日期的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文