JAVA 程式設計與資料結構 第十一章 JDBC.

Slides:



Advertisements
Similar presentations
第五章 通用网关接口 CGI 简介 Htm l Html + CGI Html + asp 网页可以处理动态的信息.
Advertisements

第二章 简单的 SQL 语句. 本章要点  创建一个简单的表  SQL 语句介绍  最简单的查询语句 select  带有限制条件的查询  查询结果的排序显示.
JSP 与数据库 SQL 语言简介 SQL 语言简介 JDBC 简介 JDBC 简介 使用 JDBC 连接数据库 使用 JDBC 连接数据库 访问数据库 数据库访问应用举例.
第十章 Java 数据库编程. 内容提要 数据库有关概念; 介绍 JDBC 的结构; 重点介绍 JDBC 访问几种数据库的基本过程;
Java 技术与应用 数据库应用 ( 第 14 章 ) 西安交大 卫颜俊 2008 年 12 月 电子信箱: QQ: 网站 : /java.
SQL的简单查询.
第14章 JDBC技术和数据库开发应用.
十一 ASP对数据库的访问.
OceanBase 0.4:从API到SQL 日照
配合< JSP程序设计>例子源代码一起使用
第8章 设计数据库应用网站 本章讲述的主要内容 8.1 数据库基础知识 8.2 使用数据库系统 8.3 SQL查询基础
Access数据库程序设计 总复习.
第14章 預存程序 14-1 預存程序的基礎 14-2 建立與執行預存程序 14-3 預存程序的參數傳遞 14-4 預存程序的傳回值
MVC Servlet与MVC设计模式.
第12章 JDBC数据库应用程序设计.
資料庫 (Database) SQL Server 2008實作
第7章 数据库基础知识 SQL常用命令使用方法 (1) 数据记录筛选: sql="select * from 数据表
第十一讲 JDBC JDBC基础 JDBC驱动程序 JDBC编程 示例.
数据库概述 简而言之,数据库(DataBase)就是一个存储数据的仓库。为了方便数据的存储和管理,它将数据按照特定的规律存储在磁盘上。通过数据库管理系统,可以有效的组织和管理存储在数据库中的数据。如今,已经存在了Oracle、SQL Server、MySQL等诸多优秀的数据库。在这一章中将讲解的内容包括。
数据库原理及设计 --作业.
第 八 章 資料庫安全 本投影片(下稱教用資源)僅授權給採用教用資源相關之旗標書籍為教科書之授課老師(下稱老師)專用,老師為教學使用之目的,得摘錄、編輯、重製教用資源(但使用量不得超過各該教用資源內容之80%)以製作為輔助教學之教學投影片,並於授課時搭配旗標書籍公開播放,但不得為網際網路公開傳輸之遠距教學、網路教學等之使用;除此之外,老師不得再授權予任何第三人使用,並不得將依此授權所製作之教學投影片之相關著作物移作他用。
文科计算机小公共课规划教材 Access 程序设计.
Chap 13 視界與資料庫程式設計.
第三章 管理信息系统的技术基础 主要内容: 数据处理 数据组织 数据库技术 4. 计算机网络.
计算机应用基础 上海大学计算中心.
转正述职报告 乐恩公司 史航
資料庫管理 資管二 賴柏融.
PL/SQL程序设计 过程, 函数 Trigger 对象关系数据库技术.
数据库应用与程序设计.
主机DB2数据库应用与编程 任课老师:王湖南 四川大学计算机(软件)学院.
第15章 Java数据库连接(JDBC) 15.1 创建数据源 15.2 JDBC-ODBC桥接器 15.3 顺序查询
11-1 JDBC的基礎-說明 昇陽公司提出的資料庫中介軟體(Middleware)稱為「JDBC」(Java Database Connectivity),這是一種開放標準的Java程式介面,可以讓Java程式連接資料庫管理系統, 以Java技術來說,就是實作JDBC驅動程式介面(JDBC Driver.
第六章 學習SQL語言.
JDBC 数据库系统与应用 2014年.
数据库操作示例 import java.sql.*; //导入java.sql包 public class JDBCDemo {
基于Hadoop的数据仓库Hive.
Chap 10 SQL定義、操作與控制指令.
胡鹏 王慧锋 TEL: 数据库系统原理课程设计 实验环节1 胡鹏 王慧锋 TEL:
資料庫安全 (Database Security)
崑山科技大學資訊管理系 伺服網頁程式設計 系統開發細部流程 教師:游峰碩.
電子商務網站建制技術與實習(II) 助教:江宜政 吳昇洋.
2018/11/23 面向对象与多线程综合实验-数据库操作 教师:段鹏飞.
ASP.NET 網頁製作教本 – 從基本語法學起
Transact-SQL 語言設計教學.
班級:博、碩子一甲 授課老師:鐘國家 助教:陳國政
SQL Server 2000 数据库入门.
題庫解析:MTA資料庫檢定 授課老師:李春雄 博士
課程名稱:資料庫系統 授課老師:李春雄 博士
課程名稱:資料庫系統 授課老師:李春雄 博士
第三章:包   包(package)是一个可以将相关对象存储在一起的PL/SQL结构。包包含了两个分离的部件------包说明(specification)和包主体(body)。每个部件都单独被存储在数据字典中。包只能存储在数据库中,不能是本地的。除了可以将相关对象作为一组存在一起以外,包也是十分有用的,因为它们在依赖性方面的限制是比较小的。也有许多性能上的优点。
实验4:PL-SQL编程 1.实验目的 2.实验原理 PL/SQL是一种过程化语言,属于第三代语言,本实验在与熟悉使用PL/SQL编程.
医院职工公费医疗系统.
第十七章 資料庫SQL 17-1 SELECT 17-2 INSERT 17-3 UPDATE 17-4 DELETE.
第十二章 SQL語言簡介 講授大綱: 新增資料庫 新增資料表 新增資料 修改資料 刪除資料 查詢資料 透視ASP.NET-第12章
MySQL开发规范 DB组-张浩.
第 7 章 JDBC数据库访问.
第11章 ListView延迟加载效果 授课老师:高成珍 QQ号: QQ群: 、
CS, ZJU 4/18/2019 Chapter 7 数据库.
3.2 Mysql 命令行 1 查看数据库 SHOW DATABASES; 2 创建一个数据库test1 CREATE DATABASE test1; 3 选择你所创建的数据库 USE test1; (按回车键出现Database changed 时说明操作成功!) 4 查看现在的数据库中存在什么表.
第 15 章 自訂函數與順序物件.
Ch11 資料庫範例_與Swing結合 物件導向系統實務.
12-0.開發步驟檢查 游峰碩.
SQL查询语句 蔡海洋.
OceanBase 0.4:从API到SQL 日照
第三章 SQL Server数据管理.
11 檢視表的建立 11-1 檢視表的基礎 11-2 建立檢視表 11-3 修改與刪除檢視表 11-4 編輯檢視表的內容.
資料庫應用與實作 一到六章重點、習題.
第4章 数据查询.
Web安全基础教程
数据库应用技术 天津电大 翟迎建.
Presentation transcript:

JAVA 程式設計與資料結構 第十一章 JDBC

JDBC JAVA程式可用來與資料庫連結,進而操作資料庫中的資料,如取得,更新,儲存等等。 使用之前請先設定電腦為DBMS的主機。再使用JDBC-ODBC Bridge為Driver來連結。

建立連結 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // 第一步:讀進 JDBC Driver String url = "jdbc:odbc:Store";  Connection conn = DriverManager.getConnection(url); // 第二部:建立與資料庫的連結

建立敘述以及表格 接下來我們來建立敘述(Statement)。雖然我們已經建立了連結,不過我們必須要將SQL的指令送進去,才能夠根據這些指令來操控資料庫,所以我們需要Statement。 Statement stmt = conn.createStatement() 建立表單(Table)的SQL指令為: CREATE TABLE Personnel(Name VARCHAR(32), ID INTEGER, Salary FLOAT, Gender String);

加入資料 根據製作的表單內容項目加入一筆資料。 加入資料的SQL語法為 Insert Into Personnel Values('Tom', 11, 37000, '男')

讀取表單資料 將資料存入之後,可以根據需要將其讀取。 選擇資料的SQL語法為 Select ID, Gender, Name From Personnel 選擇資料之後,我們還需要取得其傳回值。這裡我們使用Statement內定的方法executeQuery()來執行查詢。此方法的傳回值為ResultSet物件。

更新資料 更新資料庫中的資料的SQL語法為: UPDATE 表單名 SET 欄位名 = value WHERE 欄位名 LIKE 'value' 意思是在Personnel表單中,把姓名欄為Jack的那一行之ID改為7。

使用Join Table 資料庫可以連結不同的表單來得到資料,不過兩個表單之中必須要有相關連的欄位來找尋到其中的關係。 查詢方式 "SELECT Package.senderName, Personnel.Name FROM Package, Personnel WHERE Package.ID = 10 and Personnel.ID = 10"; Package Personnel ID(人員編號) senderName(寄件人姓名) receiverName(收件人姓名) Fee(運費) State(目前狀況) Name(姓名) Gender(性別) Salary(薪資)

Prepared Statements 有的時候我們會經常使用某一個SQL指令,例如Insert或是Update,在這個狀況下我們可以使用先行定義的敘述,也就是Prepared Statements。 PreparedStatement insertPackage = conn.prepareStatement("Insert Into Package Values ( ?, 'Simon', ?, ? ,'男')"); 這個語法有些部分使用問號代替,這些問號用來表示要輸入的數值,用setXXX()方法來將數值指定到上述的SQL語法,XXX代表資料形態,例如: insertPackage.setString(1, "Dean"); insertPackage.setInt(2, 22); insertPackage.setInt(3, 500); 接下來使用 insertPackage.executeUpdate(): 便可以執行此insert的指令。

Result Sets的操作 當我們取得資料庫中的資料後,會儲存在ResultSet這個物件中。儲存在這個物件中的資料,我們可以將其想像成一個資料表單,一樣是一行一行的型態。ResultSet物件允許我們在這一個表單中一行一行的移動,如此我們可以跳到我們想要的位置去查詢我們欲查詢的資料。 在能夠執行這個Function之前,我們必須先加入幾個參數,如下: Statement stmt = conn.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY); ResultSet rs = stmt.executeQuery("SELECT ID, senderName, State FROM Package where ID < 30");

