Ajuda com Conexão SQL Server

olá amigos, estou tentando fazer minha primeira conexão com um banco sql server e um select simples, porém não estou conseguindo, eis o meu código se alguém puder analisar e me ajudar me dizendo onde estou errando…

import java.sql.*;
import java.util.*;

     
public class ConDBSQL {

	public static void main(String args[]) {
		  
		// Criando as variáveis de conexão e de statement
Connection con;
		Statement stmt;
            String query = "select nmfunc from apfunl0";
	
		// Verificando se o driver JDBC está instalado e pode ser utilizado
		try 
{
					Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
		} 
catch(java.lang.ClassNotFoundException e) 
{
			System.err.print("ClassNotFoundException: "); 
			System.err.println(e.getMessage());
		}

		try 
{
         // Abrindo a conexão com o servidor PSB01, login  e  senha
					con = java.sql.DriverManager.getConnection("jdbc:microsoft:sqlserver://172.17.0.37:1433;databaseName=dbpsbadm_teste;user=usrcor01;password=usrcor01");                                                

			stmt = con.createStatement();							
			// Criando a instrução a partir do SELECT que  está dentro da variável query
		ResultSet rs = stmt.executeQuery(query);
	
            	            System.out.println("Lista de linhas da tabela Funcionarios:");
		
		// Fazendo um loop para mostrar tudo o que foi retornado do banco
	while (rs.next()) 
{

		// Obtendo o campo name em um string
                                String s = rs.getString("nmfunc");
		
                                System.out.println(s);
			}
	
		//Fechamdno a instrução e a conexão
			stmt.close();
			con.close();
	
		} 
catch(SQLException ex) 
{
			System.err.println("SQLException: " + ex.getMessage());
	}
	}
}

eis a saída do prompt:

C:\Sidnei\Develop\Java\Treinamento>java ConDBSQL.class
Exception in thread "main" java.lang.NoClassDefFoundError: ConDBSQL/class
Caused by: java.lang.ClassNotFoundException: ConDBSQL.class
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)

Obrigado!
:smiley:

[color=blue]Qual o erro q está causando ?[/color]

caramba, isso que é rapidez, eu tava editando o post… o erro acima…

[color=blue]a ta…

Não sei como está atualmente… mas parece q os drivers da Microsoft está com alguns bugs… parece q o SourceForget tem um driver específico…

Não consegui resolver o mesmo problema, por isso, abandonei o SQL Server…

Sds…[/color]

entendi, mas aqui não tenho como falar pro chefe abandonware o sql server, rsrsrs, você sabe o nome do driver ?
valeu

Tente rodar sem o .class no final, no caso: java ConDBSQL

:smiley:

eduwm, olha a saída:

C:\Sidnei\Develop\Java\Treinamento>java ConDBSQL
ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver
SQLException: No suitable driver found for jdbc:microsoft:sqlserver://172.17.0.3
7:1433;databaseName=dbpsbadm_teste;user=usrcor01;password=****

[color=blue]o nome do driver do SourceForge é o jTDS… mas eu acabei de olhar no site da Microsoft, lançaram agora recente a versão mais nova do dirver deles… contaram q tinham melhorias…

Ve o que acha…

Sds[/color]

Ah bom, é que o que você tinha postado lá em cima era erro de .class mesmo, mas esse…

é algum problema com o driver… que zica , é a versão mais nova da MS, baixei lá, coloquei numa pasta c:\java e coloquei esse caminho no classpath, não é isso ?

[color=blue]Bom…

até aonde eu sei… vc deve jogar os .jar’s dentro do classpath de teu projeto…

mas se vc for um pouco mais além, vc pode usar o Hibernate… acho q lhe ajudaria bastante…

Não sei se ajudei…

Sds…[/color]

hum… cara, to começando… não sei bem ainda nem o básico, vou esperar manjar um pouquinho mais pra ir pra hibernate mas agradeço a sugestão… quando você diz os .jar, sãos do driver né? … eu fiz isso…
:frowning:

isso mesmo… quando vc baixou o driver no site da microsoft, parece q veio compactado…

se vc for descompactar, vc abrirá a pasta descompactada q verás os .jar dentro… é só ctrl + c e ctrl + v e sapecar eles dentro de teu classpath… :smiley:

Qualquer coisa, estamos ae…

Sds…

fiz tudo isso, e nada de novo:

[code]

C:\Sidnei\Develop\Java\Treinamento>java ConDBSQL.class
Exception in thread “main” java.lang.NoClassDefFoundError: ConDBSQL/class
Caused by: java.lang.ClassNotFoundException: ConDBSQL.class
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)

C:\Sidnei\Develop\Java\Treinamento>[/code]

ou eu to fzd algo errado ou tá zuado esse drv ainda

[color=blue]é… tem jeito não… ajoelha e chora… kkkkkkkk

baixa o jTDS e faz o mesmo processo…

agora, se esse driver der zica novamente… ae meu amigo… ou vc troca de Banco, ou se joga pela janela… huahuahauhauhau…

Zuera…

Faz o teste…

Sds…[/color]

pior que é terreo… não dá nem pra fz cocegas kkkkkkk

então fiz o mesmo processo
mas preciso alterar as linhas do driver, fiz essa:

mas e essa, como fica :

valeu pela ajuda!

Bem amiguinho, eu em meu aprendizado te passo o q fiz…

Baixei o arquivo JDBC SQL 2000.exe no site da Microsoft e instalei ele…
Aponte sua aplica;'ao para o caminho da instalacao onde estao 3 arquivos jar, pasta lib.

Para o Banco use…
create database exemplo

use exemplo

drop table tbl_exemplo

create table tbl_teste (Nome VARCHAR(20), Idade INT)

insert into tbl_teste (Nome, Idade) values (‘Eu’, 21)

select * from tbl_teste

e segue os codigos…

[code]
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

class ConexaoComSQL2000 {

public static void main(String[] args) {

	try {
		Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
		Connection conn = DriverManager.getConnection(
				"jdbc:microsoft:sqlserver://192.168.2.141:1433;user=sa;password=sa;DatabaseName=Exemplo");

		//System.out.println("Conectado ao Banco de Dados!");

		Statement stm = conn.createStatement();
		ResultSet rs = stm
				.executeQuery("SELECT Nome, Idade FROM tbl_teste order by Nome");

		System.out.printf("%-20s%s\n", "Nome", "Idade");
		System.out.printf("%-20s%s\n", "----", "-----");

		
		
		while (rs.next()) {
			String nome = rs.getString(1);
			String idade = rs.getString(2);

			System.out.printf("%-20s%s\n", nome, idade);

		}
		rs.close();

	}

	catch (Exception e) {
		System.out.println(e);
	}

}

}[/code]

Abracos

[color=blue] private static final String url = “jdbc:jtds:sqlserver://SERVIDOR/NOMEBASE”;
private static final String driver = “net.sourceforge.jtds.jdbc.Driver”;
private static final String usuario = “user”;
private static final String senha = “password”; [/color]

guilherme, eu já fiz isso… mas não deu certo

Weslley… coloquei assim:

e:

na mesma…

trágico…

continua:

C:\Sidnei\Develop\Java\Treinamento>java ConDBSQL.class Exception in thread "main" java.lang.NoClassDefFoundError: ConDBSQL/class Caused by: java.lang.ClassNotFoundException: ConDBSQL.class at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClassInternal(Unknown Source)

alguém uma luz… por favorrrrrr