Java通过JDBC对数据库的连接操作其通用操作为:

String username;

String password;

String databaseURL;

Class.forName("JDBCDriverClass");

Connection connection=DriverManager.getConnection(databaseURL,username,password);

MySQL 连接:

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

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

SQLServer连接 :

Class.forName('com.microsoft.jdbc.sqlserver.SQLServerDriver');

String url='jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=databasename';

String user='sa';

String password='' ";

Connection conn= DriverManager.getConnection(url,user,password);

Access(通过JDBC-ODBC桥)连接:Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

Connection connection=DriverManager.getConnection("jdbc:odbc:DataSource", "username", "password");

Oracle连接 :

Class.forName("oracle.jdbc.driver.OracleDriver");

Connection connection=DriverManager.getConnectio("jdbc:oracle:thin:@hostname:port#:oracleDBSID", "0", "0");

创建语句:

Statement statement=connection.createStatement();

执行插入更新等:int count=statement.executeUpdate("create table/insert into/update/delete..."); 返回影响的行数。

执行查询语句:ResultSet resultset=statement.executeQury("select..."); 返回ResultSet。

处理结果(ResultSet的处理):

while(resultset.next()){

...

resultset.getString/getInt/getDouble...(列序号);   如resultset.getString(1),resultset.getDouble(3)... 列序号

从1开始,第一列为1,第二列为2...

resultset.getString/getInt/getDouble...("列名");    如resultset.getString("SName"),resultset.getInt("S#")...

...

}

批处理:

statement.addBatch("insert into ...");

statement.addBatch("create table...");

statement.addBatch("update...");

...

int count[ ]=statement.executeBatch();   返回影响行数的数组。

预处理语句:

预处理语句接口PreparedStatement是Statement的接口拓展。

PreparedStatement/Statement pstmt=connection.prepareStatement("insert into student(S#,SName,Age,Sex)"

values(?,?,?,?));

其中?为占位符,占位符位置从1开始,第一个?为第一位,的二个?为第二位...

占位符参数的设置为:pstmt.setX(int index,X value); index为?的索引,X为参数类型如String,int ,double等等。

对上述创建的预处理语句执行如下:

pstmt.setInt(1,0755010100);

pstmt.setString(2,"jack");

pstem.setInt(3,20);

pstmt.setString(4,"man");

int count=pstmt.executeUpdate();

对MySQL的连接例子:package JDBC;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

