Я хочу, чтобы иметь возможность вызвать хранимую процедуру из базы данных Microsoft SQL Server и отобразить результаты на консоли (для начала). У кого-то я хочу поместить все эти данные в JTable или в Интернет, но сначала я буду рад, если я смогу отобразить его на консоли.
Я думаю, что проблема в том, что я не могу (или, вероятно, не знаю, как) установить соединение с базой данных.
Как подключиться к базе данных Microsoft SQL Server? (Я видел это раньше, и я думаю, что это было 4 строки кода. Я хочу, чтобы это работало на моей машине, поэтому я могу начать тестирование некоторых хранимых процедур.
Код Java:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class SQLServerTest {
private ResultSet[] yourResult;
private void showSuppliers(ResultSet[] rs) throws SQLException {
Connection con =
DriverManager.getConnection("jdbc:default:connection");
Statement stmt = null;
String query = "select * from PeopleOne";
stmt = con.createStatement();
rs[0] = stmt.executeQuery(query);
}
private void ShowResultsToConsole(ResultSet[] rs) throws SQLException {
for (ResultSet r : rs) {
int c = 0;
r.getString(c);
}
}
public static void main(String[] p) throws SQLException {
SQLServerTest temp = new SQLServerTest();
temp.showSuppliers(temp.yourResult);
temp.ShowResultsToConsole(temp.yourResult);
}
}
Попробуйте что-то вроде этого.
public class DbTest {
static final String DRIVER_CLASS = "net.sourceforge.jtds.jdbc.Driver";
static final String DB_URL = "jdbc:jtds:sqlserver://127.0.0.1:1433/mydb";
static final String DB_USER = "username";
static final String DB_PASS = "password";
public static void testQuery() throws ClassNotFoundException, SQLException {
Class.forName(DRIVER_CLASS);
Connection jdbcConnection = DriverManager.getConnection(DB_URL,
DB_USER, DB_PASS);
ResultSet rs = jdbcConnection.createStatement().executeQuery(
"SELECT TOP 10 field_name FROM table_name");
while (rs.next()) {
System.out.println(rs.getString("field_name"));
}
}
public static void main(String args[]) throws Exception {
testQuery();
}
Предполагается, что у вас есть JTDS JDBC Driver в вашем пути к классам.
Если вам нужно использовать драйвер JDBC Microsoft, вы должны иметь его в своем пути к классам и изменить следующее в коде.
static final String DRIVER_CLASS = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
static final String DB_URL = "jdbc:sqlserver://localhost:1433;databaseName=mydb";
Вы должны всегда правильно закрывать свои ресурсы, как описано в Java/JDBC: лучший шаблон проектирования для закрытия соединения с базой данных при возникновении исключения