问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java连接SQL数据库

发布网友 发布时间:2022-04-23 02:41

我来回答

9个回答

热心网友 时间:2022-04-07 19:00

import java.sql.ResultSet; //都是导入一些下面需要用到的类
String ConnStr="jdbc:microsoft:sqlserver://WINJUE:1433;DatabaseName=library";//jdbc连接数据库url

public sqlServer() {
try {
Class.forName(DBDriver).newInstance(); //加载SQLServer驱动程序,DBDriver是你上面的代码;
conn=DriverManager.getConnection(ConnStr,"sa","sa"); //和数据库建立连接,ConnStr里面的://WINJUE:1433;DatabaseName=library 分别是主机地址:端口号;你自己建的数据库(database)
}
catch(SQLException e) { //捕获SQL异常
System.out.println(e.getMessage()); //要是出现异常,捕获到后,这句代码会把异常的信息(出错的原因之类的)打印出来。
}
catch(Exception e) { //捕获异常,这个是总的,所以不能和上面的顺序颠倒,先小到大,我连ORACLE和MYSQL,这个我通常不要,只须捕获SQL异常就OL
System.out.println(e.getMessage());
}
}

public Connection getConn(){ //获取连接方法
return conn;
}

public void insert(String sql) {//增删改
try {
Statement stm=conn.createStatement(); 调用conn下的方法,创建Statement对象
stm.executeUpdate(sql);//调用Statement下的方法执行SQL语句
System.out.println("操作成功");
}
catch(Exception e){
System.out.println(e.getMessage()); //如上
}
}

public ResultSet query(String sql){ //查询
try{
Statement stm=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
rs=stm.executeQuery(sql); //如上
}
catch(Exception e){
System.out.println(e.getMessage());
}
return rs;
}

public static void main(String args[]){

sqlServer conn=new sqlServer(); //创建sqlServer,就是你上面的类,以便调用里面的方法
ResultSet rs=conn.query("select * from Orders"); //调用query方法,执行SQL语句后,把结果保存到结果集里
//conn.insert("delete from BookInfo where BookName =" +"\'悟空传\'");
//conn.insert("insert into BookInfo (BookID,BookName,Author,KeyWord) values (14445678,'悟空传','今何在','孙悟空')");

try{

while(rs.next()){ //循环,判断结果集里的记录,一条条往下走,是否还有下一条记录,若是返回真,继续走
System.out.print(rs.getString("OrderID"));
//System.out.print(rs.getString("U_age"));
}
rs.close() ; //关闭结果集
}
catch (Exception e){
System.out.println(e.getMessage());
}

}

}

注:
TYPE_FORWARD_ONLY:缺省类型。只允许向前访问一次,并且不会受到其他用户对该数据库所作更改的影响。
TYPE_SCROLL_INSENSITIVE:允许在列表中向前或向后移动,甚至能进行特定定位,例如移至列表中的第四个记录或从当前位置向后移动两个记录。不会受到其他用户对该数据库所作更改的影响。
TYPE_SCROLL_SENSITIVE:象 TYPE_SCROLL_INSENSITIVE 相同,允许在记录中定位。这种类型受到其他用户所作更改的影响。如果用户在执行完查询之后删除一个记录,那个记录将从 ResultSet 中消失。类似的,对数据值的更改也将反映在 ResultSet 中。

热心网友 时间:2022-04-07 20:18

本文将介绍使用java连接sqlserver数据库


工具/材料

myeclipse 、 SqlServer数据库


方法:

1、要向连接数据库,首先应该保证数据库服务打开

2、数据库服务打开之后就可以在环境中编写连接代码了。如图:


连接数据库就是这两个步骤:1)加载驱动、2)创建连接。

注意在导包是导入的java.sql下的。

接下来直接运行一下就可以测试是否连接成功了

热心网友 时间:2022-04-07 21:53

//你的大概的都给加了注释

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.ResultSet;

