sql >> Database teknologi >  >> RDS >> Mysql

Kan jeg udføre flere forespørgsler adskilt af semikolon med MySQL Connector/J?

Brug af ; i en forespørgsel for de fleste databaser virker ikke, da den normalt ikke er en del af selve sætningssyntaksen, men en terminator for kommandolinje eller script-input til separate sætninger. Kommandolinjen eller scriptprocessoren ser et semikolon som signalet om, at sætningen er komplet og kan sendes til serveren.

Også i JDBC bør en enkelt sætning forberede (eller udføre) kun være én faktisk sætning, så flere sætninger er ikke tilladt, og der er derfor heller ikke behov for et semikolon, og som for nogle (de fleste?) databaser er semikolon ikke en del af sætningssyntaksen, det er simpelthen en syntaksfejl at have en inkluderet.

Hvis du vil udføre flere sætninger, skal du bruge separate eksekveringer. Teknisk set har MySQL en mulighed for at understøtte flere udførelser, som kan aktiveres af en forbindelsesegenskab. Denne adfærd er ikke kompatibel med JDBC-specifikationen/API og gør din kode mindre bærbar. Se allowMultiQueriesDriver-/datakildeklassenavne, URL-syntaks og konfigurationsegenskaber for Connector/J



  1. Hvordan kan jeg ændre MariaDB til MySQL i XAMPP?

  2. En præ-udfyldt database virker ikke ved API 28, og der er ingen sådan tabelundtagelse

  3. Top-N-forespørgsler og sideinddeling i Oracle

  4. MS-Access Recordset og klassemodul