在Result Sets的表單中移動 absolute()方法指的是將指標移到絕對的行數。所謂絕對的行數便是第一行為1,第二行為2,…..。 而relative()方法便是將指標移到相對的行數,所謂相對的便是與目今的相對,好比說一開始是在第5行,那麼relative(2)指的便是第7行 使用ResultSet物件的next()方法來將取得的資料一一列印出來,因為我們將指標訂在第一筆資料,然後一筆一筆(一行一行)往下取得資料。 如果我們將指標訂在最後一行,然後往上讀取,便會得到次序顛倒的結果。我們可以使用afterLast()方法來將指標訂在最後,而使用previous()方法來往前讀取(此方法剛好相對於next()方法)。

利用Result Sets表單來修改資料內容 為了得到可以修改的資料,我們要在createStatement()方法中輸入參數 Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); 使用updateString()方法來修改Result Set之中的資料。 使用updateRow()方法來將資料庫中的資料也一併修改。 (此時指標必須指著此行)

利用Result Sets表單來加入一行資料 使用moveToInsertRow()方法來將指標移到一個空白行,然後使用updateXXX()方法來將資料輸入,最後使用insertRow()方法來將資料寫入資料庫。

利用Result Sets表單來刪除一行資料 刪除一行資料便顯得相對簡單得多了,我們只要在ResultSet表單中將指標移到我們想要刪除的那一行,然後使用deleteRow()方法即可。 在ResultSet的表單中,可能不會馬上顯示我們所做的修改,如此我們可以呼叫refreshRow()方法來從新整理資料庫內容。