Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Erstellen Sie eine Tabelle in einer SQL-Anweisung mit executeUpdate in Mysql

Dies sollte in Ihrem Fall funktionieren:

statement.executeUpdate("DROP TABLE IF EXISTS  account ");
statement.executeUpdate("CREATE TABLE  account ( "
                     +"accountNum INT( 11 ),"
                     +"dateCreated DATE NOT NULL,"
                     +"accountName TEXT,"
                     +"description TEXT,"
                     +"statusAccount TEXT,"
                     +"sumOfMoney INT( 11 ) NOT NULL DEFAULT  0 )" )  ;

Ursache:Statements können bei jedem Aufruf der execute-Methode nur ein SQL-Statement ausführen.

Wenn Sie zwei oder mehr Anweisungen gleichzeitig ausführen möchten, können Sie dies mit Batch-Jobs tun.
Wie:

statement.addBatch("DROP TABLE IF EXISTS  account ");
statement.addBatch("CREATE TABLE  account ( "
                     +"accountNum INT( 11 ),"
                     +"dateCreated DATE NOT NULL,"
                     +"accountName TEXT,"
                     +"description TEXT,"
                     +"statusAccount TEXT,"
                     +"sumOfMoney INT( 11 ) NOT NULL DEFAULT  0 )" )  ;
statement.executeBatch();