0

こんにちは、データベース テーブルに現在の日付を挿入しようとしています。datetime 型の列 dateVisited があります。

NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy/MM/dd HH:mm:ss"]; //this is the sqlite's format
NSDate *stringTime = [NSDate date];
NSString *formattedDateStringTime = [formatter stringFromDate:stringTime];

sqlStr = [NSString stringWithFormat:@"Insert into AnwaltHistory (id,dateVisited) values (%d,'%@')",Id formattedDateStringTime];

NSLog(@"%@",sqlStr);
BOOL Res = [appDelegate InsUpdateDelData: sqlStr];
if (Res)
{
   NSLog(@"The Following instrunction is excuted successfully !");
}
else
{
   NSLog(@"The Following instrunction Failed to execute !");
}

ステートメントは正常に実行されますが、実際にテーブルに行ってチェックすると、無効な日付と表示されます... sqlstrを印刷したので、コンソールからコピーして貼り付け、sqliteに貼り付けて手動で実行すると、完全に正常に実行され、実際の日付....私が間違っているところを誰か教えてもらえますか:S........お願いします

4

3 に答える 3

0

使用しない理由:

"Insert into AnwaltHistory (id,dateVisited) values (%d,datetime())",Id
于 2010-04-01T14:52:29.683 に答える
0

これを試すことができます:

double dateVisited = [[NSDate date] timeIntervalSince1970]; //now
// save dateVisited to your 'dateVisited' field
于 2011-10-29T16:31:46.637 に答える