Java调用Mysql
Java调用Mysql
连接步骤
添加mysql官方的java接口jar包,在后面详细介绍
连接Database
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost/javabook", "USERNAME", "PASSWORD");
- 创建Database命令语句
Statement statement = connection.createStatement();
- 执行命令语句
statement.executeUpdate("create table Temp (col1 char(5), col2 char(5))");
- 获取请求query的结果集resultSet
ResultSet resultSet = statement.executeQuery("select firstName, mi, lastName from Student where lastName " + " = 'Smith'");
resultSet的默认位置是null,以下代码打印所有数据信息
while (resultSet.next())System.out.println(resultSet.getString(1) + " " + resultSet.getString(2) + " " + resultSet.getString(3));
也可以通过getString(“firstName”)获得firstName的值
完整程序代码如下:
public class DatabaseTest {public static void main(String[] argv)throws SQLException, ClassNotFoundException {Class.forName("com.mysql.jdbc.Driver");System.out.println("Driver loaded");Connection connection = DriverManager.getConnection("jdbc:mysql://localhost/Javadata", "user1", "12345");System.out.println("connected");Statement statement = connection.createStatement();ResultSet resultSet = statement.executeQuery("select * from Test order by age desc");while(resultSet.next()){System.out.println(resultSet.getString("name") + " " + resultSet.getString("age"));}connection.close();}}
注意:
每一个单独语句会单独提交到数据库中,如果要分组进行提交的话,可以采用setAutoCommit(false)方法,并在一组statement语句的句末调用commit()方法提交整个组,而rollback()则撤销该组的提交。
rollback()可用于读取某个数据失败而导致整项不该修改的数据的修改。
使用带参数的SQL语句
不带参数的SQL语句:
String queryString = "select firstName, mi, " +"lastName, title, grade from Student, Enrollment, Course " +"where Student.ssn = '" + _ssn_ + "' and Enrollment.courseId "+ "= '" + _courseId_ +"' and Enrollment.courseId = Course.courseId " +" and Enrollment.ssn = Student.ssn";ResultSet rset = stmt.executeQuery(queryString)
调用connection.prepareStatement(),采用带参数的SQL语句(使用?作为参数):
preparedStatement = connection.prepareStatement(queryString);String queryString = "select firstName, mi, " +"lastName, title, grade from Student, Enrollment, Course " +"where Student.ssn = ? and Enrollment.courseId = ? " +"and Enrollment.courseId = Course.courseId";preparedStatement.setString(1, ssn);preparedStatement.setString(2, courseId);ResultSet rset = preparedStatement.executeQuery();
IntelliJ中导入jar包
我使用的是Android Studio,但AS基于IJ开发,所以大同小异,步骤如下:
在Mysql官网下载mysql-connector-java-5.1.43.tar.gz
导入IntelliJ IDE中:
1. 点击 File -> Project Structure(快捷键 Ctrl + Alt + Shift + s),点击Project Structure界面左侧的modules。(在这里我的module是my_test)
2. 在 “Dependencies” 标签界面下,点击右边绿色的 “+”号,选择第一个选项“Jar dependency”,选择相应的jar包,点“OK”,jar包添加成功。
3. 假设包中有mysql.jdbc.Driver类,则在该module下,使用com.mysql.jdbc.Driver即可使用该类
Java调用Mysql相关推荐
- Java调用MySQL并返回数据_Java调用MySQL存储过程并获得返回值的方法
本文实例讲述了Java调用MysqL存储过程并获得返回值的方法.分享给大家供大家参考.具体如下: private void empsInDept(Connection myConnect,int de ...
- 【Java】 # 使用java调用MySQL的函数、存储过程
1. 存储过程 1.1 创建函数(代码创建) -- 修改 MySQL 默认的语句结束符号 delimiter $-- 创建函数 CREATE FUNCTION add_sum(num1 INT, nu ...
- Java调用mysql的存储过程
在之前写过一篇博客是如何mysql如何创建存储过程,在这一节中,我们是在原来的基础上来进一步的学习,如何在Java程序中使用Java代码来调用mysql存储过程. mysql创建存储过程:http:/ ...
- java调用mysql数据库的基本操作方法
一. 关于java与mysql数据库的连接: //加载数据库驱动Class.forName("com.mysql.jdbc.Driver");//获取连接//http://bai ...
- java 调用mysql视图_java 访问数据库视图 | 学步园
工作多年调用视图到多次,自己写代码使用视图还是头一回,也觉得新鲜,那就开始呗, 数据库系统是Oracle 1 我用的数据库连接客户端是Navicat ,首先创建视图,其实视图就是调用表的操作,提取自己 ...
- java 调用mysql存储过程
1 import java.sql.CallableStatement; 2 import java.sql.Connection; 3 import java.sql.DriverManager; ...
- java 调用 mysql存储过程
在工作中经常会有需要通过java去调用存储过程的情况,实际工作中可能会有N多个存储过程,各自实现相应的业务场景,而我们需要在不同的地方知道调用某个存储过程,比如从前端请求某个存储过程,或者别的业务模块 ...
- java调用MySQL脚本_Java调用SQL脚本执行常用的方法示例
前言 大家都知道,在Java中调用SQL脚本的方式有多种,在这里只记录一种自己常用的方式,个人觉得挺实用方便的. 运用ScriptRunner这个类. ScriptRunner类用于执行SQL语句,例 ...
- java调用MySQL数据库
Java数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法.JD ...
最新文章
- 【网络协议】TCP分段与UDP/IP分片 (MTU最大传输单元,MSS最大分段大小)
- Codeforces Round #746 (Div. 2)
- 【音视频安卓开发 (一)】AndroidStudio项目配置权限、jni库路径、ABI、Cmake
- 惊呆了!颜值爆表的20+位阿里技术女神同一时间向你发出共事邀请!
- python批量导入mysql_用python批量向数据库(MySQL)中导入数据
- java 异常总结_Java异常的十大问题总结
- redis需要掌握的知识点
- 通过python读取ini配置文件
- 今天进行的将zzb从apache迁移到nginx
- 最新手机号段 归属地数据库(20191210,共439265条,包括最新的号段)
- 计算机如何使用键盘复制粘贴,电脑复制粘贴快捷键,小编教你电脑怎么用键盘复制粘贴...
- ajax 获取数据太慢,想写个加载中
- 上热搜!武大学生用Python敲出樱花开放 | 附源码
- win10左右声道音量不一致的解决方法
- 在金山云上,“雷布斯”有这些野心
- 数据处理方法-算术编码(香农算法、java编码实现)
- (dedecms)织梦搬家后无法更新栏目
- 中兴 Axon 40 Ultra参数评测 中兴 Axon 40 Ultra配置怎么样 中兴 Axon 40 Ultra值得买吗
- Pyecharts : plot Graph, Line, Liquid, Parallel
- 计算机考研学长学什么,关于考研的问题,学长们请指教:)
热门文章
- 伊利成为澳优第一大股东;Interbrand 2021年全球最佳品牌榜可口可乐、麦当劳排名前十 | 食品饮料新品...
- Deformable DETR论文翻译
- java wrap()_Java中的CharBuffer wrap()方法
- 【ibokan】SEO个人笔记+百度百科详细介绍
- 2022电大国家开放大学网上形考任务-建设项目管理非免费(非答案)
- python全栈指的是什么_python全栈指的是什么意思
- C++多维数组:存储方式、访问方式和作为函数参数
- 【ARM】在NUC977上搭建基于boa的嵌入式web服务器
- BigDecimal 保留两位小数
- 当代最值得收藏的画家作品_名人名画推荐,值得收藏的当代画家作品