2

SQLite データベースの日時型フィールドに現在の日付を挿入したい。これどうやってするの?

更新:使用mDb.execSQL("INSERT INTO " + DATABASE_TABLE + " VALUES (datetime()) ");

like を挿入できますが、date_created=2012-10-10 13:02:08このフォーマットが必要です。これ10 Oct 2012 12:48を達成するにはどうすればよいですか?

4

3 に答える 3

10

私はそれを成し遂げるために次の方法を好みます:

  1. 現在の日時を自動的に配置するデフォルト設定でテーブルを作成します。例えば:

    ColumnName DATETIME DEFAULT CURRENT_TIMESTAMP
    
  2. 現在の日付を作成SimpleDateFormatし、SQL フォーマット文字列に変換します。例えば:

    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    String strDate = sdf.format(new Date());
    
    ContentValues values = new ContentValues();
    values.put("ColumnName", strDate);
    
于 2012-10-10T07:22:19.530 に答える
1

以下を使用できます。

mDb.execSQL("INSERT INTO " + DATABASE_TABLE + " VALUES (datetime()) ");

チェック: https://stackoverflow.com/a/819605/1434631

于 2012-10-10T07:19:10.087 に答える
0
   ContentValues coloumnVlues = new ContentValues();
   //SimpleDateFormat dateFormat = new SimpleDateFormat("YYYY-MM-dd HH:mm:ss");
   Date date = new Date();
   coloumnVlues.put("fname", fname);

   // inserted date in database like May 31, 2013 10:42:53 AM it's simulator datetime
   coloumnVlues.put("created_date", DateFormat.getDateTimeInstance(). format(date));

SimpleDateFormat を使用する必要はありません。

以下のリンクに示す例のデータベースから日時を取得します

http://www.sqlite.org/lang_datefunc.html

于 2013-05-31T11:27:41.287 に答える