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

Jaka jest różnica między pakietem com.mysql.jdbc.PreparedStatement; i java.sql.Przygotowane oświadczenie?

Ponieważ obie klasy były obecne w Twojej ścieżce klas w czasie kompilacji, a Twoje IDE próbowało być pomocne.

Ponieważ prepareStatement() to określone aby zwrócić java.sql.PreparedStatement , a nie com.mysql.jdbc.PreparedStatement .

java.sql.PreparedStatement to interfejs i powinieneś używać tego przez cały czas. MySQL to konkretna implementacja i nie powinieneś ściśle łączyć swojego kodu JDBC z implementacją specyficzną dla MySQL. W przeciwnym razie będziesz musiał dokonać wielu zmian w swoim kodzie, jeśli kiedykolwiek będziesz chciał przełączyć serwer DB (a tym samym także sterownik JDBC) na innego dostawcę, takiego jak PostgreSQL. Jeśli używasz standardowych interfejsów JDBC z java.sql cały czas pakiet, wszystko, co musisz zmienić, to tylko adres URL JDBC, a może także nazwa użytkownika i hasło oraz niektóre instrukcje SQL specyficzne dla bazy danych.

Zobacz też:




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. zapytanie sql do pobrania rekordów z następnych 30 dni

  2. Lista użytkowników PHP z bazy danych SQL w tabeli

  3. Jak mogę ograniczyć użytkownika MySQL do określonych tabel?

  4. MySQL — dołączanie na podstawie daty

  5. Błąd serializacji:podczas próby uzyskania blokady znaleziono zakleszczenie