/**
* @author Administrator
*
*/
public class sqlServer {
//驱动 不需要改
String DBDriver="com.microsoft.jdbc.sqlserver.SQLServerDriver";
//连接路径 library 数据库名字 你的就改成自己的
String ConnStr="jdbc:microsoft:sqlserver://WINJUE:1433;DatabaseName=library";

ResultSet rs=null;

private Connection conn;
///////////////////////////////////建立连接//////////////////////////////////////////////////////////////////
public sqlServer() {
try {
Class.forName(DBDriver).newInstance();
// sa sa SQL SERVER用户名 密码
conn=DriverManager.getConnection(ConnStr,"sa","sa");
}
catch(SQLException e) {
System.out.println(e.getMessage());
}
catch(Exception e) {
System.out.println(e.getMessage());
}
}

public Connection getConn(){ //获取连接方法
return conn;
}

//输入 sql 语句
public void insert(String sql) {//增删改
try {
Statement stm=conn.createStatement();
stm.executeUpdate(sql);
System.out.println("操作成功");
}
catch(Exception e){
System.out.println(e.getMessage());
}
}

public ResultSet query(String sql){ //查询
try{
Statement stm=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
rs=stm.executeQuery(sql);
}
catch(Exception e){
System.out.println(e.getMessage());
}
return rs;
}

public static void main(String args[]){

sqlServer conn=new sqlServer();
ResultSet rs=conn.query("select * from Orders"); //查询 Orders 表
//conn.insert("delete from BookInfo where BookName =" +"\'悟空传\'");
//conn.insert("insert into BookInfo (BookID,BookName,Author,KeyWord) values (14445678,'悟空传','今何在','孙悟空')");

try{

while(rs.next()){
System.out.print(rs.getString("OrderID"));
//System.out.print(rs.getString("U_age"));
}
rs.close() ;
}
catch (Exception e){
System.out.println(e.getMessage());
}

}

}

//下面的是我给你写个。比你用的清楚点。

package sql;

import java.sql.Connection;
import java.sql.DriverManager;

