sql >> Databasteknik >  >> RDS >> Mysql

infoga i välj i MySQL med JDBC

Det berodde på fel i SELECT .. uttalande.
Ändrad uttalande är:

INSERT INTO vips( memberId, gotten, expires )  
   SELECT name, NOW(), DATE_ADD( now(), INTERVAL 1 MONTH )
    FROM members WHERE id = ?
  1. Du behöver inte VALUES nyckelord vid inserting med en select .
  2. Du använde fel DATEADD funktionssyntax. Korrekt syntax är Date_add( date_expr_or_col, INTERVAL number unit_on_interval) .

Du kan prova din infogningssats enligt korrigeringen nedan:

INSERT INTO vips( memberId, gotten, expires )  
   SELECT name FROM members
     WHERE id = ?, NOW(), DATE_ADD( now(), INTERVAL 1 MONTH )

Se:

  1. INSERT ... VÄLJ Syntax
  2. DATE_ADD(datum,INTERVAL expr enhet)



  1. Mysql välj distinkt

  2. Betydelse av Välj tabeller optimerade bort i MySQL Explain plan

  3. Infogar miljontals poster från lokal till goDaddy-värd

  4. MySQL Infoga i flera tabeller? (Databasnormalisering?)