DBeaver数据表的拷贝过程
通过DBeaver工具链接数据库后,我们就可以通过菜单或者命令功能来实现我们想要的目的。
(一)创建数据库
新建数据库,如下图所示:
——>
在点击“确定”按钮后,可能会遇到失败,此时,我们可以直接通过sql语句来实现,在SQL控制台中输入CREATE DATABASE bien_test,执行sql命令就可以完成创建了。
(二)创建数据表
在bien_test数据库下新建表table_a(名称任意,只要是合法的名称即可),如下所示:

当点击右下角的“保存”按钮时,提示这样的信息“Incorrect table definition; there can be only one auto column and it must be defined as a key”(自增长字段不是主键),此时需要在约束中指定id为主键,如下图所示:

这样设置好后,在点击“保存”,就可以成功创建数据表了。接下来,我们通过菜单或快捷键的方式来创建一个跟tabel_a表格式类似的新表,先选中tabel_a,右击-->菜单-->复制,或者直接使用Ctrl+C快捷键,然后Ctrl+V粘贴,最后点击右下角的“保存”按钮就完成新表的创建了,我们将该表重新命名为tabel_b。注意了,通过复制、粘贴表的方式,只能是将表的各种配置信息进行拷贝,而表中的数据是没有进行拷贝的。
(三)填充数据
在SQL控制台中输入如下两条语句:
insert into bien_test.tabel_a(name, age, sex) values ('Jack', 12, '男');
insert into bien_test.tabel_a(name, age, sex) values ('Anny', 20, '女');
这样就可以在table_a中填充两条示例数据了,如下图所示:

(四)拷贝数据表
1、通过菜单方式进行拷贝
将数据表tabel_a中的数据拷贝到数据表tabel_b中,先选中tabel_b,右击,选择导入数据,如下图所示:
——>
——>
——>
点击上图的红色框,选择源端,我们选择了tabel_a表作为源端,如上图的右边所示。接着,按操作步骤一步一步点击即可。最终,tabel_b的数据如下图所示:

就这样,就完成了数据表中数据的拷贝。此外,我们可以先不创建新表,直接通过源表来导出数据至一个运行中创建的新表,比如:bien_test数据库中暂时没有tabel_c表,我们事先不要创建tabel_c表,同样可以将tabel_a表的数据拷贝到tabel_c表中,具体操作如下:
(1)选中tabel_a表,右击,选择“导出数据”,如下图所示:
——>
——>

