Java JDBC Statement
使用Connection对象创建Statement对象
Statement createStatement() 创建一条 SQL 语句对象
Statement接口 | 描述 |
---|---|
int executeUpdate(String sql) | DML语句,增删改,insert,update,delete。DDL操作 |
ResultSet executeQuery(String sql) | DQL语句,查询操作,select |
需要将按顺序释放ResultSet,Statement和Connection对象,最好放在finally块中。
ResultSet接口 | 描述 |
---|---|
boolean next() | 游标向下一动一行,默认游标是在表头,所以需要先移动一行 |
getXxx(int or string) | Xxx代表的是不同类型,参数可以是列数(从1开始),也可以是列名 |
Java与SQL类型对照
SQL 类型 | Jdbc 对应方法 | 返回类型 |
---|---|---|
BIT(1) bit(n) | getBoolean() | boolean |
TINYINT | getByte() | byte |
SMALLINT | getShort() | short |
INT | getInt() | int |
BIGINT | getLong() | long |
CHAR,VARCHAR | getString() | String |
Text(Clob) Blob | getClob getBlob() | Clob Blob |
DATE | getDate() | java.sql.Date 只代表日期 |
TIME | getTime() | java.sql.Time 只表示时间 |
TIMESTAMP | getTimestamp() | java.sql.Timestamp 同时有日期和时间 |
示例:
DDL
Connection conn = DriverManager.getConnection("jdbc:postgresql://localhost:5432/postgres", "postgres", "postgres");
statement = conn.createStatement();
statement.executeUpdate("create table student (id int PRIMARY key auto_increment, " + "name varchar(20) not null)");
DML
Connection conn = DriverManager.getConnection("jdbc:postgresql://localhost:5432/postgres", "postgres", "postgres");
Statement stmt = conn.createStatement();
String sql1 = "update account set score = 112 where id = 1";
int count1 = stmt.executeUpdate(sql1);
statement.close();
connection.close();
DQL
Connection conn = DriverManager.getConnection("jdbc:postgresql://localhost:5432/postgres", "postgres", "postgres");
Statement stmt = conn.createStatement();
String sql4 = "select * from account";
ResultSet res1 = stmt.executeQuery(sql4);
res1.next();
String name1 = res1.getString("NAME");
Java JDBC Statement相关推荐
- java面试题3 牛客:下面有关jdbc statement的说法错误的是
下面有关jdbc statement的说法错误的是? A JDBC提供了Statement.PreparedStatement 和 CallableStatement三种方式来执行查询语句, 其中 S ...
- java的maxrow_聊聊pg jdbc statement的maxRows参数
序 本文主要解析一下pg jdbc statement的maxRows参数 Statement.setMaxRows void setMaxRows(int max) throws SQLExcept ...
- Java JDBC 使用Statement 产生sql注入问题
#Java JDBC 使用Statement 产生sql注入问题 Statement 对象用于执行静态SQL语句并返回其生成的结果对象 Statement 对象执行SQL语句,存在SQL注入风险 代码 ...
- Java JDBC连接oracle、SQL server、My Sql数据库的驱动
JAVA创建以JDBC连接数据库的程序 ①加载JDBC驱动程序: 1.oracle---------JDBC try{//加载oracle的驱动类Class.forName("oracle. ...
- Java JDBC批处理插入数据操作
在此笔记里,我们将看到我们如何可以使用像Statement和PreparedStatement JDBC API来批量在任何数据库中插入数据.此外,我们将努力探索一些场景,如在内存不足时正常运行,以及 ...
- java jdbc 教程_java JDBC系列教程之JDBC类的简析与JDBC的基础操作
什么是JDBC? 概念:JAVA Database Connectivity Javas数据库连接,Java语言操作数据库接口,然后由各个数据库厂商去实现这个接口,提供数据库驱动java包,我们可以使 ...
- [Java]jdbc[转]
[Java]jdbc[转] >>http://www.cnblogs.com/xiohao/p/3507483.html >>http://www.cnblogs.com/ho ...
- Java JDBC数据库 之 DBUtil 封装类
http://www.verejava.com/?id=16998460142640 下载 Oracle 或者 Mysql Jar 驱动 mysql-connector-java-3.0.10-sta ...
- JAVA JDBC详解
一.相关概念 什么是JDBC JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一 ...
最新文章
- Linux内核--异常和中断的区别
- 安卓开发37:自定义的HorizontalScrollView类,使其pageScroll的时候焦点不选中
- 深入redis内部--实现字符串
- 关于fullcalendar里显示json格式的events(java)
- 线程调度、公平锁和非公平锁、乐观锁和悲观锁、锁优化、重入锁
- linux卸载docker redis,【Docker】Redis在docker上的安装、启动、停止、删除操作
- [html] 你觉得写Html难吗?难在哪?为什么?
- 为什么先编码再解码? 即先降采样,然后上采样
- N皇后问题——通俗易懂地讲解(C++)
- svn checkout 提示“由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。”解决方法...
- 刷屏了!这篇Python学习贴,90%的程序员都用的上!
- python数组初始化_python怎么初始化数组
- 可能最详细的教程,新手如何获取Zcash钱包(ZEC)官方地址的方法
- 通过代理实现权限控制
- opencv 学习(3)几何图形的简单识别
- 固态硬盘开盘数据恢复的方法
- Onedrive 1T|5T 网盘获取
- 谢烟客---------Linux之权限
- JPA和Spring-Data-JPA简介
- 新一代网状网协议T-Mesh无线通信技术优势介绍
热门文章
- linux九九乘法表的脚本,shell脚本实现九九乘法表
- 攻防世界misc新手_攻防世界pwn新手练习(CGfsb)
- vue 判断页面加载完成_vue之骨架屏踩坑之路
- Node.js下载安装及各种npm、cnpm、nvm、nrm配置(保姆式教程—提供全套安装包)—nvm的安装与配置(4)
- Python中lambda表达式的语法与应用
- C++ 迭代器失效问题
- linux测试内网速度慢,shell多线程快速检测内网ip是否存活
- linux字符界面下安装鼠标,Linux下有趣的命令:安装oneko实现小猫追鼠标
- 62. 不同路径(JavaScript)
- coredump gdb 调试_Linux下如何使用gdb调试core文件