/**
* @author muren
* 获取SQL SERVER 连接的帮助类
*/
public class DBClass {
//连接
private Connection conn=null;
//驱动
private String drive="com.microsoft.jdbc.sqlserver.SQLServerDriver";
//连接路径
private String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=muren";
//SQL SERVER用户名
private String sqlUser="sa";
//密码
private String sqlPwd="";

public DBClass(){

}

/** 获取SQL SERVER 连接
* @return 连接
*/
public Connection getConn(){
try {
//加载SQL SERVER驱动
Class.forName(drive);
//获取连接
conn=DriverManager.getConnection(url,sqlUser,sqlPwd);
} catch (Exception e) {
e.printStackTrace();
}
return conn;
}

/**
* 关闭连接
*/
public void Close(){
if(this.conn != null)
try {
this.conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}

}

//-----------------------------------------
//package sql;

import java.sql.*;
import java.util.Hashtable;
import java.util.Vector;

/**
* @author muren
* SQL SERVER 操作类
*/
public class DBContr {
private Statement st=null;
private ResultSet rs=null;
DBClass db=null;

public DBContr(){
}

/** 执行SQL语句 (增加,修改,删除)
* @param sql sql语句
* @return 影响行数 修改是否成功 大于0就成功
*/
public int insert(String sql){
db=new DBClass();
int result=0;
try {
st=db.getConn().createStatement();
result=st.executeUpdate(sql);
} catch (Exception e) {
e.printStackTrace();
}finally{
db.Close();
}
return result;
}

/**根据传递的userinfo SQL 语句执行
* @param sql SQL 语句 //select * from userInfo where id =1
* @return
*/
public Vector ExecQutry(String sql){
db=new DBClass();
Vector vt=new Vector();
try {
st=db.getConn().createStatement();
rs=st.executeQuery(sql);
while(rs.next()){
UserInfoBean ub=new UserInfoBean();
ub.setId(rs.getInt("id"));
ub.setName(rs.getString("name"));
ub.setPwd(rs.getString("pwd"));
vt.add(ub);
}
} catch (Exception e) {
e.printStackTrace();
}finally{
db.Close();
}
return vt;
}

}

//----------------------------------------
//package sql;

/**用户信息
* @author muren
*
*/
public class UserInfoBean {
private int id=0;
private String name="";
private String pwd="";

public int getId() {
return id;
}

public void setId(int id) {
this.id = id;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}
public String getPwd() {
return pwd;
}

public void setPwd(String pwd) {
this.pwd = pwd;
}

}

热心网友 时间:2022-04-07 23:44

package com.jpioneer.util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.ResultSet;

/**
* @author Administrator
*
*/
public class SQLServer {
//sqlserver的驱动程序,由3个包组成,要是没有的话到网上下一个。
String DBDriver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
//连接的url,jdbc:microsoft:sqlserver://---前面的是连接协议,子协议,WINJUE---计算机名称、或者是IP,DatabaseName=library---数据库名称
String ConnStr = "jdbc:microsoft:sqlserver://WINJUE:1433;DatabaseName=library";

ResultSet rs = null;

private Connection conn;

///////////////////////////////////建立连接/////////////////////////////////////
// /////////////////////////////
public SQLServer() {
try {
//加载驱动程序
Class.forName(DBDriver).newInstance();
//利用驱动管理程序得到数据库的连接
conn = DriverManager.getConnection(ConnStr, "sa", "sa");
} catch (SQLException e) {
System.out.println(e.getMessage());
} catch (Exception e) {
System.out.println(e.getMessage());
}
}

public Connection getConn() { // 获取连接方法
return conn;
}

/**
* @param sql 要执行的添加sql语句如:insert into users(userName,password) values('userName1','123')
*/
public void insert(String sql) {// 增删改

try {
Statement stm = conn.createStatement();
stm.executeUpdate(sql);
System.out.println("操作成功");
} catch (Exception e) {
System.out.println(e.getMessage());
}
}

/**
* @param sql 要查询的sql语句
* @return 返回查询的结果集
*/
public ResultSet query(String sql) { // 查询

try {
//ResultSet.TYPE_SCROLL_SENSITIVE-------允许对得到的结果集进行指针的跳跃
//ResultSet.CONCUR_UPDATABLE-----运行行更新
Statement stm = conn
.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE);
rs = stm.executeQuery(sql);
} catch (Exception e) {
System.out.println(e.getMessage());
}
return rs;
}

public static void main(String args[]) {

SQLServer conn = new SQLServer();
//得到Orders表中的所有结果
ResultSet rs = conn.query("select * from Orders");
// conn.insert("delete from BookInfo where BookName =" +"\'悟空传\'"); // 删除书名为悟空传的所有的书
// conn.insert(
// "insert into BookInfo (BookID,BookName,Author,KeyWord) values (14445678,'悟空传','今何在','孙悟空')"
// );//添加图书信息其中包括BookID,BookName,Author,KeyWord这么几列的值

try {

while (rs.next()) {
//打印出orders表中的所有的订单ID
System.out.print(rs.getString("OrderID"));
// System.out.print(rs.getString("U_age"));
}
rs.close();
} catch (Exception e) {
System.out.println(e.getMessage());
}

}

}

热心网友 时间:2022-04-08 01:52

