我想让java连接sql数据库并且可以 *** 作数据库执行sql语句具体怎么 *** 作呢

我想让java连接sql数据库并且可以 *** 作数据库执行sql语句具体怎么 *** 作呢,第1张

首先创建连接

就创建个Cnnection对象,然后把驱动加上,还有帐号密码什么的!我没连过sql数据,不知道驱动,你可以在网上搜一下。

给你一个我连接mysql数据库的例子

public Connection Getdata(){//这是连接数据库的一个方法,还可以配置连接池。

Connection con=null;

try {

ClassforName("commysqljdbcDriver");//加驱动

con=DriverManagergetConnection("jdbc:mysql://localhost:3306/data","root","qq");//数据库路径、端口、库名、数据库用户名和密码

} catch (ClassNotFoundException e) {

eprintStackTrace();

} catch (SQLException e) {

eprintStackTrace();

}

return con;

}

public void delete(int id){//对数据库进行 *** 作的方法,先调用上面写好的连接!

Connection con=Getdata();

Statement st;

try {

st=concreateStatement();

stexecuteUpdate("delete from kaoshi where id="+id);

} catch (SQLException e) {

// TODO Auto-generated catch block

eprintStackTrace();

}

}

连接数据库

import javasqlConnection;

import javasqlDriverManager;

import javasqlSQLException;

import javasqlStatement;

public class TestDB {

public static void main(String[] args) {

try {

// 1注册驱动

ClassforName("commicrosoftsqlserverjdbcSQLServerDriver");

Systemoutprintln("注册驱动成功");

String url = ""jdbc:microsoftsqlserver://127001:1433;DatabaseName="; //数据库IP,端口,数据库名

String username = "";

String password = "";

// 加载驱动并获取数据库连接对象

Connection connection = DriverManagergetConnection(url, username,

password);

Systemoutprintln("连接数据库成功!");

// 创建Statement对象

Statement stmt = connectioncreateStatement();

// SQL语句

String sql = "insert into student(id,name,age,email,address) values(1,'tom',23,'dfg@163com','England') ";

int rows = stmtexecuteUpdate(sql);

if (rows > 0) {

Systemoutprintln("插入成功!");

}

// 释放资源

stmtclose();

connectionclose();

} catch (SQLException e) {

eprintStackTrace();

}

catch (ClassNotFoundException e) {

eprintStackTrace();

}

}

}

预编译的数据库处理

public class ConnectionManager{

public static final String DRIVER_CLASS ="";

public static final String URL = "";

public static final String USERNAME = "";

public static final String PASSWORD = "";

//获取连接对象

public static Connection getConnection(){

Connection conn = null;

ClassforName(DRIVER_CLASS);

conn = DriverManagergetConnection(URL,USERNAME,PASSWORD);

return conn;

}

public static void closeAll(ResultSet rs,Statement stmt,Connection conn){

try{

if(rs!=null){

rsclose();

rs = null;

}

if(stmt!=null){

stmtclose();

stmt = null;

}

if(conn!=null){

connclose();

conn=null;

}

}

}

}

public class DBOperator{

public int executeUpdate(String sql,Object[] params){

int rows = 0;

Connection connn = ConnectionManagergetConnection();

PreparedStatement pstmt = connprepareStatement(sql);

if(params!=null){

for(int i=0;i<paramslength;i++){

pstmtsetObject(i+1,params[i]);//下标从1开始

}

}

rows = pstmtexecuteUpdate();

ConnectionManagercloseAll(null,pstmt,conn);

return rows;

}

public ResultSet executeQuery(String sql,Object[] params){

Connetion conn = ConnectionManagergetConnection();

if(params!=null){

for(int i= 0;i<paramslength;i++){

pstmtsetObject(i+1,params(i));

}

}

rs=pstmtexecuteQuery();

ConnectionManagercloseAll(rs,pstmt,conn);

return rs;

}

}

/

statement连接数据库

/

public class TestOperatorGrade{

private static void updateGrade(int id,String name,String description){

ClassforName();//注册驱动

Connection conn = DirverManagergetConnection("","","");

Statement stmt = conncreateStament();

String sql = "UPDATE grades set name = '"+name+"',description='"+description+"'WHere id="+id;

int rows = stmtexecuteUpdate(sql);

}

}

这是java 程序的代码

import javasql;

