datagrip 导出 Oracle 数据库结构和数据到sql脚本中

1. 问题描述

想导出 Oracle 数据库到单独的 sql 文件中,查看网上很多教程,几乎都是 MySQL 和 PostgreSQL 的导出,上官网查询帮助,找到相关功能。
目前自己找不到能实现单个 sql 文件导出的,只能实现 数据库结构、数据库内容单独生成两份 sql

2. 数据库右键 – 仅对 MySQL 和 PostgreSQL 有效

在 MySQL 和 PostgreSQL 数据库,右键,有 “demp XXX” 相关选项。但这个其实是利用两个数据库官方提供的数据库备份工具 mysqldump 和 pgdump 来实现的,导入需要使用 mysql 和 pgsql 程序来实现。
这里的操作其实是用datagrip快捷调用这两个官方备份工具。
而 Oracle 没有类似的工具,因此不能直接右键导出

因此,如果系统没装 mysqldump / pgdump,就没法使用这两种功能来导出 mysql / postgresql 数据库了

1. MySQL 备份 – mysqldump

参考网址:http://t.csdn.cn/ktZi9

在这里插入图片描述

2. PostgreSQL 备份 – pgdump

参考网址:http://t.csdn.cn/7Wm3Q
在这里插入图片描述

3. Oracle备份/导出

其他数据库导出相对来说比较麻烦,需要分开导出:

  1. 导出数据库结构和定义 – 使用 SQL generator 实现
  2. 导出对应表 – 选中对应表,右键选中 Import/Export --> Export to files
    这里导出到对应表不能集中导出到一份 sql 脚本中,远啦数据库中的每张表都会独立导出一个 sql 文件,里面记录着对应表的数据

1. 数据库定义(结构)的导出 – SQL generator

数据库右键 – SQL Script – SQL generator –
SQL generator从名称可以看出是专门生成 SQL 脚本的工具,这个工具用于生成与表结构有关的部分 SQL 脚本
在这里插入图片描述

1. 此工具打开方法

  1. 选中要导出的数据库,右键
  2. 在弹出的菜单中选择SQL Script --> SQL Generator

2. 工具的选项和配置

  1. 配置选项
    在这里插入图片描述

    1. 要生成什么脚本
      常用的选项如下:图中有一些翻译不太对,以下面的文字为准
      在这里插入图片描述
      1. Create script completely所有内容全部新建
        用于数据库备份、将数据库完全导入其他电脑中
      2. Definitions provided by RDBMS server数据库中的所有定义
        生成的 sql 脚本只包含定义 (数据库结构,DDL语言),不包含各个表中的数据
      3. Truncate table清空所有表中的内容,但仍保留表
      4. Drop object删除所有定义的东西 (包括视图、存储过程、数据表、函数等)
    2. 常用的选项
      1. use CREATE OR REPLACE syntex 使用 CREATE OR REPLACE 语法。
        通常用于生成用于强制修改的脚本,不论原来数据库是否已经存在对应的数据,都全部覆盖重新生成
      2. use VARCHAR instead of VARCHAR2 字符串变量使用 VARCHAR 类型而不是 VARCHAR2 类型。
        若要考虑导入其他数据库(非Oracle的数据库),可勾选。
        两者的区别参考网页:https://www.cnblogs.com/anningkang/p/oracle.html
      3. use semicolon as staments delimiter 使用分号作为 sql 脚本每个语句的间隔符。
        通常勾选,SQL标准中通常以分号作结尾
      4. reformat generated code 美化生成的 sql 代码。建议勾选
  2. 保存选项
    在这里插入图片描述

    1. 生成单个 sql 脚本:这个界面不用点开,直接点右边三个按键,中间的就是导出为单个文件,在点击后的弹窗中选导出文件的名、路径、格式即可 (sql 脚本指定格式为 .sql 即可)
    2. 根据分类导出多个 sql 脚本:左侧设置导出路径、分类导出选项

3. 生成操作

在这里插入图片描述

  1. 配置选项进行如图的配置
  2. 点击右键弹出保存界面,保持生成的脚本

4. 生成结果

生成结果中包含了

2. 数据库内容的导出

在这里插入图片描述

  1. 选中要导出的数据表
  2. 在弹出的菜单中,选中 Import/Export --> Export to file
  3. 在弹窗中,输出格式选择SQL Insert
    在这里插入图片描述

3. 对比 Navicat

  1. Navicat 能将 数据库结构 + 数据库内容 全部塞到同一个 sql 脚本中,相比之下 Datagrip 就没有这么方便了,需要分别导出表结构和表数据
  2. Datagrip 导出的表数据很多,有几张表就导出几个对应的 sql 文件,并且文件总量还远超 Navicat 的单个文件
  3. 总结:数据库整体导出到 sql 脚本的功能, Datagrip 还有很大不足需要加强
  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
DataGrip导出数据库SQL文件的方法如下: 1. 打开DataGrip并连接到相应的数据库。 2. 在导航栏选择要导出数据库。 3. 右键单击数据库,然后选择"导出"选项。 4. 在弹出的菜单,选择"导出到文件"。 5. 在弹出的对话框,选择要导出的文件路径和文件名,并确保文件格式为SQL。 6. 点击"导出"按钮开始导出过程。 7. 导出完成后,您将在指定的文件路径找到导出SQL文件。 请注意,这个方法适用于MySQL和PostgreSQL数据库。对于Oracle数据库DataGrip可能没有直接的导出到单个SQL文件的选项。您可以尝试使用其他工具或方法来导出Oracle数据库到单个SQL文件。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* *3* [DataGrip 如何导出和恢复整个数据库数据,使用单个 SQL 文件](https://blog.csdn.net/KimBing/article/details/126030769)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [datagrip 导出 Oracle 数据库结构数据sql脚本](https://blog.csdn.net/weixin_44112083/article/details/126860707)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值