4.0 KiB
Executable File
4.0 KiB
Executable File
DBeaver
macos上, 用来代替Navicat的开源免费工具
下载
直接google搜索下载社区版就行
语言设置
如果需要设置中文, Preferences --> 搜索language
虽然可以, 但不推荐, 因为出了问题, 搜答案还是搜英文来得快
驱动镜像
Preferences 搜索 Maven
, 添加 http://maven.aliyun.com/nexus/content/groups/public/
并置顶, 不然驱动下载很慢
连接mysql
- 点右上角的加号, 输入主机, 端口, 数据库名(似乎不填也可以), 用户名, 密码
- mysql 8 需要在 Drive 里打开一项设置,
allowPublicKeyRetrieval TRUE
, 不然会报错`Public Key Retrieval is not allowed - 第一次连接需要下两个jar驱动, 速度实在够慢的
建表
- 建数据库: databases --> 右键:Create New Database
- 建表: 展开数据库 --> Tables右键:Create New Table
- 建列: 双击表 --> columns --> 右键:Create New Column
- 自增键: 选约束 constraints --> 右键:Create New Constraint --> type选择 PRIMARY KEY -->勾中id
- 外键: 先创建列, 点击 Foreign Keys --> Create New Foreign Key --> 选择 Reference table --> Column 选要约束的列
- 点击 DDL 可以看到完整的建表语句
- 外键约束: ==尽量不使用,维护成本非常高. 只作为一个普通字段==
sql查询
注意点: 在2的位置,需要先选中要查的数据库
设置
外观
- sql字体大小
Preferences -> User Interface -> Appearance -> Colors and Fonts -> DBeaver Fonts -> Monospace font
, 适同于23.0.0版本, 有时不生效, 重启下软件 - 格式化: 搜索format, 选择Default formatter, 快捷键是 ctrl+shift+f
- 快捷键:
Preferences -> User Interface -> keys
, 把 resresh result set 改为⌘R
, 把 apply changes 改为⌘S
技巧
复制为sql脚本
回滚功能
会记录每一步sql脚本变化
==truncate操作无法回滚==
字符集
utf8mb4 是 utf8的超集, 兼容4个字符的表情
使用数据库管理工具只修改库的字符集,修改前的表不会变,修改后新增表会变,字段同理
-- 特殊emoji表情 ✊🙏😃😅🥹😀😇👴🤣
-- 查看库的字符集 [show varuables是查看mysql的系统参数]
show variables where Variable_name like 'collation%';
-- 查看表的字符集
SHOW table status from 库名 like '表名';
-- 表中所有字段的字符集
show full columns from 表名;
-- 修改库的字符集
ALTER DATABASE 库名 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci;
-- 修改表和表中所有字段的字符集
ALTER TABLE 表名 CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
-- 只修改表的字符集
ALTER TABLE 表名 DEFAULT CHARSET=utf8mb4 DEFAULT COLLATE utf8mb4_general_ci;
-- 修改某个字段字符集:
ALTER TABLE 表名 MODIFY nick_name VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
-- 修改库中所有表的字符集
SELECT
CONCAT("ALTER TABLE `", TABLE_NAME,"` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;")
AS target_tables
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA="库名" # 修改为需要更改的数据库名称
AND TABLE_TYPE="BASE TABLE"
模板
在设置里可以添加模板Templates
, 类似关键字自动补全
-- sf
select * from ${table};
复制表
- 用shift+左键选中多个要复制的表
- 右键, Generate SQL -- DDL, 生成多条创建表的sql脚本
- 在需要导入的数据库, 执行这些sql脚本
- ctrl+enter只能执行一条, 右键--->execute-->execute sql script
- 在导入的表上, 右键-->import data --> table --> 一一对应
方法2:
- 在数据库/表上右键选择转存数据库: tools--> Dump databasel
- 在导入的数据库, tools --> Restore database