package database;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class Conexao {
public Conexao() {
try
{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
Connection m_Connection = DriverManager.getConnection(
"jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=master", "maciel", "123");
Statement m_Statement = m_Connection.createStatement();
String query = "select * from [dbo].[spt_monitor]";
ResultSet m_ResultSet = m_Statement.executeQuery(query);
while (m_ResultSet.next()) {
System.out.println(m_ResultSet.getString(1) + ", " + m_ResultSet.getString(2) + ", "
+ m_ResultSet.getString(3));
}
}
catch(SQLException sqle)
{
System.out.print(sqle.getMessage());
System.out.print("Sql error");
}catch(ClassNotFoundException cnfe){
System.out.print(cnfe.getMessage());
System.out.print("class not found error");
}
}
}
saida: com.microsoft.jdbc.sqlserver.SQLServerDriverclass not found error
adicionei no eclipse o driver mssql-jdbc-8.2.2.jre13.jar
mas não consegue encontrar a classe
encontrei um jeito diferente no exemplo do site da microsoft agora o problema é esse:
com.microsoft.sqlserver.jdbc.SQLServerException: Falha na conexão TCP/IP com o host localhost, porta 1433. Erro: “Connect timed out. Verifique as propriedades da conexão. Verifique se uma instância do SQL Server está sendo executada no host e se está aceitando conexões TCP/IP na porta. Verifique se as conexões TCP na porta não foram bloqueadas por um firewall.”.
package erp.sistema.main;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.awt.Frame;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
import database.Conexao;
import erp.arquitetura.gui.Msg;
public class Aplicacao {
public static void main(String[] args) {
String connectionUrl = "jdbc:sqlserver://localhost:1434;databaseName=master;user=vpmaciel;password=tecnos2125a";
try (Connection con = DriverManager.getConnection(connectionUrl); Statement stmt = con.createStatement();) {
String SQL = "SELECT TOP 10 * FROM [dbo].[MSreplication_options]";
ResultSet rs = stmt.executeQuery(SQL);
// Iterate through the data in the result set and display it.
while (rs.next()) {
System.out.println(rs.getString("optname") + " " + rs.getString("value"));
}
}
// Handle any errors that may have occurred.
catch (SQLException e) {
e.printStackTrace();
}
}
}
Resolvido porta padrão no meu pc era a 1434