Har problem med en joinad tabell i MS SQL, den fungerar inte när jag överför den till Java. Mkt tacksam för hjälp :)
import java.sql.*;
import sun.jdbc.odbc.JdbcOdbcDriver;
public class Employee{
public static void main(String []args) throws SQLException{
try{
DriverManager.registerDriver(new JdbcOdbcDriver());
}
catch (Exception e){
System.out.println("Kan inte hitta database driver class: " + e);
}
Connection con = DriverManager.getConnection("JDBC:ODBC:MyServer");
Statement stmt = con.createStatement();
String sqlStr = "SELECT e.\"First Name\", "+ "e.\"Last Name\", "+ "\"Relative Code\", "+ "r.\"First Name\", "+ " r.\"Last Name\" "+
"FROM \"CRONUS Sverige AB$Employee\" e, "+ " \"CRONUS Sverige AB$Employee Relative\" r "+
"WHERE e.No_ = r.\"Employee No_\"";
ResultSet rset = stmt.executeQuery(sqlStr); // returnerar resultset
while (rset.next ()) {
System.out.println (rset.getString (1) + " " +
rset.getString (2) + " " +
rset.getString (3) + " " +
rset.getString (4) + " " +
rset.getString (5) + " " +
rset.getString (6) + " " +
rset.getString (7) + " " +
rset.getString (8) + " " +
rset.getString (9) + " " +
rset.getString (10) + " " +
rset.getString (11) + " "+
rset.getString (12) + " ");
}
}
}
LarsGMedlem sedan dec. 200012 465 inlägg Vad får du för fel? Kan du skriva ut värdet av sqlStr?
Nej, det går inte att kompilera :(
GeinMedlem sedan sep. 20004 849 inlägg
SandraLund skrev:
Nej, det går inte att kompilera :(
Utan att analysera din kod så skulle det nog underlätta om du berättade vilket kompileringsfel du får. :)
Någon ställde närapå exakt samma fråga för en vecka sen. Lösningen då var att sammanfoga strängarna med en StringBuilder.
Se: http://www.webforum.nu/showthread.php?t=177466
yohpopsMedlem sedan feb. 20011 102 inlägg Du har inte 13 fält utan 5.
getString är väl noll-baserat?
String sqlStr = "SELECT e.\"First Name\", e.\"Last Name\", \"Relative Code\", r.\"First Name\", r.\"Last Name\" FROM \"CRONUS Sverige AB$Employee\" e, \"CRONUS Sverige AB$Employee Relative\" r WHERE e.No_ = r.\"Employee No_\"";
yohpops skrev:
Du har inte 13 fält utan 5.
getString är väl noll-baserat?
Nej, den startar på index 1. Försök att hämta felaktiga kolumnindex ger heller inte kompileringsfel.
Berätta som sagt vad det är för kompileringsfel du får, det underlättar ju enormt. Men du får antagligen problem med din laddning av JDBC-drivaren, använd Class.forName istället, det kommer att explicit ladda drivrutinen och kommer sen i sin tur att anropa registerDriver.
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
} catch(...)