sql >> Database >  >> RDS >> Mysql

mysql-query - gegevens invoegen unix_timestamp (nu ( )) probleem

Je verwijst nooit naar de timestamp kolom in uw vraag. Je hebt alleen een tekenreeks :

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

Bewerken:

Ik krijg dit met je bijgewerkte code:

Ervan uitgaande dat het niet nog steeds de eigenlijke code is en na het oplossen van de syntaxisfout, kan ik uw resultaten niet reproduceren. Mijn weloverwogen gok is dat id is een auto-verhoogde primaire sleutel met een geheel getal, uw huidige SQL-modus zorgt ervoor dat MySQL '' neemt als NULL en een nieuwe rij invoegen... Maar ik heb deze hypothese niet echt getest.

Mijn werkende code is deze:

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='';

... en geeft dit terug:

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



  1. Aangrenzend blok met records selecteren in mysql

  2. Unieke beperking met voorwaarden in MYSQL

  3. Oracle-fout bij het maken van weergave - ORA-01720

  4. Is er enig voordeel/nadeel van het opslaan van veldwaarde als een JSON-array in plaats van het creëren van een nieuwe tabel en een-op-veel-relatie?