Witam!
Jak już w innym poście pisałem - jestem zielony z Javy więc pytanie które zadam do ambitnych nie należy. Nie znalazłem nic na forum w interesującym mnie temacie więc piszę.
Napisałem takie coś:
import java.sql.*;
public class sqlReplica {
public static void main (String[] args)
{
Connection mysql = null;
String myuser = "root";
String mypass = "";
String myurl = "jdbc:mysql://localhost:3306/test";
try
{
Class.forName("com.mysql.jdbc.Driver").newInstance();
mysql = DriverManager.getConnection (myurl, myuser, mypass);
System.out.println ("Połączenie z bazą nawiązane");
}
catch (Exception e)
{
System.err.println ("Nie mogę się połączyć z bazą: " + e);
}
try
{
String myQuery = "INSERT INTO tabela (name, company, country) VALUES ('ąęółżźśćń', 'ęóął', 'ŚĄŁÓĘŹĆŃ')";
Statement myStmt = mysql.createStatement();
int myrs = myStmt.executeUpdate(myQuery);
System.out.println ("Rekordy wprowadzone: " + myrs);
}
catch (Exception e)
{
System.err.println ("Nie mogę wykonać zapytania: " + ". "+ e);
}
finally
{
if (mysql != null)
{
try
{
mysql.close();
System.out.println("Połączenie z bazą zakończone");
}
catch (Exception e) {
System.err.println ("Błąd: " + e);
}
}
}
}
}
no i w zasadzie działa, poza jednym szczegółem: wywalają się polskie znaki (w bazie).
Plik z kodem Javy ma kodowanie utf-8, baza też, tabela i pola w bazie także. Serwer obsługuje UTF-8 (PHP nie robi problemów). Używam Eclipse'a v3.2.1 pod Windowsem XP. W czym tkwi problem?