首页数据库java操作mysql数据库(如何在Java程序中访问mysql数据库中的数据并进行简单的操作)

java操作mysql数据库(如何在Java程序中访问mysql数据库中的数据并进行简单的操作)

编程之家2023-10-21115次浏览

本篇文章给大家谈谈java操作mysql数据库,以及如何在Java程序中访问mysql数据库中的数据并进行简单的操作对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。

java操作mysql数据库(如何在Java程序中访问mysql数据库中的数据并进行简单的操作)

如何在Java程序中访问mysql数据库中的数据并进行简单的操作

在上篇文章给大家介绍了Myeclipse连接mysql数据库的方法,通过本文给大家介绍如何在Java程序中访问mysql数据库中的数据并进行简单的操作,具体详情请看下文。

创建一个javaProject,并输入如下java代码:

package link;

import java.sql.*;

/**

java操作mysql数据库(如何在Java程序中访问mysql数据库中的数据并进行简单的操作)

*使用JDBC连接数据库MySQL的过程

* DataBase:fuck, table:person;

*使用myeclipse对mysql数据库进行增删改查的基本操作。

*/

public class JDBCTest{

public static Connection getConnection() throws SQLException,

java操作mysql数据库(如何在Java程序中访问mysql数据库中的数据并进行简单的操作)

java.lang.ClassNotFoundException

{

//第一步:加载MySQL的JDBC的驱动

Class.forName("com.mysql.jdbc.Driver");

//取得连接的url,能访问MySQL数据库的用户名,密码;jsj:数据库名

String url="jdbc:mysql://localhost:/fuck";

String username="root";

String password="";

//第二步:创建与MySQL数据库的连接类的实例

Connection con= DriverManager.getConnection(url, username, password);

return con;

}

public static void main(String args[]){

try

{

//第三步:获取连接类实例con,用con创建Statement对象类实例 sql_statement

Connection con= getConnection();

Statement sql_statement= con.createStatement();

//如果同名数据库存在,删除

//sql_statement.executeUpdate("drop table if exists student");

//执行了一个sql语句生成了一个名为student的表

//sql_statement.executeUpdate("create table student(id int not null auto_increment, name varchar() not null default'name', math int not null default, primary key(id));");

//向person表中插入数据

sql_statement.executeUpdate("insert person values(,'liying',)");

sql_statement.executeUpdate("insert person values(,'jiangshan',)");

sql_statement.executeUpdate("insert person values(,'wangjiawu',)");

sql_statement.executeUpdate("insert person values(,'duchangfeng',)");

//第四步:执行查询,用ResultSet类的对象,返回查询的结果

String query="select* from person";

ResultSet result= sql_statement.executeQuery(query);

//显示数据中person表中的内容:

System.out.println("person表中的数据如下:");

System.out.println("------------------------");

System.out.println("序号"+""+"姓名"+""+"分数");

System.out.println("------------------------");

//对获得的查询结果进行处理,对Result类的对象进行操作

while(result.next())

{

int number= result.getInt("number");

String name= result.getString("name");

String mathsorce= result.getString("mathsorce");

//取得数据库中的数据

System.out.println(""+ number+""+ name+""+ mathsorce);

}

//关闭连接和声明

sql_statement.close();

con.close();

} catch(java.lang.ClassNotFoundException e){

System.err.print("ClassNotFoundException");

System.err.println(e.getMessage());

} catch(SQLException ex){

System.err.println("SQLException:"+ ex.getMessage());

}

}

}

注意有几个地方是你需要修改的。

如下图中的url和账号,密码需要与你自己的相一致。

这些需要访问的数据必须要与数据库中的类型相互匹配,才能打印出正确的结果。

右键单击工程名-->Build Path-->Configure Biuld Path-->Libraries--> Add External JARs-->加入一个jdbc包(具体请查考Mysql的简单使用(一))--->ok

这时,在包下会多了一个Referenced Libraries包文件,则说明配置已经成功。

点击Run as--->运行Java Application--->JDBCTest--link--->显示结果如下:

以上所述是小编给大家介绍的如何在Java程序中访问mysql数据库中的数据并进行简单的操作的相关知识,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

