Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Czy mogę wykonać wiele zapytań oddzielonych średnikami za pomocą MySQL Connector/J?

Używanie ; w zapytaniu dla większości baz danych nie działa, ponieważ zwykle nie jest częścią samej składni instrukcji, ale terminatorem wiersza poleceń lub danych wejściowych skryptu do oddzielnych instrukcji. Linia poleceń lub procesor skryptów widzi średnik jako sygnał, że instrukcja jest kompletna i może zostać wysłana do serwera.

Również w JDBC pojedyncza instrukcja przygotowania (lub wykonania) powinna być tylko jedna rzeczywista instrukcja, więc wielokrotne instrukcje nie są dozwolone i nie ma również potrzeby używania średnika, a w przypadku niektórych (większości?) baz danych średnik nie jest częścią składni instrukcji, jest to po prostu błąd składni mieć jeden w zestawie.

Jeśli chcesz wykonać wiele instrukcji, musisz użyć oddzielnych wykonań. Technicznie rzecz biorąc, MySQL ma opcję obsługi wielu wykonań, które można włączyć za pomocą właściwości połączenia. To zachowanie jest niezgodne ze specyfikacją/API JDBC i sprawia, że ​​kod jest mniej przenośny. Zobacz allowMultiQueries na Nazwy klas sterowników/źródeł danych, Składnia adresu URL i właściwości konfiguracyjne dla Connector/J



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL Porównaj bazy danych

  2. Użyj wyzwalacza, aby zatrzymać wstawianie lub aktualizację

  3. Doctrine 2 i tabela łączy wiele do wielu z dodatkowym polem

  4. Konfigurowanie zdalnego połączenia z bazą danych MySQL

  5. Zachowaj podziały wierszy z TextArea podczas pisania w MySQL