public class DataBasePractice {

public static void main(String[] args) {

//声明Connection对象

Connection con;

//驱动程序名

String driver = "commysqljdbcDriver";

//URL指向要访问的数据库名mydata

String url = "jdbc:mysql://localhost:3306/mydata";

//MySQL配置时的用户名

String user = "root";

//MySQL配置时的密码

String password = "root";

//遍历查询结果集

try {

//加载驱动程序

ClassforName(driver);

//1getConnection()方法,连接MySQL数据库!!

con = DriverManagergetConnection(url,user,password);

if(!conisClosed())

Systemoutprintln("Succeeded connecting to the Database!");

//2创建statement类对象,用来执行SQL语句!!

Statement statement = concreateStatement();

//要执行的SQL语句

String sql = "select from student";

//3ResultSet类,用来存放获取的结果集!!

ResultSet rs = statementexecuteQuery(sql);

Systemoutprintln("-----------------");

Systemoutprintln("执行结果如下所示:");

Systemoutprintln("-----------------");

Systemoutprintln(" 学号" + "\t" + " 姓名");

Systemoutprintln("-----------------");

String name = null;

String id = null;

while(rsnext()){

//获取stuname这列数据

name = rsgetString("stuname");

//获取stuid这列数据

id = rsgetString("stuid");

//首先使用ISO-8859-1字符集将name解码为字节序列并将结果存储新的字节数组中。

//然后使用GB2312字符集解码指定的字节数组。

name = new String(namegetBytes("ISO-8859-1"),"gb2312");

//输出结果

Systemoutprintln(id + "\t" + name);

}

rsclose();

conclose();

} catch(ClassNotFoundException e) {

//数据库驱动类异常处理

Systemoutprintln("Sorry,can`t find the Driver!");

eprintStackTrace();

} catch(SQLException e) {

//数据库连接失败异常处理

eprintStackTrace();

}catch (Exception e) {

// TODO: handle exception

eprintStackTrace();

}finally{

Systemoutprintln("数据库数据成功获取!!");

}

}

}

在上面while代码段后面添加以下代码段:

String name = null;

String id = null;

while(rsnext()){

//获取stuname这列数据

name = rsgetString("stuname");

//获取stuid这列数据

id = rsgetString("stuid");

//首先使用ISO-8859-1字符集将name解码为字节序列并将结果存储新的字节数组中。

//然后使用GB2312字符集解码指定的字节数组。

name = new String(namegetBytes("ISO-8859-1"),"gb2312");

//输出结果

Systemoutprintln(id + "\t" + name);

}

PreparedStatement psql;

ResultSet res;

//预处理添加数据,其中有两个参数--“?”

psql = conprepareStatement("insert into student values(,)");

psqlsetInt(1, 8); //设置参数1,创建id为5的数据

psqlsetString(2, "xiaogang"); //设置参数2,name 为小明

psqlexecuteUpdate(); //执行更新

//预处理更新(修改)数据

psql = conprepareStatement("update student set stuname = where stuid = ");

psqlsetString(1,"xiaowang"); //设置参数1,将name改为王五

psqlsetInt(2,10); //设置参数2,将id为2的数据做修改

psqlexecuteUpdate();

//预处理删除数据

psql = conprepareStatement("delete from student where stuid = ");

psqlsetInt(1, 5);

psqlexecuteUpdate();

//查询修改数据后student表中的数据

psql = conprepareStatement("selectfrom student");

res = psqlexecuteQuery(); //执行预处理sql语句

Systemoutprintln("执行增加、修改、删除后的数据");

while(resnext()){

name = resgetString("stuname");

id = resgetString("stuid");

name = new String(namegetBytes("ISO-8859-1"),"gb2312");

Systemoutprintln(id + "\t" + name);

}

resclose();

psqlclose();

1在数据库编写自定义函数,存储过程,在java中调用

2直接在java中写sql语句,使用jdbc查询

JDBC, 全称为Java DataBase Connectivity standard, 它是一个面向对象的应用程序接口(API), 通过它可访问各类关系数据库。JDBC也是java核心类库的一部分。

JDBC的最大特点是它独立于具体的关系数据库。与ODBC (Open Database Connectivity)类似, JDBC API 中定义了一些Java类分别用来表示与数据库的连接(connections), SQL语句(SQL statements), 结果集(result sets)以及其它的数据库对象, 使得Java程序能方便地与数据库交互并处理所得的结果。使用JDBC, 所有Java程序(包括Java applications , applets和servlet)都能通过SQL语句或存储在数据库中的过程(stored procedures)来存取数据库。

1、加载驱动程序。

2、创建连接对象。

3、创建sql语句执行对象 。

4、执行sql语句。

5、对执行结果进行处理。

6、关闭相关的连接对象即可(顺序跟声明的顺序相反)。

处理结果两种情况:

1、执行更新返回的是本次 *** 作影响到的记录数。

2、执行查询返回的结果是一个ResultSet对象。

ResultSet包含符合SQL语句中条件的所有行,并且它通过一套get方法提供了对这些 行中数据的访问。

扩展资料:

Statement

要执行SQL语句,必须获得javasqlStatement实例,Statement实例分为以下3 种类型:

1、执行静态SQL语句。通常通过Statement实例实现。

2、执行动态SQL语句。通常通过PreparedStatement实例实现。

3、执行数据库存储过程。通常通过CallableStatement实例实现。

参考资料:

百度百科JAVA

是这样子拼接的么:

ClassforName("commicrosoftsqlserverjdbcSQLServerDriver");

con=DriverManagergetConnection("jdbc:sqlserver://localhost;database=Students","sa","sa");

以上就是关于我想让java连接sql数据库并且可以 *** 作数据库执行sql语句具体怎么 *** 作呢全部的内容,包括:我想让java连接sql数据库并且可以 *** 作数据库执行sql语句具体怎么 *** 作呢、java程序连接sql server2008数据库:求给一个具体的代码,和过程。、java连接数据库mysql代码及简单访问数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9349561.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存