您可能感兴趣的文章:Java语言实现对MySql数据库中数据的增删改查操作的代码Java连接mysql数据库并进行内容查询的方法Java数据库连接池的几种配置方法(以MySQL数据库为例)java jdbc连接mysql数据库实现增删改查操作java连接MySQl数据库实例代码java连接mysql数据库详细步骤解析Java实现获得MySQL数据库中所有表的记录总数可行方法Java连接MYSQL数据库的实现步骤java连接mysql数据库乱码的解决方法Java对MySQL数据库进行连接、查询和修改操作方法

用java连接mysql实现对表中的数据查找,插入,修改等功能,

JDBC操作MySQL数据库的步骤

1、准备MySQL数据库驱动包:mysql-connector-java-5.0.8-bin.jar,一个项目中只能存在一个版本的驱动包

a、复制该驱动包,粘贴到项目中

b、选中项目里的驱动包,右键->Build Path->Add to Build Path

2、在类里写代码加载驱:决定连接哪种数据库

a、Class.forName("com.mysql.jdbc.Driver");

b、必须进行异常处理:ClassNotFoundException

3、连接数据库

a、Connection con=DriverManager.getConnection("连接字符串","用户名","密码");

b、连接字符串格式固定,不同数据库,格式不同:jdbc:mysql://要连接的计算机名称:端口号/要连接的数据库名称

c、必须进行异常处理:SQLException

4、拼写要执行的sql语句,必须是可以在数据库中执行的

5、创建执行sql语句的对象

a、Statement stmt=con.createStatement();

b、注意:Statement必须来自于java.sql包中

6、执行sql语句

a、执行insert、update和delete语句:int row=stmt.executeUpdate(sql);返回影响行数

b、执行查询语句:ResultSet rs=stmt.executeQuery(sql);返回查询结果

c、执行任意sql语句(DDL、DCL、DML和DQL等)

7、对执行结果进行处理

a、执行更新语句:判断影响行数是否为0,0表示失败,非0表示成功

b、对查询结果进行处理:

1)结果集需要先移动、后取值:rs.next();int id=rs.getInt(1);

String name=rs.getString("loginName");

2)结果集有多条时,需要循环操作:

while(rs.next()){ System.out.println(rs.getInt(1)+"\t"+rs.getString(2)+"\t"+rs.getString(3)+"\t"+rs.getString(4)+"\t"+rs.getInt(5));

}

3)不确定是否有查询结果时:if(rs.next()){说明有查询结果}else{没有查询结果}

4)使用了聚合函数,一定有查询结果,查询结果是一行一列:

rs.next();

int result=rs.getInt(1);

注意:结果集取值时取出的时查询语句中包含的字段,与表中字段无关

9、关闭相关对象(先关闭结果集对象、在关闭执行语句对象,最后关闭连接对象)

例如:执行查询语句

Scanner input=new Scanner(System.in);

System.out.print("请输入登录名:");

String name=input.next();

System.out.print("请输入密码:");

String pass=input.next();

try{

Class.forName("com.mysql.jdbc.Driver");

Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/userdb","root","root");

String sql="select COUNT(*) from UserInfo where loginName='"+name+"' and loginPass='"+pass+"'";

Statement stmt=con.createStatement();

ResultSet rs=stmt.executeQuery(sql);

rs.next();

int result=rs.getInt(1);

if(result!=0){

System.out.println("登录成功!");

}else{

System.out.println("用户名或密码错误,请重新登录!");

}

rs.close();

stmt.close();

con.close();

} catch(ClassNotFoundException e){

System.out.println("加载驱动错误:"+e.getMessage());

} catch(SQLException e){

System.out.println("数据库操作错误:"+e.getMessage());

}

执行添加、修改和删除语句

try{

//加载驱动

Class.forName("com.mysql.jdbc.Driver");

//连接数据库

Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/userdb","root","root");

//拼写要执行的sql语句

String sql="update UserInfo set loginPass='111' where loginName='a'";

//String sql="insert UserInfo values(default,'test','test')";

//String sql="delete from UserInfo where loginName='a'";

//创建执行语句对象

Statement stmt=con.createStatement();

//执行

int row=stmt.executeUpdate(sql);

//处理结果

if(row==0){

System.out.println("修改失败!");

}else{

System.out.println("修改成功!");

}

//关闭

stmt.close();

con.close();

} catch(ClassNotFoundException e){

System.out.println("驱动加载错误:"+e.getMessage());

} catch(SQLException e){

System.out.println("数据库操作错误:"+e.getMessage());

}

