使用 Navicat 官方免费版来实现从 DAT 文件填充 MySQL 8 表

在异构存储库之间迁移数据(即源数据库和目标数据库来自不同供应商的不同数据库管理系统)会遇到一些挑战。在某些情况下,可以同时连接两个数据库。但有时根本无法实现。面对这样的困境,数据库从业者别无选择,只能从转储文件填充表。在这个过程中,Navicat 可以提供很大的帮助。导入向导允许你从各种源导入数据到表/集合,包括 CSV、TXT、XML、DBF 等。此外,你还可以将设置保存为配置文件,以便将来使用或设置自动化任务。在今天的博客,我们将使用免费的 Navicat Premium Lite 17 ,使用 Navicat 导入向导从 PostgreSQL "dvdrental" database 迁移数据到 MySQL 8 实例。

在本教程中,我们将使用 PostgreSQL DAT 文件填充 MySQL 8 中的 film 表。下面是表设计器中的表定义:

film_table_definition (96K)

要启动导入向导,请右键单击 Navicat 导航窗格中的目标表(或在 macOS 中按住 Ctrl-Click),然后从弹出的菜单中选择“导入向导...”:

import_wizard_command (78K)

向导的第一个屏幕是我们选择源文件的地方。请注意,精简版只支持基于文本的文件,如 TXT、CSV、XML 和 JSON。虽然我们有一个 .dat 文件,但我们可以选择文本文件选项,其中包括 .txt、.csv 和 .dat 格式:

import_wizard_data_format (48K)

在下一个屏幕中,我们将选择 DAT 文件。每个表都有一个文件。电影表的文件名为“3061.dat”:

import_wizard_open_file_dialog (152K)

