package com.hanqi.test;

import java.sql.*;

public class jdbcTest {

    public static void main(String[] args) {

        // 测试JDBC

        Connection conn = null;

        try {

            // 1.加载驱动和注册
// 每一种数据库提供不同的驱动名
Class.forName("oracle.jdbc.driver.OracleDriver");// 加载 // 2.连接数据库 :用户名,密码,URL数据库地址
// url-
String strUrl = "jdbc:oracle:thin:@localhost:1521:ORCL"; // 得到连接
conn = DriverManager.getConnection(strUrl, "test1", "1234"); System.out.println("连接数据库成功"); // 3.操作数据库,增删改查
// 执行sql语句完成响应的功能 Statement st = conn.createStatement(); // 执行增删改语句
int i = st.executeUpdate("update T_students set sname = '小四' where sno = '101'");
if (i > 0)
{
System.out.println("操作数据库成功,影响了" + i + "数据");
}
else
{
System.out.println("未修改任何数据 ");
} //DQL 查询
//结果集
ResultSet rs = st.executeQuery("select * from T_students"); //遍历结果集
while(rs.next())
{
//字段序号
String sno = rs.getString(1);
//字段名称
String sname = rs.getString("sname"); Date dt = rs.getDate(4); System.out.println("学号= " + sno + " 学生姓名 = " + sname + " 生日= " + dt.toString());
} //rs.first();//跳到首行 //rs.last();//跳到尾行 //rs.previous();//向上移动 //rs.is rs.close(); st.close(); // 4.关闭连接 //支持占位符和在数据库中预编译
PreparedStatement ps = conn.prepareStatement("update T_students set sname = '小大123' where sno = ?"); // ? - 占位符,需要替换成真正的值
ps.setString(1, "108"); ps.executeUpdate(); System.out.println("执行prepareStatement成功!"); ps.close(); } catch (Exception e) { e.printStackTrace();
System.out.println("连接数据库失败");
}
finally
{
if (conn != null)
{
try
{
conn.close();
}
catch (SQLException e)
{ e.printStackTrace();
}
}
}
} }

学习总结 java 数据库 ResultSet 、PreparedStatement的更多相关文章

  1. Java数据库——ResultSet接口

    使用SQL中的SELECT语句可以查询出数据库的全部结果,在JDBC的操作中数据库的所有查询记录将使用ResultSet进行接收,并使用ResultSet显示内容. 从user表中查询数据 //=== ...

  2. Java数据库ResultSet转json实现

    现在有很多json相关的Java工具,如json-lib.gson等,它们可以直接把JavaBean转换成json格式. 在开发中,可能会从数据库中获取数据,希望直接转成json数组,中间不通过bea ...

  3. 学习练习 java数据库查询小题

    10. 查询Score表中的最高分的学生学号和课程号.(子查询或者排序) 11. 查询每门课的平均成绩. 12.查询Score表中至少有5名学生选修的并以3开头的课程的平均分数. 13.查询分数大于7 ...

  4. Java数据库学习之模糊查询(like )

    Java数据库学习之模糊查询(like ): 第一种方式:直接在SQL语句中进行拼接,此时需要注意的是parm在SQL语句中需要用单引号拼接起来,注意前后单引号之间不能空格 String sql = ...

  5. MySQL学习(一)——Java连接MySql数据库

    MySQL学习(一)——Java连接MySql数据库 API详解: 获得语句执行 String sql = "Insert into category(cid, cname) values( ...

  6. Java学习笔记--JDBC数据库的使用

    参考  hu_shengyang的专栏 : http://blog.csdn.net/hu_shengyang/article/details/6290029 一. JDBC API中提供的常用数据库 ...

  7. MySQL学习(三)——Java连接MySQL数据库

    1.什么是JDBC? JDBC(Java DataBase Connectivity)就是Java数据库连接,说白了就是用Java语言来操作数据库.原来我们操作数据库是在控制台使用SQL语句来操作数据 ...

  8. java数据库学习

    //编写db类/* a加载驱动 驱动类要全路径 包名+类名 suround with try/catch * b设置参数url user pwd * c.连接数据库(import 'Connectio ...

  9. java数据库学习路线和必学知识点!

    java数据库必学知识点! 分享一下数据库的学习路线和必学的知识点! 掌握mysql,Oracle在各个平台上的安装及使用 Mysql数据库基础 mysql概述.优点.运行原理及内存结构 mysql数 ...

随机推荐

  1. Linux下生成patch和打patch

    转自:http://blog.csdn.net/dl0914791011/article/details/17299103 通过diff工具生成补丁, patch工具打上补丁. 在使用diff之前, ...

  2. 【转】C#中判断扫描枪输入与键盘输入

    提出问题:在收货系统中,常常要用到扫描枪扫描条码输入到TextBox,当条码无法扫描时,需要手工输入.如果是扫描枪输入时,我们将自动去判读条码,而手工输入时,最终需要加按回车键确认后判读条码.这时候我 ...

  3. php没有开启Memcache扩展类时

    模拟PHP Memcache 类.当服务器没有开启Memcache扩展的时候.可以采用本类使用方法class_exists('Memcache') or include './Memcache.cla ...

  4. JavaScript对象 属性

    1.ES中的对象是完全动态的,这意味着,在程序执行的时候我们可以任意的添加,修改或删除对象的属性. var stu = { ID: 1 }; //添加新属性 stu.Name = 'ck'; cons ...

  5. protobuffer序列化

    一. 描述对象的proto文件 第一行package:对象经过protobuffer编译后形成java文件,这个文件放在按照package新建的文件夹内 java_package:java类的包名 j ...

  6. [Java Web – 3A] – Spring MVC开发注意事项

    1.使用Maven构建项目 2.SpringMVC 绝对路径的问题 首先要明确一点,在html中,资源文件也是有自己的URL,即href中是支持绝对路径.如下代码: <link href=&qu ...

  7. OAF_解决OAF与Windows版本不兼容黑屏

    20150806 Created By BaoXinjian

  8. HDU 2897 邂逅明下(巴什博奕)

    题意: 每行有三个数字n,p,q,表示一堆硬币一共有n枚,从这个硬币堆里取硬币,一次最少取p枚,最多q枚,如果剩下少于p枚就要一次取完.两人轮流取,直到堆里的硬币取完,最后一次取硬币的算输.对于每一行 ...

  9. POJ 3187 杨辉三角+枚举排列 好题

    如果给出一个由1~n组成的序列,我们可以每相邻2个数求和,得到一个新的序列,不断重复,最后得到一个数sum, 现在输入n,sum,要求输出一个这样的排列,如果有多种情况,输出字典序最小的那一个. 刚开 ...

  10. IDC机房网络测试要求

    IDC机房网络质量要求: 我司项目目前覆盖目标机房是国内BGP机房.三线机房.电信机房.联通机房. 要求XXXX IDC机房到目标机房的网络质量,平均丢包≤0.5%,网络延迟≤50ms;高峰期平均丢包 ...