---
title: "Övergång från MS SQL till Java"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/181672-övergång-från-ms-sql-till-java"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "SandraLund"
published: "2009-12-16T16:42:28.000Z"
updated: "2009-12-17T08:36:54.000Z"
replies: 6
views: 931
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/databaser-sql/181672-övergång-från-ms-sql-till-java"
---

# Övergång från MS SQL till Java

## #1 — SandraLund, 2009-12-16T16:42Z

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) + " ");
}
}
  
}

Permalänk: https://www.webforum.nu/p/181672

## #2 — LarsG, 2009-12-16T17:09Z

Vad får du för fel? Kan du skriva ut värdet av sqlStr?

Permalänk: https://www.webforum.nu/p/2217571

## #3 — SandraLund, 2009-12-16T19:13Z

Nej, det går inte att kompilera :(

Permalänk: https://www.webforum.nu/p/2217575

## #4 — Gein, 2009-12-16T20:39Z

> **[SandraLund skrev:](https://www.webforum.nu/p/1491692)**
>
> 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. :)

Permalänk: https://www.webforum.nu/p/2217580

## #5 — nitro2k01, 2009-12-16T22:00Z

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>

Permalänk: https://www.webforum.nu/p/2217583

## #6 — yohpops, 2009-12-17T05:54Z

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_\"";
```

Permalänk: https://www.webforum.nu/p/2217592

## #7 — sgtpepper, 2009-12-17T08:36Z

> **[yohpops skrev:](https://www.webforum.nu/p/1491713)**
>
> 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(...)
```

Permalänk: https://www.webforum.nu/p/2217599

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/181672-övergång-från-ms-sql-till-java
