關於java jdbc 連接 SQL server 和 連接 mysql 數據庫是一樣的,爲了方便以後查看,筆者在這裏給出demo。
package com;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.sql.Statement;
public class DB {
private static DB _instance = null;
private static Object lock = new Object();
public static DB get()
{
if ( _instance == null )
{
synchronized (lock)
{
if ( _instance == null )
{
return _instance = new DB();
}
}
}
return _instance;
}
public Connection getConnection()
{
try {
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return null;
}
//加載數據庫引擎,返回給定字符串名的類
String url="jdbc:microsoft:sqlserver://localhost:1053;DatabaseName=FDC";
//test爲你的數據庫的名稱
String user="sa";
String password="1";
Connection conn = null;
try {
conn = DriverManager.getConnection(url,user,password);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return null;
}
return conn;
}
public Statement getSelectStmt(Connection conn)
{
try {
return conn.createStatement();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return null;
}
}
public PreparedStatement getInsertStmt(Connection conn,String table)
{
try {
return conn.prepareStatement("insert into \"" + table + "\" values(?,?,?,?,?,?,?,?,?,?)");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return null;
}
}
public void insert(PreparedStatement stmt,String REC_CARID,String REC_TIME,String REC_LONGITUDE,
String REC_LATITUDE,String REC_ALTITUDE,String REC_SPEED,String REC_CARSTATUS,
String REC_DIRECTION,String REC_GPSSTATUS,String DBTIME)
{
try {
stmt.setString(1, REC_CARID);
stmt.setString(2, REC_TIME);
stmt.setString(3, REC_LONGITUDE);
stmt.setString(4, REC_LATITUDE);
stmt.setString(5, REC_ALTITUDE);
stmt.setString(6, REC_SPEED);
stmt.setString(7, REC_CARSTATUS);
stmt.setString(8, REC_DIRECTION);
stmt.setString(9, REC_GPSSTATUS);
stmt.setString(10, DBTIME);
stmt.addBatch();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void delete(Statement stmt,String table,int line)
{
try {
stmt.executeUpdate("delete top("+line+") from \"" + table + "\"");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}