public class MySQLJdbcDemo {

public static void main(String[] args){

MySQLJdbcDemo demo=new MySQLJdbcDemo();

}

private Connection connection;

private Statement statement;

private ResultSet resultset;

private PreparedStatement pstmt;

public MySQLJdbcDemo() {

try {

//数据库的连接

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

connection=DriverManager.getConnection("jdbc:mysql://localhost:3306/test",

"root", "000000");    //语句块与预处理语句块的定义       statement=connection.createStatement();       pstmt=connection.prepareStatement("select * from student where sex=?");             //结果的处理    resultset=statement.executeQuery("select * from student");    while(resultset.next()){     System.out.print(resultset.getString(1)+" ");     System.out.print(resultset.getString("name")+" ");     System.out.print(resultset.getInt(3)+" ");     System.out.print(resultset.getString("sex")+"\t");    }        //批处理    statement.addBatch("insert into student values(0755010137,'DDL',21,'m')");    statement.addBatch("insert into student values(0755010101,'XWL',22,'m')");    statement.executeBatch();        //预处理语句    pstmt.setString(1, "m");    resultset=pstmt.executeQuery();    while(resultset.next()){     System.out.print(resultset.getString(1)+" ");     System.out.print(resultset.getString("name")+" ");     System.out.print(resultset.getInt(3)+" ");     System.out.print(resultset.getString("sex")+"\t");    }        pstmt.setString(1, "w");    resultset=pstmt.executeQuery();    while(resultset.next()){     System.out.print(resultset.getString(1)+" ");     System.out.print(resultset.getString("name")+" ");     System.out.print(resultset.getInt(3)+" ");     System.out.print(resultset.getString("sex")+"\t");    }       } catch (SQLException e) {    System.out.println("SQLException");   } catch (ClassNotFoundException e) {    System.out.println("ClassNotFoundException");   }     } }

java对数据库的操作_java对数据库的操作(jdbc)相关推荐

  1. java中的数据库操作_Java中数据库操作的流程介绍

    1.java数据库操作基本流程 a .数据库连接1.Drivermanager 链接数据库 String className,url,uid,pwd; className="oracle.j ...

  2. java与mysql的交互_java与数据库交互常用到的一些方法

    下面我整理了一下java中常用的几个与数据库交互的常用方法,仅供参考: 1.执行SQL(dao层的实现类中) (1)SQL查询: //import org.hibernate.Query; //imp ...

  3. java压缩流的用法_Java对压缩包的操作(解压缩)

    image 前言 如何用Java对文件进行加压和压缩 上篇文章说了项目中对根据URL提供的HTML代码中的文件URL进行下载,将下载后的文件存放在服务器上,但是文件下载下来都是ZIP压缩包.那么这篇就 ...

  4. JAVA ee6 result结果集_java对数据库的表插入操作时,显示已生成用于更新的结果集...

    package chang;                                                 //    一个插入操作在两行 * 号之间 应该是插入有问题   不知道问 ...

  5. java sqlite 操作_Java SQLite 数据库操作

    Java SQLite 数据库操作 1.[代码][Java]代码 package UI; import java.sql.Connection; import java.sql.DriverManag ...

  6. java模拟数据库压测_java模拟数据库缓存

    实现缓存一些数据到本地,避免重复查询数据库,对数据库造成压力,代码如下: package threadLock; import java.util.HashMap; import java.util. ...

  7. java传入数据库生成柱状图_Java读取数据库数据生成柱状图

    此案例是用swing显示数据的.须要引入jfreechart相关包.不同版本号可能包不同样.本人用的是 此案例在ssi框架下会报错,不用框架就没问题. Java后台逻辑代码: public class ...

  8. java中数据库修改语句_java 修改数据库中的数据

    就是把文本框中修改的数据重写入数据库代码:intnum=Integer.parseInt(number.getText());Stringnewname=name.getText();Stringne ...

  9. java判断数据库是否存在_java判断数据库是否存在的方法

    java判断数据库是否存在的方法 发布时间:2020-06-10 10:12:11 来源:亿速云 阅读:208 作者:Leah 这篇文章主要为大家详细介绍了java判断数据库是否存在的方法,文中示例代 ...

最新文章

  1. 浅析Struts 体系结构与工作原理(图)
  2. PHP 通过数组判断数组顺序输出是否是二叉排序树的后序遍历结果
  3. 祝贺|合肥.NET俱乐部第二期技术沙龙活动圆满成功
  4. java实现字符逆序输出
  5. javascript 西瓜一期 12 八进制的数数进位解析
  6. Nginx做反向代理和负载均衡时“X-Forwarded-For”信息头的处理
  7. EDUCoder编程练习题解(循环)
  8. 考软考信息处理技术员之前,这些问题你要知道!
  9. VS编译错误:winsock.h winsock2.h ws2def.h 重定义
  10. python网易云爬虫网络技术的意义_Python3爬虫实战之网易云音乐
  11. C++--【基础】--HEX、DEC、OCT数据转换
  12. 基数排序(桶排序)思路分析及代码实现
  13. 【PMAC】Chapter4:PMAC的C#开发
  14. windows可以ping通linux虚拟机的ip,但是ping不通主机名称解决方案
  15. java入门基础学习(三)
  16. Python实现节假日判断,手动添加后续节假日
  17. 高性能架构学习路线图-分布式架构演进
  18. android应用卸载后,出现的本地数据库内容未删除现象
  19. html字体颜色字号,(前端)html与css,css 5、颜色、字体、字号量取方式
  20. python 遗传算法 字符串_遗传算法——Python

热门文章

  1. Linux系统:centos7下搭建ZooKeeper3.4中间件,常用命令总结
  2. 重磅!央行启动企业信息联网核查系统
  3. 在ubuntu下安装Eclipse3.4+MyEclipse7.1
  4. 数据结构基础(4) --快速排序
  5. 十大经典排序算法(动态演示+代码)
  6. 通过JS和CSS,实现网页加载中的动画效果
  7. svn 修改文件的二进制或文本标记
  8. Ubuntu Eclipse ns3编译中 遇到的OSError 系列问题
  9. 乔春洋:品牌管理创新
  10. YMP框架学习笔记(二)------基于YMP框架搭建WEB应用程序