这个是JAVA直连得驱动呀
你去买本书看看不知道你代码拿来来得!!
public static void main(String args[]){
这个里面sqlServer conn=new sqlServer(); //获得数据库连接
ResultSet rs=conn.query("select * from Orders"); 这个用一个结果集查询Orders里面得所有
while(rs.next()){
System.out.print(rs.getString("OrderID")); //打印出这个OrderID得内容?
}
顺便问你下你自学还是有老师教,改好好看书了

热心网友 时间:2022-04-08 04:17

你的数据库连接太麻烦了,应该就写连接数据库的代码啊,
创建 DBConnection.java

package Models;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class ConnectionManager {

private static final String DRIVER_CLASS="com.microsoft.jdbc.sqlserver.SQLServerDriver";
private static final String DATABASE_URL="jdbc:microsoft:sqlserver://localhost:1433;DataBaseName=books";
private static final String DATABASE_USER="sa";
private static final String DATABASE_PASSWORD="sa";

public static Connection getConnection(){

Connection dbConnection=null;
try{
Class.forName(DRIVER_CLASS);
dbConnection=DriverManager.getConnection(DATABASE_URL,DATABASE_USER,DATABASE_PASSWORD);
}catch(Exception e){
e.printStackTrace();
}
return dbConnection;
}

//关闭连接
public static void closeConnection(Connection con){
try{
if(con!=null && (!con.isClosed())){
con.close();
}

}catch(Exception e){
e.printStackTrace();
}
}
//关闭结果集
public static void closeResult(ResultSet res){

try{
if(res!=null){
res.close();
res=null;
}
}catch(Exception e){
e.printStackTrace();
}
}
//关闭语句
public static void closeStatement(PreparedStatement pStatement){
try{
if( pStatement!=null){
pStatement.close();
pStatement=null;
}

}catch(Exception e){
e.printStackTrace();
}
}

}

热心网友 时间:2022-04-08 06:58

没事好好看看课本

热心网友 时间:2022-04-08 09:56

不同的数据库的驱动有所不同,需要导入相应的驱动包哦。

热心网友 时间:2022-04-08 13:11

恩 我也需要 高手 快来
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
华为freebuds4i切歌怎么操作_华为freebuds4i怎么切歌 华为freebuds pro切歌方法_华为freebuds pro怎么切歌 华为耳机怎么切换下一曲 欧美电影,好像是宠物有一个世界,宠物会想办法跟主人的灵魂互换占据 ...的名字,欧洲中世纪,一个王子的继母把他的灵魂和狗的灵魂互换了... 问一部外国电影的名字 剧情记得不大清楚l了 是前几年的片子 灵魂互换的... HUAWEI 华为 AGS2-W09 10.1英寸平板电脑 (香槟金、64GB+4GB、WiFi版... 诛仙3百法和千法差距大吗 微信怎么解除应用授权登录 授权应用删除方法 微信怎么解除应用授权登录授权应用删除方法 Java无法连接SQLServer2008数据库,请高手指教! java代码连接sql server 2008数据库,报错: 创建数据库连接失败! 怎样用java连接数据库sql server2008? 用jsp连接数据库 服务器安装了WinCC7.2,附带装了SQL Server2008 R2,怎么用Java连接该数据库? 请问SQL Server2008与数据库连接的JAVA代码 java怎么连接sqlserver数据库 哪位大侠会java连接sqlserver 2008数据库呀 求教!!! java连接sql server 2008数据库,怎么连接 Java语言连接SQL server2008 如何用java 连接 sqlserver 数据库 求java连接Sql server 2008数据库的方法或代码 jdbc配置连接sqlserver2008怎么操作? java程序连接sql server2008数据库:求给一个具体的代码,和过程。_百 ... java连接SqlServer2008的数据库连接池怎么使用 Java与数据SqlServer2008怎么连接 java怎么连接数据库sql server 2008 java怎样连接到SQL server 2008 java怎么连接sql server2008数据库 微星笔记本电脑开机黑屏只剩鼠标? 华硕笔记本电脑开机黑屏只有鼠标指针,电源没问题,怎么弄好 java连接sqlserver数据库代码 什么软件有消除笔能p视频的脸? 哪位大神,什么软件拍视频美颜瘦脸的,怎么拍视频时达到瘦脸的效果。求大神求大神帮我p视频?怎么弄 瘦脸怎么p photoshop瘦脸是哪个工具 怎么在PS中把人的脸P瘦 如何用ps把人脸p瘦 手机火山拍视频大眼瘦脸总是不稳定咋办? 怎么把人脸P瘦【我用美图秀秀和photoshopcs3的】 英语specify the primary group怎么翻译? 如何使用 PrimaryGroupID 属性来查找的用户的主要组 linux (centos6.5) 将用户加入用户组的问题 tpo13阅读第一篇的11题求教,为何不选b 家用保温杯生锈了,怎么用最有效的方法除锈? 简单的SQL server 存储过程的SQL语句拼接问题,请教下达人! 怎么洗掉生锈的保温杯? LDAP怎样获取AD域中指定组的所有用户 保温杯里面生锈怎么办 we perceive people as means to ends rather than as ends in their own right.求解 怎样去除保温杯内的锈斑