本次任务需要设计一个图书管理系统,可以使用Oracle数据库来存储数据。以下是实现该系统的基本步骤:

  1. 创建数据库表

首先需要创建用于存储图书信息的数据库表,包括图书编号、图书名称、作者、出版社、出版日期等字段。建议使用主键来唯一标识每一本图书。

CREATE TABLE book (book_id INT PRIMARY KEY,book_name VARCHAR2(50),author VARCHAR2(50),publisher VARCHAR2(50),publish_date DATE
);

2.插入数据

插入图书信息数据至book表中。

INSERT INTO book (book_id, book_name, author, publisher, publish_date) VALUES (1, 'Java编程思想', 'Bruce Eckel', '机械工业出版社', TO_DATE('2002-03-01', 'YYYY-MM-DD'));
INSERT INTO book (book_id, book_name, author, publisher, publish_date) VALUES (2, '深入浅出MySQL', '姜承尧', '电子工业出版社', TO_DATE('2013-05-01', 'YYYY-MM-DD'));
INSERT INTO book (book_id, book_name, author, publisher, publish_date) VALUES (3, 'C++ Primer Plus', 'Stephen Prata', '人民邮电出版社', TO_DATE('2012-11-01', 'YYYY-MM-DD'));

3创建用户和授权

创建一个用于连接数据库的用户,并为其授权,使其拥有所有book表的读写权限。

CREATE USER book_user IDENTIFIED BY password;
GRANT ALL PRIVILEGES ON book TO book_user;

4.开发Java程序

使用JDBC驱动连接Oracle数据库,并实现基本的增删改查等功能。

具体代码示例如下:

import java.sql.*;public class BookManager {// 数据库连接参数private static final String DB_URL = "jdbc:oracle:thin:@localhost:1521:xe";private static final String DB_USER = "book_user";private static final String DB_PASSWORD = "password";// 数据库连接对象、会话对象和结果集对象private Connection conn = null;private Statement stmt = null;private ResultSet rs = null;// 连接并初始化数据库public void init() {try {// 加载JDBC驱动Class.forName("oracle.jdbc.driver.OracleDriver");// 获取数据库连接conn = DriverManager.getConnection(DB_URL, DB_USER, DB_PASSWORD);// 创建会话对象stmt = conn.createStatement();} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException e) {e.printStackTrace();}}// 关闭数据库连接和会话对象public void close() {try {if (rs != null) rs.close();if (stmt != null) stmt.close();if (conn != null) conn.close();} catch (SQLException e) {e.printStackTrace();}}// 查询图书信息public void query() {try {String sql = "SELECT * FROM book";rs = stmt.executeQuery(sql);while (rs.next()) {int id = rs.getInt("book_id");String name = rs.getString("book_name");String author = rs.getString("author");String publisher = rs.getString("publisher");Date date = rs.getDate("publish_date");System.out.println(id + "\t" + name + "\t" + author + "\t" + publisher + "\t" + date);}} catch (SQLException e) {e.printStackTrace();}}// 添加图书信息public void add(int id, String name, String author, String publisher, Date date) {try {String sql = "INSERT INTO book VALUES (" + id + ", '" + name + "', '" + author + "', '" + publisher + "', TO_DATE('" + date + "', 'YYYY-MM-DD'))";stmt.executeUpdate(sql);System.out.println("添加成功!");} catch (SQLException e) {e.printStackTrace();}}// 修改图书信息public void update(int id, String name, String author, String publisher, Date date) {try {String sql = "UPDATE book SET book_name = '" + name + "', author = '" + author + "', publisher = '" + publisher + "', publish_date = TO_DATE('" + date + "', 'YYYY-MM-DD') WHERE book_id = " + id;stmt.executeUpdate(sql);System.out.println("修改成功!");} catch (SQLException e) {e.printStackTrace();}}// 删除图书信息public void delete(int id) {try {String sql = "DELETE FROM book WHERE book_id = " + id;stmt.executeUpdate(sql);System.out.println("删除成功!");} catch (SQLException e) {e.printStackTrace();}}public static void main(String[] args) {BookManager bm = new BookManager();bm.init();bm.query();bm.add(4, "Python编程入门", "Mark Lutz", "人民邮电出版社", Date.valueOf("2014-06-01"));bm.update(1, "Java核心技术", "Cay S. Horstmann", "机械工业出版社", Date.valueOf("2017-05-01"));bm.delete(3);bm.query();bm.close();}
}

Oracle图书管理系统相关推荐

  1. 图书管理系统java+Oracle

    图书管理系统java+Oracle 一.课程设计实验目的 二.课程设计任务及要求 三.数据库设计 四.程序设计 五.软件使用说明 六.课程设计总结 七.附录 一.课程设计实验目的 课程设计围绕课程的整 ...

  2. oracle图书管理项目案例,C#+oracle做的图书管理系统

    [实例简介] 学生时代用C#+Oracle做的管理系统,希望对学生有用 [实例截图] [核心代码] 图书管理系统 └── 图书管理系统 ├── 123课程设计报告.doc ├── oracle课程设计 ...

  3. oracle课程设计图书销售系统,oracle课程设计图书管理系统

    oracle课程设计图书管理系统 数据库课程设计 设计名称:图书管理系统 组员:尚靖伟(122068) 张红凯(122072) 班级:计 G121 班信息工程学院计算机系 2013 年 6 月 27 ...

  4. Oracle数据库图书管理系统的课程设计

    Oracle数据库图书管理系统的课程设计 在Oracle数据库最初的sys用户XE数据库下执行: --删除表空间 drop tablespace tablespace_book including c ...

  5. Oracle学习—图书管理系统_存储过程

    图书管理系统(存储过程实现sql) 图书管理系统(每个学生最多能借本书) 创建三张表对业务逻辑的分析,然后创建数据库 图书信息表tb_book; 学生信息表tb_stu; 借书记录表tb_record ...

  6. hive导数据到mysql 自增主键出错_python+mysql做一个图书管理系统?

    开发一个图书管理系统,首先需要对此项目进行一个简单的需求分析: 主要功能包括: 图书信息 图书分类 用户信息 用户借阅统计 管理员 管理员权限 接下来可以进行数据库的设计,在这里我提供一个简单的数据库 ...

  7. #图书管理系统的设计与实现#

    引言:本系统采用三层架构(表示层.数据层.控制层):表示层使用当前流行的jsp文件,数据层则使用Oracle数据库,使用jdbc技术进行连接:控制层使用Servlet进行逻辑处理和界面的转变. 关键技 ...

  8. 基于vue2+element+springboot+mysql+jpa+mybatis的图书管理系统

    目录 整套系统源码下载 1.图书管理系统pc端 2.图书借阅系统app端源码 一.开发背景 二.用到的技术 三.开发使用的IDE 四.搭建开发环境 五.启动项目 六.图书管理系统使用说明 七.结语 八 ...

  9. PHP实现一个简单的图书管理系统

    刚收到了一个消息,老师竟然布置了一个课设 ,要求做一个后台管理系统.做归做,但是!本着为老师节省时间的心态,我花了大量的时间,消耗了无数脑细胞扫描了一遍老师给的课题,最终掐指一算选了一个最简单的--& ...

最新文章

  1. 掌握Redis分布式锁的正确姿势
  2. Verilog HDL程序设计——基本要素
  3. iqueryable怎么进行操作_钢结构施工要点有哪些?怎么进行操作?
  4. Ubuntu18.04如何让桌面软件默认root权限运行?
  5. 如何配置虚拟机的快照报警
  6. TIOBE 4月编程语言排行榜:C++重回前三,PHP下降明显
  7. 将绘图保存到图像文件,而不是使用Matplotlib显示
  8. Navicat安装与破解
  9. linux课程--实验三 vi 基本操作
  10. RPA机器人如何调用USB SERVER
  11. 小区外的蒸米粉和Linux RCU锁
  12. ubuntu下安装小企鹅输入法
  13. background简写
  14. 开源WPF第三方库【Newbeecoder.UI】分页控件
  15. 解决IE浏览器jQuery执行ajax不响应问题
  16. jquery validate插件onfocosout/onkeyup出错的解决方法
  17. 电商平台怎么解决税务问题?
  18. 调用Runtime.getRuntime().exec()执行Linux脚本导致程序挂住的问题分析
  19. P2【商业级MMORPG大型网游】Unity全栈开发 笔记
  20. Aspose.PDF for Java 20.x

热门文章

  1. MySQL CAST()函数用法
  2. 关于QT4的一些学习杂记
  3. C语言实现顺序栈的基本操作(初始化、判断空、入栈、出栈、获取栈顶元素)
  4. Vue 路由懒加载根据根路由合并chunk块
  5. 随机生成邀请码、随机生成10位数字、随机生成英文字母+数字
  6. MySQL全量同步和增量同步-
  7. 1 基于搜索的路径规划 —— Dijkstra算法(python)
  8. (闲杂笔记1) 控件尺寸与像素关系
  9. 微软亚洲研究院院长:“中国不妨引进科技外援”
  10. TranUnet 复现[Errno 2] No such file or directory: ‘./model/TU_Synapse224/TU_pretrain_ViT-B_16_skip3_ep