Java/Database SQL JDBC/SqlServer
Содержание
Connecting to a SQLServer Database using the NetDirect JDBC driver
import java.sql.Connection;
import java.sql.DriverManager;
public class Main {
public static void main(String[] argv) throws Exception {
String driverName = "com.jnetdirect.jsql.JSQLDriver";
Class.forName(driverName);
String serverName = "127.0.0.1";
String portNumber = "1433";
String mydatabase = serverName + ":" + portNumber;
String url = "jdbc:JSQLConnect://" + mydatabase;
String username = "username";
String password = "password";
Connection connection = DriverManager.getConnection(url, username, password);
}
}
Connect to a database and read from table
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class Main {
public static void main(String[] args) throws Exception {
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
Connection m_Connection = DriverManager.getConnection(
"jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=MyDatabase", "userid", "password");
Statement m_Statement = m_Connection.createStatement();
String query = "SELECT * FROM MyTable";
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));
}
}
}
Creating a SQLServer Table to Store Java Types
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
public class Main {
public static void main(String[] argv) throws Exception {
String driverName = "com.jnetdirect.jsql.JSQLDriver";
Class.forName(driverName);
String serverName = "127.0.0.1";
String portNumber = "1433";
String mydatabase = serverName + ":" + portNumber;
String url = "jdbc:JSQLConnect://" + mydatabase;
String username = "username";
String password = "password";
Connection connection = DriverManager.getConnection(url, username, password);
Statement stmt = connection.createStatement();
// Column Name SQLServer Type Java Type
String sql = "CREATE TABLE sqlserver_all_table("
+ "col_boolean BIT, " // boolean
+ "col_byte TINYINT, " // byte
+ "col_short SMALLINT, " // short
+ "col_int INTEGER, " // int
+ "col_float REAL, " // float
+ "col_double DOUBLE PRECISION, " // double
+ "col_bigdecimal DECIMAL(13,0), " // BigDecimal; can also be NUMERIC(p,s)
+ "col_string VARCHAR(254), " // String
+ "col_date DATETIME, " // Date
+ "col_time DATETIME, " // Time
+ "col_timestamp TIMESTAMP, " // Timestamp
+ "col_characterstream TEXT, " // CharacterStream or AsciiStream (< 2 GBytes)
+ "col_binarystream IMAGE)"; // BinaryStream (< 2 GBytes)
stmt.executeUpdate(sql);
}
}
Load driver for SQL Server
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
public class Main {
public static void main(String[] argv) throws Exception {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection con = DriverManager.getConnection("jdbc:sqlserver://MYSERVER;databaseName=MYDATABASE",
"USERID", "PASSWORD");
CallableStatement proc_stmt = con.prepareCall("{ call generateID(?) }");
proc_stmt.setString(1, "employee");
ResultSet rs = proc_stmt.executeQuery();
if (rs.next()) {
int employeeId = rs.getInt(1);
System.out.println("Generated employeeId: " + employeeId);
} else {
System.out.println("Stored procedure couldn"t generate new Id");
}
}
}