接下来是设置分隔符。记录使用换行(LF)字符分隔,而列则使用制表符(TAB)分隔。文本值周围没有引号,因此一定要移除“文本识别符号”文本框中的双引号(")字符:

import_wizard_delimiter (45K)

在下一个屏幕中,你会看到一些额外的选项。在这里,我们必须取消选中“字段名称行”框,因为 DAT 文件不包含字段名。我们还需要将“日期顺序”改为“年/月/日”("YMD"),并用破折号 (-) 替换正斜线 (/) 分隔符,因为我们要导入的日期是 YYYY-MM-DD hh:mm:ss.ms,即2013-05-26 14:50:58.951 的格式:

import_wizard_additional_options (58K)

我们可以选择现有表格或创建新表格。由于我们在启动导入向导时选择了目标表,因此它应该显示在这里:

import_wizard_target_table (40K)

下一步是将源字段映射到目标表中的字段。在这里,我们不能假定它们会一致。快速查看 DAT 文件中的一个条目就会发现,last_update 和 special_features 列是相反的:

5 African Egg A Fast-Paced Documentary of a Pastry Chef And a Dentist who must Pursue a Forensic Psychologist in The Gulf of Mexico 2006 1 6 2.99 130 22.99 G 2013-05-26 14:50:58.951 {"Deleted Scenes"} 'african':1 'chef':11 'dentist':14 'documentari':7 'egg':2 'fast':5 'fast-pac':4 'forens':19 'gulf':23 'mexico':25 'must':16 'pace':6 'pastri':10 'psychologist':20 'pursu':17

我们可以右键单击(或在 macOS 中按住 Ctrl-Click)对话框中的任意位置,然后从上下文菜单中选择“直接匹配全部”,将字段快速映射到目标表中的字段。不过,一旦这样做了,我们就必须从目标字段下拉菜单中手动选择 last_update 和 special_features 列来更改它们的顺序:

import_wizard_field_mappings (75K)

请注意,字段 13 (f13) 可以安全忽略。

对于导入模式,我们可以“追加”或“复制”记录,因为表应该是空的:

import_wizard_import_mode (62K)

从一种数据库类型迁移到另一种数据库类型时,很有可能会遇到数据转换错误。因此,取消选择 “高级”中的“使用扩展插入语句”复选框是个不错的做法。这样做会使 Navicat 为每条记录发出单独的 INSERT 语句,而不是使用以下语法合并多条记录:

INSERT INTO `film` VALUES 
  (1, 'African Egg', 'A Fast-Paced...'), 
  (2, 'Rumble Royale', 'A historical drama...'), 
  (3, 'Catherine the Great', 'A new take on...'), 
  etc...

import_wizard_advanced_options (74K)

现在,点击“开始”按钮启动导入程序。

不出所料,虽然出现了几个错误(确切地说是 3 个),但 1003 行中的 1000 行已经添加到了目标表中!

import_wizard_results (111K)

结语

Navicat 的导入向导可以大大减少在异构资源库之间迁移数据所花费的时间。它支持多种输入,包括 CSV、TXT、XML、DBF、ODBC 数据源等。

有兴趣试试 Navicat Premium Lite 17 吗?你可以在 这里 免费下载。它适用于 Windows、macOS 和 Linux 操作系统。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/945293.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Three.js滚动画案例精选

今天为大家带来 3 个基于滚动动画的网站 Demo,它们不仅视觉效果惊艳,而且每个案例的源码都已开源在 GitHub,方便大家学习和借鉴! 3D照片墙滚动 通过滚动操作实现 3D 网格效果以及动态过渡动画。这个案例使用了 GSAP 的 SplitTex…

今日收获(C语言)

一.文件的打开 有这样一个结构体,它内部是文件信息区,文件信息区中的变化可以影响到硬盘中的数据。这个结构体的名字是FILE。我们如果想要写代码对文件进行各种操作,就需要一个指向文件信息区的指针,这个指针的类型是FILE*&#…

【C++】九九乘法表编程题详解与多角度对比分析

博客主页: [小ᶻ☡꙳ᵃⁱᵍᶜ꙳] 本文专栏: C 文章目录 💯前言💯题目概述题目描述 💯老师的实现方法代码解析优点不足 💯我的实现方法代码解析优点不足 💯实现方法对比💯优化与扩展代码优化…

RK3568 bsp 9 - USB调试记录

文章目录 1、环境介绍2、RK3568 USB资源介绍3、配置目标4、dts配置4.1、USB3.0 OTG4.2、USB2.0 Host 2 和 USB2.0 Host 3 5、kernel配置5.1、USB PHY CONFIG5.2、USB Host CONFIG5.3、USB OTG CONFIG5.4、USB外设CONFIG5.4.1、Mass Storage Class CONFIG5.4.2、USB HID CONFIG …

图像描述/字幕开源模型与数据集全览

图像描述/字幕(Image Captioning)是用文字描述图像内容的任务,属于计算机视觉和自然语言处理的交叉领域。大多数图像描述系统采用编码器-解码器(encoder-decoder)框架,其中输入图像被编码为中间表示形式&am…

mongodb(6.0.15)安装注意事项,重装系统后数据恢复

window10系统 上周重装了系统,环境变量之类的都没有了。现在要恢复。 我电脑里之前的安装包没有删除(虽然之前也没在C盘安装,但是找不到了,所以需要重新下载安装),长下图这样。这个不是最新版本&#xff0…

Redis单线程快的原因

基于内存操作:Redis将数据存储在内存中,使得数据的读写速度极快,这是其性能优势的主要原因。单线程避免上下文切换:在多线程环境下,CPU核数有限,线程上下文切换会带来性能损耗。Redis采用单线程&#xff0c…

IOS safari 播放 mp4 遇到的坎儿

起因 事情的起因是调试 IOS 手机下播放服务器接口返回的 mp4 文件流失败。对于没调试过移动端和 Safari 的我来说着实费了些功夫,网上和AI也没有讲明白。好在最终大概理清楚了,在这里整理出来供有缘人参考。 问题 因为直接用 IOS 手机的浏览器打开页面…

import org.springframework.data.jpa.repository.JpaRepository<T, ID>;

org.springframework.data.jpa.repository.JpaRepository<T, ID> 接口中的 ID 类型参数。 理解 JpaRepository<T, ID> 中的 T 和 ID&#xff1a; T (Type): T 代表的是你想要操作的 实体类 的类型。例如&#xff0c;如果你有一个名为 User 的实体类&#xff0c;那…

Ubuntu网络配置(桥接模式, nat模式, host主机模式)

windows上安装了vmware虚拟机&#xff0c; vmware虚拟机上运行着ubuntu系统。windows与虚拟机可以通过三种方式进行通信。分别是桥接模式&#xff1b;nat模式&#xff1b;host模式 一、桥接模式 所谓桥接模式&#xff0c;也就是虚拟机与宿主机处于同一个网段&#xff0c; 宿主机…

RT-DETR融合[CVPR2020]EfficientDet中的BiFPN结构

RT-DETR使用教程&#xff1a; RT-DETR使用教程 RT-DETR改进汇总贴&#xff1a;RT-DETR更新汇总贴 《EfficientDet: Scalable and Efficient Object Detection》 一、 模块介绍 论文链接&#xff1a;https://arxiv.org/abs/1911.09070 代码链接&#xff1a;https://github.com/…

Unity 实现Canvas显示3D物体

新建一个UI相机&#xff0c;选择渲染层为UI 将主相机的渲染层去掉UI层 、 将Canvas的RenderMode设置为Screen Space - Camera,将RenderCamera设置为UI相机 新建3D物体的UI父物体&#xff0c;并将3D物体的层级设置为UI层 适当的放缩3DObjParent&#xff0c;让3D物体能显示出来…

RabbitMQ基础篇之Java客户端快速入门

文章目录 需求 项目设置与依赖管理 配置RabbitMQ的连接信息创建队列与消息发送创建消费者&#xff08;消息接收&#xff09;环境准备与操作 需求 利用控制台创建队列 simple.queue在 publisher 服务中&#xff0c;利用 SpringAMQP 直接向 simple.queue 发送消息在 consumer 服…

解决SecureCRT登录后无法用Tab键补齐命令

解决SecureCRT登录后无法用Tab键补齐命令 打开SecureCRT软件&#xff0c;选项—全局选项—常规—默认的会话设置—编辑默认的设置—连接—-右侧的协议选择为Telnet &#xff1b;在左侧&#xff0c;选择telnet&#xff0c;在右侧的高级框里“强制每次一个字符模式”勾上&#x…

音视频入门基础:MPEG2-TS专题(23)——通过FFprobe显示TS流每个packet的信息

音视频入门基础&#xff1a;MPEG2-TS专题系列文章&#xff1a; 音视频入门基础&#xff1a;MPEG2-TS专题&#xff08;1&#xff09;——MPEG2-TS官方文档下载 音视频入门基础&#xff1a;MPEG2-TS专题&#xff08;2&#xff09;——使用FFmpeg命令生成ts文件 音视频入门基础…

运行python程序报错 undefined symbol: ffi_type_uint32 的参考解决方法

文章目录 写在前面一、问题描述二、解决方法参考链接 写在前面 自己的测试环境&#xff1a; Ubuntu20.04 ROS-Noetic 一、问题描述 运行 python 程序出现如下问题&#xff1a; Traceback (most recent call last):File "<string>", line 1, in <module&…

go 模拟TCP粘包和拆包,及解决方法

1. 什么是 TCP 粘包与拆包&#xff1f; 粘包&#xff08;Sticky Packet&#xff09; 粘包是指在发送多个小的数据包时&#xff0c;接收端会将这些数据包合并成一个数据包接收。由于 TCP 是面向流的协议&#xff0c;它并不会在每次数据发送时附加边界信息。所以当多个数据包按顺…

Day10补代码随想录 理论基础|232.用栈实现队列|225.用队列实现栈|20.有效的括号|1047.删除字符串中的所有相邻重复项

栈和队列理论基础 抽象认识 栈是先进后出(FIFO)&#xff0c;队列是先进先出(LIFO) 队首(先进))队尾(后进)栈顶(后进)栈底(先进) 栈(Stack) 只在一端进行进出操作(只在一端进一端出)像个篮球框&#xff0c;取用篮球从一端进出。 /进栈 int a[1000];//足够大的栈空间 int top-1…

Gemma2 2B 模型的model.safetensors.index.json文件解析

Gemma2 2B 模型的 model.safetensors.index.json 文件解析 在使用 Gemma2 2B 模型或其他大型预训练模型时&#xff0c;model.safetensors.index.json 文件起到了索引的作用&#xff0c;它帮助我们了解模型的结构、参数存储方式以及如何加载模型的具体权重。本博客将深入解析该…

大模型系列——旋转位置编码和长度外推

绝对位置编码 旋转位置编码 论文中有个很直观的图片展示了旋转变换的过程&#xff1a; 对于“我”对应的d维向量&#xff0c; 拆分成d/2组以后&#xff0c;每组对应一个角度&#xff0c;若1对应的向量为(x1,x2)&#xff0c;应用旋转位置编码&#xff0c;相当于这个分量旋转了m…