Conexión SQLServer2000 con java

A ver si me puede proporcionar un ejemplo de conexión a SQLServer 2000 desde java, porque yo uso el driver :
Driver driver=(Driver) Class.forName("JData2_0.sql.$Driver").newInstance()
Y me dice que el driver no se encuentra y no conozco otra manera.
Respuesta
1
Yo no uso SQLServer (Prefiero Mysql) pero por lo que sé la cosa es así:
Los jar que deben estar en el classpath son:
msbase.jar
mssqlserver.jar
msutil.jar
que estan en el directorio Lib del fichero msjdbc.tar
que (si no lo tienes) te lo puedes bajar de http://msdn.microsoft.com/downloads/default.asp?URL=/downloads/sample.asp?url=/MSDN-FILES/027/001/779/msdncompositedoc.xml
Un ejemplo de uso :
import java.sql.*;
/**
* Microsoft SQL Server JDBC test program
*/
public class Test {
public Test() throws Exception {
// Get connection
DriverManager.registerDriver(new
com.microsoft.jdbc.sqlserver.SQLServerDriver());
Connection connection = DriverManager.getConnection(
"jdbc:microsoft:sqlserver://<Host>:1433",<"UID>","<PWD>");
if (connection != null) {
System.out.println();
System.out.println("Successfully connected");
System.out.println();
// Meta data
DatabaseMetaData meta = connection.getMetaData();
System.out.println("\nDriver Information");
System.out.println("Driver Name: "
+ meta.getDriverName());
System.out.println("Driver Version: "
+ meta.getDriverVersion());
System.out.println("\nDatabase Information ");
System.out.println("Database Name: "
+ meta.getDatabaseProductName());
System.out.println("Database Version: "+
meta.getDatabaseProductVersion());
}
} // Test
public static void main (String args[]) throws Exception {
Test test = new Test();
}
}
Como habrás visto el driver se encuentra aquí, com.microsoft.jdbc.sqlserver.SQLServerDriver.
Bueno, espero que te sirva. Ah!, comprender el funcionamiento del classpath es imprescindible para programar en java. Si no te manejas bien con eso y programas en windows échale un ojo a http://developer.java.sun.com/developer/onlineTraining/Programming/BasicJava1/windows.html

5 respuestas más de otros expertos

Respuesta
1
¿Has metido las clases del driver en el Classpath de java?
Cuales son las clases que he de meter en el classpath, tengo c:\j2sdk\lib\dt.jar
y tools.jar y en el path c:\j2sdk\bin
He de poner algo más...
Gracias expert
Digo que tienes que meter ademas de eso el .jar de la base de datos que utilices., en este caso la de SQLSErver.
Respuesta
1
Yo trabajo con oracle y mysql y la conexión es de la forma que usas y efectivamente necesitas los drivers de la base de datos, la de oracle no es un jar, es un zip, classes12.zip, yo para ahorrarme problemas con el classpath lo guardo en un lugar conocido como el el directorio lib de las jdk y así lo encuentra siempre, además si estás trabajando con jbuilder (es mi caso) tienes que añadir al proyecto el nuevo paquete supongo que con otros editores será parecido, ale suerte...
Respuesta
1
Te mando una página donde puedes encontrar un código de ejemplo. Aun así no lo estás creando correctamente. Primero hay que hacer un Class. ForName() del driver sin newInstance(). Eso ya te carga el Driver.
Mirate la página y si tienes alguna duda pregunta.
Se te olvido darme el nombre de la página con el ejemplo.
Gracias
Cierto, perdona ahí te va:
http://javaalmanac.com/egs/java.sql/ConnectSqlServer.html
Respuesta
El problema de que no encuentre el driver se debe a que este no esta en el classpath.
Para añadirlo simplemente debes modificar la variable de entorno CLASSPATH y añadirle el path donde tengas las clases del driver, algo como c:\driver\sql2000 o /dirver/sql2000 si trabajas en unix. Si el driver jdbc lo tienes comprimido en un fichero jar debes indicar también el nombre de este en el path, algo como c:\dirver\sql2000\nombre.jar
Respuesta
-1
Create en el PC de la DDBB un servicio ODBC:
En PANEL DE CONTROL accesos ODBC donde le indicas el path absoluto de la base de datos y un alias "oro" (por ejemplo).
Luego usas:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
DriverManager.getConnection("jdbc:odbc:oro",[usuario],[password]);
Gracias.
Pero yo utilizo este tipo de conexión para Access y no puedo usarla con SQLserver
Tu puedes crear con diferentes alias las conexiones ODBC que quieras.
En cuanto a Java, si encapsulas las conexiones en diferentes clases Java:
MyConexAccess y myConexSQL puedes usar ambas conexiones simultáneamente.
De todos modos si estas usando WebSphere o un servidor Web, coméntamelo por que existe una manera de extraer la conexión que parametrices en el WAS ´como un servidor de datos.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas