1.创建表空间
创建表空间实际上就是创建了一个数据文件

*create tablespace waterbossdatafile 'c:\waterboss.dbf'size 100mautoextend onnext 10mwaterboss 为表空间名称,表名称可以随便取, tablespace为表空间datafile 用于设置物理文件名称,就是数据文件   c:\waterboss.dbf  就是表空间对应的数据文件,这里的waterboss和上面的可以不一样,只能在c盘下,因为虚拟机只有一个盘符,如果plsql安装在windows操作系统,就可以随便取盘符size 用于设置表空间的初始大小,  100m 为100兆autoextend on 用于设置自动增长,如果存储量超过初始大小,则开始自动扩容,扩充多少由next决定,next 用于设置扩容的空间大小,next 10m,为一次性扩充10兆*创建业主表示例:create table t_owners(id number primary key,name varchar2(30),   //  char 固定长度字符类型,最多储存2000字节  varchar2 可变长度字符类型,最多储存4000字节addressid number,housenumber varchar2(30),watermeter varchar2(30),adddate date,ownertypeid number);

2.创建用户
*create user wateruser
identified by itheima
default tablespace waterboss

 wateruser 为创建的用户名identified by 用于设置用户的密码default tablesapce 用于指定默认表空间名称,这样这个用户就在这个表空间里面,一个表空间可以有多个用户

3.用户赋权
*grant dba to wateruser
给用户 wateruser 赋予 DBA 权限后即可登陆,需要输入这个才可以登陆,

4.数据的增删改(该语法和mysql语法一致)

点中表,然后右击:
query data 查看
Edit 修改

*插入数据语法和mysql语法一样INSERT INTO 表名 VALUES(值 1,值 2,...)★示例:insert into T_OWNERS values(1,'李四','黑马6期','1-1','88888',sysdate,1);  //sysdate 是获取当前系统时间
★★★★★commit;  //在输入语法后,一定要输入commit提交事务,一起选中,按F8即可,事务是有隔离级别的,要等前一个事务提交了,后面的一个事务才会执行*修改数据UPDATE 表名 SET 列名 1=值 1,列名 2=值 2,....WHERE 修改条件;★示例:update T_OWNERS set adddate=adddate-3 where id=1;  //把用户id为1的日期往前提前三天,日期可以加减commit;*删除数据DELETE FROM 表名 WHERE 删除条件;★示例:delete from T_OWNERS where id=1;commit;另外一种删除的方法TRUNCATE TABLE 表名称比较 truncat 与 delete 实现数据删除?1. delete 删除的数据可以 rollback,而truncat不可以回滚。2. delete 删除可能产生碎片,并且不释放空间3. truncate 是先摧毁表结构,再重构表结构

5.数据库整体导出与导入
*作用:数据库中数据的迁移
数据库的备份恢复
*分类:整库导入导出
按用户导入导出
按表导入导出
*exp 导出
exp system/itheima full=y full就是全部,y就是yes,这是整库导入导出,导出来的是一个文件
imp 导入
imp system/itheima full=y 导入后,你自己写的表,包括系统表全部恢复
执行命令后会在当前目录下生成一个叫 EXPDAT.DMP,此文件为备份文件。
如果想指定备份文件的名称,则添加 file 参数即可,命令如下
exp system/itcast file=文件名 full=y
示例: imp system/itcast full=y file=water.dmp file最好是dmp,full和file顺序可以变

6.按用户导入导出
*按用户导出
exp system/itcast owner=wateruser file=wateruser.dmp owner=用户名 file指定一个文件路径

*按用户导入imp system/itcast file=wateruser.dmp fromuser=wateruser  fromuser=用户名

7.按表导入导出
*按表导出
exp wateruser/itcast file=a.dmp tables=t_account,a_area , 用导出表的所在的用户名进行操作,wateruser/itcast ,所在表的名称/密码,根据用户找表
//用 tables 参数指定需要导出的表,如果有多个表用逗号分割即可

*按表导入imp wateruser/itcast file=a.dmp tables=t_account,a_area

第二部分:今日重要内容概述以及步骤分析和相应的代码实现

1.利用JDBC完成对业主的增删改的代码实现
[1]先写原始JDBC工具类
/*

  • JDBCUtils 连接数据库,关闭资源 ,oracle数据库
    */
    public class JDBCUtils {

    static{
    //加载驱动
    try {
    Class.forName(“oracle.jdbc.driver.oracleDriver”);
    } catch (ClassNotFoundException e) {
    e.printStackTrace();
    }
    }

    //获取数据库连接
    public static Connection getConnection() throws Exception{
    return DriverManager.getConnection(“jdbc:oracle:thin:@192.168.80.10:1521:orcl”,
    “wateruser”, “itheima”);
    }

    //关闭资源
    public static void closeAll(Connection conn,Statement stam,ResultSet rs){
    if(conn != null){
    try {
    conn.close();
    } catch (SQLException e) {
    e.printStackTrace();
    }
    }
    if(stam != null){
    try {
    stam.close();
    } catch (SQLException e) {
    e.printStackTrace();
    }
    }
    if(rs != null){
    try {
    rs.close();
    } catch (SQLException e) {
    e.printStackTrace();
    }
    }
    }
    }

[2] 创建业主实体类
/*

  • 业主的实体类
    */
    public class Owners {
    private Long id;//编号
    private String name;//业主名称
    private Long addressid;//地址编号
    private String housenumber;//门牌号
    private String watermeter;//水表编号
    private Date adddate;//登记日期
    private Long ownertypeid;//业主类型 ID
    public Long getId() {
    return id;
    }
    public void setId(Long id) {
    this.id = id;
    }
    public String getName() {
    return name;
    }
    public void setName(String name) {
    this.name = name;
    }
    public Long getAddressid() {
    return addressid;
    }
    public void setAddressid(Long addressid) {
    this.addressid = addressid;
    }
    public String getHousenumber() {
    return housenumber;
    }
    public void setHousenumber(String housenumber) {
    this.housenumber = housenumber;
    }
    public String getWatermeter() {
    return watermeter;
    }
    public void setWatermeter(String watermeter) {
    this.watermeter = watermeter;
    }
    public Date getAdddate() {
    return adddate;
    }
    public void setAdddate(Date adddate) {
    this.adddate = adddate;
    }
    public Long getOwnertypeid() {
    return ownertypeid;
    }
    public void setOwnertypeid(Long ownertypeid) {
    this.ownertypeid = ownertypeid;
    }

}

[3] 对业主信息实现增删改
/*

  • 业主信息数据访问类
    /
    public class OwnersDao {
    /

    *新增业主
    */
    public static void add(Owners owners){
    //声明连接者和执行者对象
    Connection conn=null;
    PreparedStatement stam=null; //防止注入攻击

    try {//写具体的获取连接的方法conn = JDBCUtils.getConnection();stam = conn.prepareStatement("insert into T_OWNERS values(?,?,?,?,?,?,?)"); stam.setLong(1, owners.getId());  //业主编号stam.setString(2, owners.getName()); //业主名称stam.setLong(3, owners.getAddressid());  //地址编号stam.setString(4, owners.getHousenumber()); //门牌号stam.setString(5, owners.getWatermeter()); //水表编号stam.setDate(6, new Date(owners.getAdddate().getTime())); //增加日期stam.setLong(7, owners.getOwnertypeid());  //业主类型stam.execute();  //执行} catch (Exception e) {e.printStackTrace();
    }finally {JDBCUtils.closeAll(  conn, stam, null);  //关闭所有资源
    }
    

    }

    /*

    • 修改业主
      */
      public static void update(Owners owners){
      java.sql.Connection conn=null;
      java.sql.PreparedStatement stam=null;
      try {
      conn=JDBCUtils.getConnection();
      stam=conn.prepareStatement(“update T_OWNERS set name=?,addressid=?,housenumber=?,watermeter=?,adddate=?, ownertypeid=? where id=?”);
      stam.setString(1, owners.getName());
      stam.setLong(2, owners.getAddressid());
      stam.setString(3, owners.getHousenumber());
      stam.setString(4, owners.getWatermeter());
      stam.setDate(5, new Date(owners.getAdddate().getTime()));
      stam.setLong(6, owners.getOwnertypeid());
      stam.setLong(7, owners.getId());
      stam.execute();
      } catch (Exception e) {
      e.printStackTrace();
      }finally {
      JDBCUtils.closeAll( conn, stam, null);
      }
      }

    /*

    • 删除业主
      */
      public static void delete(Long id){ //删除是根据业主id进行删除
      java.sql.Connection conn=null;
      java.sql.PreparedStatement stam=null;
      try {
      conn=JDBCUtils.getConnection();
      stam=conn.prepareStatement(“delete from T_OWNERS where id=?”);
      stam.setLong(1, id);
      stam.execute();
      } catch (Exception e) {
      e.printStackTrace();
      }finally {
      JDBCUtils.closeAll(conn, stam, null);
      }
      }
      }

Oracle数据库第一天相关推荐

  1. Oracle数据库-第一章:select语句,数据查询操作

    前言: 1.一个认知 认知什么是oracle? oracle:商业运用第一的关系型数据库 实质:关系型数据库 了解oracle数据库发展历史(文档) 2.二个概念 数据库:数据存储的仓库 关系型数据库 ...

  2. Python 技术篇-连接oracle数据库并执行sql语句实例演示,python连接oracle数据库oci详细配置方法

    Python 连接 Oracle 数据库 第一章:连接 oracle 数据与环境配置 ① 连接 oracle 数据库效果演示 ② oci 下载 ③ oci 配置 ④ 环境变量配置 ⑤ 检测是否有 or ...

  3. Oracle数据库安装图解

    1.首先,去Oracle官网下载个适用于你的操作系统的Oracle 11g数据库软件,百度一下Oracle 11g下载,打开如下图的网址: 2.打开后选择接受该协议,选择下面的Oracle 11g下载 ...

  4. PL/SQL 工具远程连接Oracle数据库方法,plsql免安装oracle客户端直接配置oci实战演示

    PL/SQL 工具远程连接 Oracle 数据库 第一章:PL/SQL 工具配置 ① oci 下载 ② oci 配置 ③ PL/SQL 工具配置 ④ PL/SQL 远程连接 Oracle 数据库演示 ...

  5. oracle数据库期末复习

    oracle数据库 第一章数据库 一. 1.数据库(DB) : (1)特性:共享性,独立性,完整性,减少数据冗余. 2.数据库管理系统(DBMS):功能: (1)数据定义功能:语言, (2)数据操作功 ...

  6. 删除oracle数据库的三种方法,oracle数据库的删除方法详解

    oracle数据库的删除方法详解 1.图形界面删除 练习之前记得创建快照 执行命令之前要保证数据库属于open状态 SQL> alter database open; [oracle@local ...

  7. 物流项目中Oracle 数据库的使用及OGG是如何同步

    文章目录 业务服务器之Oracle 数据库 06-[掌握]-OGG 数据同步之功能概述 07-[掌握]-OGG 数据同步之基本原理及架构 08-[理解]-OGG 数据同步之拓扑结构及支持环境 09-[ ...

  8. oracle取下个月数据,大神看过来,Oracle数据库用sql取下月第一天怎么解?

    最近小编在学习oracle数据库,今天在学习sql语句时突然想用刚学习的oracle数据库函数来取出下个月的第一天是具体多少号.小编首先想到的是用oracle数据库自带的函数NEXT_DAY(date ...

  9. oracle数据库系统中启动数据库第一步,Oracle数据库基础题库【含答案】

    一. 判断题,正确请写写\,错误请写写\, 1.oracle数据库系统中,启动数据库的第一步是启动一个数据库实例.( T )2.Oracle服务器端的监听程序是驻留在服务器上的单独进程,专门负责响应客 ...

最新文章

  1. 默的各种写法图片_SEO标题写法?
  2. 讨论JDK的File.equal()
  3. Maven学习总结(2)——Maven项目构建过程练习
  4. n数码问题,全排列的hash(转载
  5. MySQL事务的幻读
  6. zookeeper 3.4.6安装
  7. 微型统计分析系统README
  8. 电脑word在哪_怎么将图片转换成Word?学会这3种方法,轻松将图片转文字!
  9. 剑指offer之中判断二叉树是不是对称二叉树(递归和非递归实现)
  10. 【渝粤题库】国家开放大学2021春2476旅游学概论题目
  11. 面试题 02.01. 移除重复节点(链表删除操作模板)
  12. 软件以人为本1 - 序 - 写于上海2011 ScrumGathering会后
  13. IEqualityComparerT
  14. Python Jupyter QtConsole
  15. Atitit.字节数组转字符串 base64 base16 Quoted-printable 编码原理设计 attilax 总结
  16. HEVC帧间预测之三——TEncCu::xCheckRDCostMerge2Nx2N函数分析
  17. Openwrt源码LuCI应用完整说明
  18. 计算机编程英语词汇app,计算机编程英语词汇
  19. Linux 课程设计 每日小
  20. 罗技产品序列号追溯条码扫描系统

热门文章

  1. Word2010设置显示中文几号字
  2. 如何搭建一个自己的安全测试实验室WebGoat?
  3. 使用MVC模式实现一个超简单的网上书店系统
  4. 【记录】Tiff图像的前处理,median blur filter 及 linear stretch
  5. 一个预言家的命运:忽悠马云的“骗子”,风口上的先知
  6. 计算机科学大师唐纳德,他是现代计算机科学的鼻祖,编程界的上帝
  7. Mysql8.0和Mysql5.0访问jdbc连接
  8. Linux修复U盘只读问题
  9. Python计算机视觉编程第七章 图像搜索
  10. Android-记账本(一)-效果图