JAVA的JDBC连接与sql操作
一、前言
本文主要介绍怎样连接数据库。即JDBC的操作。以MySQL为例子。
前提是首先要将驱动jar包放入对应路径中。
二、过程说明
1.加载jdbc驱动程序
<span style="font-size:12px;">Class.forName("com.mysql.jdbc.Driver");</span>
这里的驱动根据不同类型的数据库来改变。
比如mysql数据库,就是com.mysql.jdbc.Driver
Oracle数据库,oracle.jdbc.driver.OracleDriver
ms_sql server数据库,com.microsoft.jdbc.sqlserver.SQLServerDriver
等等。
2、建立连接
<span style="font-size:12px;">Connection connect = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/test","root","123456");</span>
其中三个参数分别是:加载数据库的地址url,加载数据库的用户名user,加载数据库的用户相应的登陆密码password;
3.创建Statement对象
<span style="font-size:12px;">Statement stmt = connect.createStatement();</span>
大部分数据库驱动程序允许在同一个连接中打开多个并行的Statement对象,创建好Statement对象之后,就可以使用它来进行数据库的操作了。Statement类中的常用方法,可以去帮助文档中查找。
4.执行sql语句及结果集的处理
<span style="font-size:12px;">ResultSet rs = stmt.executeQuery("select * from stu_table");
while(rs.next()){
System.out.println(rs.getString("name"));
}</span>
5.一些其他如insert插入操作
<span style="font-size:12px;">int num = 100;
PreparedStatement pst = connect.prepareStatement("insert into stu_table values(?,?,?,?)");
int i;
for( i = 0; i < num ; i++){
pst.setString(1,i+"3"); pst.setString(2,"Lilly" + (i+1));
pst.setString(3, "female");
pst.setString(4, "001");
pst.execute();
}
System.out.println("success inserting notes!");</span>
6.关闭连接
rs.close();
stmt.close();
connect.close();
在关闭连接前先将相应的ResultSet对象及statement对象也关闭。
三、程序完整实现
<span style="font-size:12px;">package test;
import java.sql.*;
public class testJDBC {
public static void main(String[] args) {
try{
//first:load jdbc driver
Class.forName("com.mysql.jdbc.Driver");
System.out.println("Success loading Mysql Driver!");
}
catch(Exception e){
System.out.println("Error loading mysql driver!");
e.printStackTrace();
}
try{
//second:connect sql server
Connection connect = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/test","root","123456");
System.out.println("success connecting mysql server!");
//third:selct from the table of database using a sql query
Statement stmt = connect.createStatement();
ResultSet rs = stmt.executeQuery("select * from stu_table");
while(rs.next()){
System.out.println(rs.getString("name"));
}
//four:do some other operation such as insert notes
int num = 100;
PreparedStatement pst = connect.prepareStatement("insert into stu_table values(?,?,?,?)");
int i;
// for( i = 0; i < num ; i++){
// pst.setString(1,i+"3");
//
// pst.setString(2,"Lilly" + (i+1));
// pst.setString(3, "female");
// pst.setString(4, "001");
// pst.execute();
// }
System.out.println("success inserting notes!");</strong></span></span>
<span style="font-size:12px;"><span style="font-size:18px;"><strong><span style="white-space:pre"> </span>rs.close();
<span style="white-space:pre"> </span>stmt.close();
<span style="white-space:pre"> </span>connect.close();
}
catch(SQLException e){
System.out.println("Error connecting mysql server!");
e.printStackTrace();
} } } </span>
JAVA的JDBC连接与sql操作的更多相关文章
- 基于CDH5.x 下面使用eclipse 操作hive 。使用java通过jdbc连接HIVESERVICE 创建表
基于CDH5.x 下面使用eclipse 操作hive .使用java通过jdbc连接HIVESERVICE 创建表 import java.sql.Connection; import java.s ...
- Java使用JDBC连接SQL Server数据库|实现学生成绩信息系统
Java实验四 JDBC 使用SQL Server数据库或者MySQL数据库各自的客户端工具,完成如下任务: (1)创建数据库students: (2)在数据students中创建表scores,包括 ...
- Java使用JDBC连接SQL Server数据库
Java使用JDBC连接SQL Server数据库 1.下载驱动 1.下载Microsoft SQL Server JDBC 驱动程序 https://docs.microsoft.com/zh-cn ...
- Java通过JDBC 进行MySQL数据库操作
转自: http://blog.csdn.net/tobetheender/article/details/52772157 Java通过JDBC 进行MySQL数据库操作 原创 2016年10月10 ...
- ava基础MySQL存储过程 Java基础 JDBC连接MySQL数据库
1.MySQL存储过程 1.1.什么是存储过程 带有逻辑的sql语句:带有流程控制语句(if while)等等 的sql语句 1.2.存储过程的特点 1)执行效率非常快,存储过程是数据库的服 ...
- JAVA使用jdbc连接MYSQL简单示例
以下展示的为JAVA使用jdbc连接MYSQL简单示例: import java.sql.DriverManager; import java.sql.ResultSet; import java.s ...
- java用JDBC连接MySQL数据库的详细知识点
想实现java用JDBC连接MySQL数据库.需要有几个准备工作: 1.下载Connector/J的库文件,下载Connector/J的官网地址:http://www.mysql.com/downlo ...
- JAVA通过JDBC连接Oracle数据库详解【转载】
JAVA通过JDBC连接Oracle数据库详解 (2011-03-15 00:10:03) 转载▼http://blog.sina.com.cn/s/blog_61da86dd0100q27w.htm ...
- JAVA采用JDBC连接操作数据库详解
JDBC连接数据库概述 一.JDBC基础知识 JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供 ...
随机推荐
- nova分析(6)—— nova service启动过程
Nova project下面具有多个service,api,compute,sceduler等等,他们的启动过程都几乎类似,这一篇博客就详细记录nova-sceduler的启动过程.文章中贴出的源码都 ...
- usaco 2010年3月银组题解
usaco银组解题报告 一.石子游戏如果把‘O’当作0,‘X’当做1,则N个洞的每一种状态都可以看做是一个N位二进制数.于是,这个问题就变成了求环绕的N位格雷码.幸运的是,这个结构很容易就能够用一个简 ...
- ASP.NET内置对象详解
ASP.NET的内置对象介绍 1.Response 2.Request 3.Server 4.Application 5.Session 6.Cookie Request对象主要是让服务器取得客户端浏 ...
- 黄聪:PHP json_encode中文乱码解决方法
相信很多人在使用Ajax与后台php页面进行交互的时候都碰到过中文乱码的问题.JSON作为一种轻量级的数据交换格式,备受亲睐,但是用PHP作为后台交互,容易出现中文乱码的问题.JSON和js一样,对于 ...
- windows初始化后做了哪些事情
保护视力,将WINDOWS背景色变成淡绿色 绿色和蓝色对眼睛最好,建议大家在长时间用电脑后,经常看看蓝天.绿地,就能在一定程度上缓解视疲劳.同样的道理,如果我们把电脑屏幕和网页的底色变为淡淡的苹果绿, ...
- (C/C++) 算法,编程题
注: 如下的题目皆来自互联网,答案是结合了自己的习惯稍作了修改. 1. 求一个数的二进制中的1的个数. int func(int x) { ; while (x) { count++; x = x&a ...
- [JS]Javascript的函数总结
Javascript中不存在函数重载,同名的函数将被最后一个覆盖. function test(a,b){ this.x = 1;} function test(a){ this.x = 2;} fu ...
- 使用SparkSQL实现多线程分页查询并写入文件
一.由于具有多张宽表且字段较多,每个宽表数据大概为4000万条,根据业务逻辑拼接别名,并每张宽表的固定字段进行left join 拼接SQL.这样就能根据每个宽表的主列,根据每个宽表的不同字段关联出一 ...
- 第一个Flask Web
https://github.com/ethan-funny/head-first-flask iOS多线程技术方案 http://www.cnblogs.com/Erma-king/p/593427 ...
- Android listview中使用checkbox
最近比较忙碌,我也不知道忙的什么东西,打算写的博客写了一半,还没写完,今天先扯一扯项目中遇到的一个问题,一方面防止以后遇到这个问题忘记如何解决,另一方面希望可以提供给遇到同样问题的朋友一个思路.下面开 ...