sql >> Databasteknik >  >> RDS >> Mysql

Vad är skillnaden mellan paketet com.mysql.jdbc.PreparedStatement; och java.sql.PreparedStatement?

Eftersom båda klasserna fanns i din kompileringsväg och din IDE försökte vara till hjälp.

Eftersom prepareStatement() är specificeras för att returnera java.sql.PreparedStatement , inte com.mysql.jdbc.PreparedStatement .

java.sql.PreparedStatement är ett gränssnitt och du borde använda detta hela tiden. MySQL-en är en konkret implementering och du bör inte koppla din JDBC-kod till den MySQL-specifika implementeringen. Annars skulle du behöva göra en hel del ändringar i din kod om du någonsin vill byta DB-servern (och därmed även JDBC-drivrutinen) till en annan leverantör som PostgreSQL. Om du använder standard JDBC-gränssnitt från java.sql paket hela tiden, allt du behöver ändra är bara JDBC URL och kanske även användarnamn och lösenord och några DB-specifika SQL-satser.

Se även:




  1. CodeIgniter - hur man postar värde från form som NULL istället för 0

  2. Konvertera MySQL-skript till SQL Server

  3. Konfigurera Databas Mail i SQL Server

  4. Ta bort onödig Woocommerce-bildmeta