(2)在上图中,在Target列中输入新表tabel_c名称,而Mapping这一列会自动默认选择create(表示新建表);接下来,按照界面提示按钮一步一步完成操作即可。tabel_c表中数据最终的效果与tabel_b表中数据一样。由此可见,在拷贝表数据时可以不用事先创建表,直接有源表导出至一个运行时创建的新表。
2、通过sql命令进行拷贝
(1)insert select方式
该方式事先要新建一个表,假设为tabel_d表,才可以将tabel_a表数据拷贝到tabel_d表中。
insert into bien_test.tabel_d(name, age, sex) select name, age, sex from bien_test.tabel_a
通过运行上述命令后完成了数据从tabel_a表拷贝到tabel_d表的过程,注意了tabel_a表中所有的数据都会被拷贝到tabel_d表中。
(2)select into方式
该方式可以不用事先创建表,假设为tabel_e表,通过select into方式也是可以完成数据表的拷贝。
select * into tabel_e from bien_test.tabel_a
经测试,在MySQL中上述语句执行失败,此时我们需要稍作修改一下:
create table tabel_e as select * from bien_test.tabel_a
上述命令会执行成功,最终也是完成了数据的拷贝。需要注意的是,这种方式的拷贝,主键信息是没有被复制过来的!!!
DBeaver数据表的拷贝过程的更多相关文章
- Mysql 提升大数据表的拷贝效率
工作上会经常遇到量级比较大的数据表 :场景: 该数据表需要进行alter操作 比如增加一个字段,减少一个字段. 这个在一个几万级别数据量的数据表可以直接进行alter表操作,但是要在一个接近1000 ...
- mysql数据表简单拷贝及重命名
CREATE TABLE to LIKE from;//拷贝结构 RENAME TABLE from TO to;//重命名
- Oracle 过程中检查数据表存在与否
在过程中,尤其是每天执行的任务,通常要检查查询的数据表存在不存在,如果不存在则等待一段时间在进行执行,以下代码实现了这个功能,如果表不存在,抛出异常,交给异常处理代码,确保数据完整性 使用方法:p_C ...
- mysql从一个表中拷贝数据到另一个表中sql语句
这一段在找新的工作,今天面试时,要做一套题,其中遇到这么一句话,从一个表中拷贝所有的数据到另一个表中的sql是什么? 原来我很少用到,也没注意过这个问题,面试后我上网查查,回来自己亲手写了写,测试了下 ...
- linux 通过scp 复制备份恢复mysql数据表
最近客户有个需求,小弟对于运维的东西也是半瓶醋,所以就果断的摸索了下.折磨了一个晚上终于算是搞定了.因为是两个不同的服务器,本来想用ftp,无奈小弟不是很熟悉,所以就用了scp,但是scp有个问题就是 ...
- MySQL 笔记整理(13) --为什么数据表删掉一半,表文件大小不变?
笔记记录自林晓斌(丁奇)老师的<MySQL实战45讲> (本篇内图片均来自丁奇老师的讲解,如有侵权,请联系我删除) 13) --为什么数据表删掉一半,表文件大小不变? 我们还是以MySQL ...
- OGG实验:喂奶间隔数据表通过OGG配置同步
我之前在<使用SQL计算宝宝每次吃奶的时间间隔(数据保障篇)>中提到数据实时同步的方案,其中有一种是数据表通过OGG进行同步,当时没有详细展开测试,只给了之前学习OGG时的配置示例.由于之 ...
- MYSQL数据表损坏的原因分析和修复方法小结
MYSQL数据表损坏的原因分析和修复方法小结 1.表损坏的原因分析 以下原因是导致mysql 表毁坏的常见原因: 1. 服务器突然断电导致数据文件损坏. 2. 强制关机,没有先关闭mysql 服务. ...
- Oracle转移数据表空间存储位置
问题描述:Oracle表空间创建到了C盘,发现C盘的空间不够,现在将表空间的文件转移到D盘下. 操作方法: 1. 先登录sqlplus,登录用户.在cmd中输入:sqlplus /nologSQL&g ...
随机推荐
- linux svn 批量添加
近期开始用svn来进行代码版本的维护管理,之前一直用git,两个感觉大同小异.用svn命令行来添加文件的话需要一个一个的选,很是蛋疼,于是就写了个shell脚本,批量添加文件,还在改进中... #!/ ...
- [讲解]网络流最大流dinic算法
网络流最大流算法dinic ps:本文章不适合萌新,我写这个主要是为了复习一些细节,概念介绍比较模糊,建议多刷题去理解 例题:codevs草地排水,方格取数 [抒情一下] 虽然老师说这个多半不考,但是 ...
- Python数据库MySQL之数据备份、pymysql模块
一 IDE工具介绍 生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具 下载链接:https://pan.baidu.com/s/1bpo5mqj 掌握: #1. 测试+链接 ...
- Netty:Channel
上一篇我们通过一个简单的Netty代码了解到了Netty中的核心组件,这一篇我们将围绕核心组件中的Channel来展开学习. Channel的简介 Channel代表着与网络套接字或者能够进行IO操作 ...
- error: cannot bind non-const lvalue reference of type
这种问题一般是因为引用了匿名变量.涉及左值和右值的区别.一般函数的参数如果是一个表达式,那将会产生一个第3方的匿名变量传入这个函数中,此时如果引用,没用什么实际意义. c++中临时变量不能作为非con ...
- 根据银行卡号 获取银行名称及银行logo
根据银行卡号码获取银行卡归属地信息接口地址: https://ccdcapi.alipay.com/validateAndCacheCardInfo.json?_input_charset=utf-8 ...
- 浅谈Java参数传递机制
Java参数传递 才疏学浅,今天才知道Java中方法的参数是可以传递对象引用进去的. Java的参数传递机制很简单,其实就是值传递. 所谓值传递,也就是我们在给方法传递一个参数的时,传递的 ...
- (29)ASP.NET Core3.1 Swagger(OpenAPI)
1.什么是Swagger/OpenAPI? Swagger是一个与语言无关的规范,用于描述REST API.因为Swagger项目已捐赠给OpenAPI计划,所以也叫OpenAPI.它允许计算机和人员 ...
- Linux基础篇,磁盘及文件使用管理
在windows系统下,我们可以使用图形化界面很明了的看出当前硬盘使用量与某个文件的占用空间大小和文件数量.但是在linux系统中,我们应该如何得到这些信息呢? 当然是功能强大的df与du了. 一.d ...
- 37 net 网络编程
InetAddress:此类表示互联网协议 (IP) 地址. Stringbuilder getHostAddress() 返回 IP 地址. Stringbuilder getHostName() ...