java对sql_server的操作

java可以对sql server进行各种操作,需要一个sqljdbc4.jar的外部jar包,可以从网上下载得到。

首先需要连接数据库:

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");       
Connection con = DriverManager.getConnection(thUrl, thLoginName, thPassWord);

其中,thUrl——jdbc:sqlserver://127.0.0.1(数据库所在主机的ip地址):1433(访问端口);databaseName=xxxx(数据库名)

   thLoginName——登录名, thPassWord——登录密码

连接成功后,就可以对数据库进行各种操作了。

一、读取数据库某个表中的字段数据

Statement stmt=con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
ResultSet rsst = stmt.executeQuery("select * from dbo.signal");  //select后面*表示所有字段,也可以指定具体的字段
while(rsst.next()) 
{
String  val1 = rsst.getString(1);

int val2 = rsst.getInt(2);

}

rsst.close();

stmt.close();


二、更新数据库某个表中的字段数据

Statement stmt=con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
stmt.executeUpdate("update dbo.signal set value=2 where id=1"); //如果后面不跟where条件,则更新所有列的value字段

stmt.close();


三、插入数据到数据库某个表中

String sql = "insert into dbo.signal values(?,?,?) ";  
PreparedStatement pst = conTmp.prepareStatement(sql,Statement.RETURN_GENERATED_KEYS);  
pst.setInt(1, 2222);  
pst.setInt(2, 6); 
pst.setString(3, "i love you");
pst.executeUpdate();  
pst.close();  

//还可以批量插入,这里暂不总结,自己百度吧


四、删除某表中的某列数据

Statement stmt=conTmp.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
String sql = "delete from dbo.signal where id=2222";  
stmt.executeUpdate(sql);
stmt.close(); 

//

truncate table dbo.signal;
删除整表数据,truncate属于DDL,删除后,数据无法回滚,insert,update,delete属于DML,可以回滚操作
来源:http://m.blog.csdn.net/blog/wcy6340/38580467

你可能感兴趣的:(java,sql,server,数据)