java如何访问数据库(java访问mysql数据库)

Java可以使用JDBC访问数据库,也可以使用各类ORM框架访问数据库,但这些框架最终还是通过JDBC访问数据库,它们只是封装了数据库操作,而使得开发者可以减少这部分消耗。因此,本文只讲解JDBC访问方式。

JDBC访问一般分为如下流程:

1、加载JDBC驱动程序:

在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机),这通过java.lang.Class类的静态方法forName(StringclassName)实现。

例如:

try{

//加载MySql的驱动类

Class.forName("com.mysql.jdbc.Driver");

}catch(e){

System.out.println("找不到驱动程序类,加载驱动失败!");

e.();

}

成功加载后,会将Driver类的实例注册到类中。

2、提供JDBC连接的URL

连接URL定义了连接数据库时的协议、子协议、数据源标识。

书写形式:协议:子协议:数据源标识

协议:在JDBC中总是以jdbc开始

子协议:是桥连接的驱动程序或是数据库管理系统名称。

数据源标识:标记找到数据库来源的地址与连接端口。

例如:(MySql的连接URL)

jdbc:mysql://localhost:3306/test?useUnicode=true&=gbk;

useUnicode=true:表示使用Unicode字符集。如果设置为

gb2312或GBK,本参数必须设置为true。=gbk:字符编码方式。

3、创建数据库的连接

要连接数据库,需要向java.sql.请求并获得Connection对象,该对象就代表一个数据库的连接。

使用的(Stringurl,Stringusername,Stringpassword)方法传入指定的欲连接的数据库的路径、数据库的用户名和密码来获得。

例如:

//连接MySql数据库,用户名和密码都是root

Stringurl="jdbc:mysql://localhost:3306/test";

Stringusername="root";

Stringpassword="root";

try{

Connectioncon=

.(url,username,password);

}catch(se){

System.out.println("数据库连接失败!");

se.();

}

4、创建一个Statement

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

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

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

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

具体的实现方式:

Statementstmt=con.();

PreparedStatementpstmt=con.prepareStatement(sql);

CallableStatementcstmt=con.prepareCall("{CALLdemoSp(?,?)}");

5、执行SQL语句

Statement接口提供了三种执行SQL语句的方法:executeQuery、executeUpdate和execute

1、ResultSetexecuteQuery(StringsqlString):执行查询数据库的SQL语句,返回一个结果集(ResultSet)对象。

2、intexecuteUpdate(StringsqlString):用于执行INSERT、UPDATE或DELETE语句以及SQLDDL语句,如:CREATETABLE和DROPTABLE等

3、execute(sqlString):用于执行返回多个结果集、多个更新计数或二者组合的语句。

具体实现的代码:

ResultSetrs=stmt.executeQuery("SELECT*FROM...");

introws=stmt.executeUpdate("INSERTINTO...");

booleanflag=stmt.execute(Stringsql);

6、处理结果

两种情况:

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

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

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

使用结果集(ResultSet)对象的访问方法获取数据:

while(rs.next()){

Stringname=rs.getString("name");

Stringpass=rs.getString(1);//此方法比较高效(列是从左到右编号的,并且从列1开始)

}

7、关闭JDBC对象

操作完成以后要把所有使用的JDBC对象全都关闭,以释放JDBC资源,关闭顺序和声明顺序相反:

1、关闭记录集

2、关闭声明

3、关闭连接对象

if(rs!=null){//关闭记录集

try{

rs.close();

}catch(SQLExceptione){

e.printStackTrace();

}

}

if(stmt!=null){//关闭声明

try{

stmt.close();

}catch(SQLExceptione){

e.printStackTrace();

}

}

if(conn!=null){//关闭连接对象

try{

conn.close();

}catch(SQLExceptione){

e.printStackTrace();

}

}

关于java操作mysql数据库的内容到此结束,希望对大家有所帮助。

绝地求生一直显示服务器繁忙?绝地求生出现错误,服务器目前非常繁忙,请稍后再试,是什么原因手机服务器在哪里找?手机里在哪能找到服务器