sql >> データベース >  >> RDS >> Mysql

mysqlクエリ-挿入データunix_timestamp(now())issue

    timestampを参照することはありません クエリで。 文字列しかありません :

    INSERT INTO `abc` (id, 'timestamp') VALUES ('', UNIX_TIMESTAMP ( NOW () ) )
                           ^^^^^^^^^^^
    

    編集:

    更新されたコードでこれを取得します:

    それがまだ実際のコードではないと仮定して、構文エラーを修正した後、私はあなたの結果を再現することができません。私の知識に基づく推測では、id は自動インクリメントされた整数の主キーです。現在のSQLモードでは、MySQLに''を使用させています。 NULLとして 新しい行を挿入します...しかし、私はこの仮説を実際にテストしていません。

    私の作業コードはこれです:

    CREATE TABLE `abc` (
        `pk` INT(10) NOT NULL AUTO_INCREMENT,
        `id` VARCHAR(10) NULL DEFAULT NULL,
        `timestamp` INT(11) NOT NULL DEFAULT '0',
        PRIMARY KEY (`pk`)
    )
    ENGINE=InnoDB;
    
    INSERT INTO abc (id, timestamp) VALUES ('', UNIX_TIMESTAMP());
    -- Wait a few seconds
    INSERT INTO abc (id, timestamp) VALUES ('', UNIX_TIMESTAMP());
    -- Wait a few seconds
    INSERT INTO abc (id, timestamp) VALUES ('', UNIX_TIMESTAMP());
    
    SELECT timestamp FROM abc WHERE id='';
    

    ...そしてこれを返します:

    +------------+
    | timestamp  |
    +------------+
    | 1342694445 |
    | 1342694448 |
    | 1342694450 |
    +------------+
    3 rows in set (0.00 sec)
    



    1. VS2019でEntityFrameworkをMYSQLに接続する

    2. mysqli_stmt ::num_rows()が間違った値を返す

    3. MySQLは永遠に「データを送信する」。簡単なクエリ、大量のデータ

    4. Oracle-別の名前のテーブルにデータをインポートしますか?