教你使用VS Code的MySQL扩展管理数据库的方法


Posted in MySQL onJanuary 22, 2022

教你使用VS Code的MySQL扩展管理数据库的方法

我将在本文告诉你如何用VS Code的扩展程序管理MySQL数据库,包括连接到MySQL、新建数据库和表、修改字段定义、简单的查询方法以及导入导出。

在许多情况下,我们需要随时查看数据库的记录来确保程序是否正确执行。也有许多工具提供了可视化的界面来帮助我们实现这些功能,例如phpMyAdmin(需要安装PHP和Web服务器)、Navicat(强大的SQL管理工具,但需要商业授权),也有一些免费的工具可以使用,如Workbench、Sequel Pro、HeidiSQL等等。当然你也可以直接使用mysql控制台去完成所有工作。

但如果你正在使用VS Code来做主力开发,我还是推荐使用这上面的扩展程序来解决这些简单的需求。首先的好处是免费,在钱包有限的情况下不要做破解白嫖党;其次是功能简单,这就意味着我们不需要花精力就能掌握它的使用。

安装MySQL扩展

在VS Code的Extensions(扩展)中可以搜素到许多MySQL的管理工具,排名靠前的即可几乎都可以满足我们的简单需求。搜索MySQL会出来许多相关工具,这里我选择了开发作者为cweijan的这个扩展,当然其他的工具也可以随你喜欢去选择。我一般关注这个工具的安装量、评分和最后更新几个指标。

教你使用VS Code的MySQL扩展管理数据库的方法

安装完成后在你的VS Code界面活动栏便会出现该扩展的按钮。该扩展有中文文档,一些使用方法你可以直接从作者的文档中了解,下面我记录一些在开发中常用的MySQL操作。

添加一个MySQL连接

  • 点击选择活动栏的Database图标;
  • 在之后打开DATABASE边栏中点击Add Connection图标,打开connect编辑页;
  • 将你的连接信息填到必填项,包括Host连接地址、Port端口号、Username用户名以及Password密码;其他可选项可根据需求实际填写,例如需要显示的数据库名Showed Database(若不填则显示所有)等;
  • 最后点击Conncet连接即可完成添加。

教你使用VS Code的MySQL扩展管理数据库的方法

成功添加一个MySQL连接后,该连接便会出现在侧边栏中。默认的连接名由host@port组成,例如localhost@3306。在连接名的右侧分别是Refresh刷新图标、New Database新建数据库图标和Open Terminal打开控制台图标。

添加一个新数据库

该插件没有为我们提供添加数据库的可视化UI,但我们依然可以方便的添加一个新的数据库。

在侧边栏的MySQL连接名旁边点击New Database图标会打开一个SQL编辑页,并已经预先填好了创建新数据的语句:

CREATE DATABASE [name]
    DEFAULT CHARACTER SET = 'utf8mb4';

其中[name]为数据库的名字,请按需求填写。并为数据库设置默认字符集,一般用默认的utf8mb4就好了。最后点击编辑页面上方的Run SQL执行该语句便可以成功添加一个数据库了。

添加、修改表结构

类似的方法,展开刚建好的数据库,在Table表分组的右侧同样有几个功能按钮,分别是Refresh刷新按钮和Table按钮。

点击Table按钮打开新建表的SQL编辑页。该页同样为我们提供了新建表的SQL模板:

CREATE TABLE [name](  
    id int NOT NULL PRIMARY KEY AUTO_INCREMENT COMMENT 'Primary Key',
    create_time DATETIME COMMENT 'Create Time',
    update_time DATETIME COMMENT 'Update Time',
    [column] VARCHAR(255) COMMENT ''
) DEFAULT CHARSET UTF8 COMMENT '';

这里借用Mybatis-Plus文档的新建User表结构,新建一张保存用户数据的表。

CREATE TABLE user
(
    id BIGINT(20) NOT NULL COMMENT '主键ID',
    name VARCHAR(30) NULL DEFAULT NULL COMMENT '姓名',
    age INT(11) NULL DEFAULT NULL COMMENT '年龄',
    email VARCHAR(50) NULL DEFAULT NULL COMMENT '邮箱',
    PRIMARY KEY (id)
);

点击编辑页面上方的Run SQL执行该语句便可以成功添加一张表了,且该表会出现在Table分组下。

如果想对建好的表结构进行修改,可以直接右键该表,选择Design Table来打开表结构编辑页面。在该界面下可以修改表名、添加新的字段、修改已有字段和编辑索引。

数据表界面常用操作

单击Table分组下的表明,可以打开表的数据查看界面。该界面由3部分组成,分别是SQL语句编辑框、常用操作按钮组和数据表区域。打开数据表后默认使用图中的SQL语句展示100条数据,如果需要根据条件查询数据可以自行编辑该语句。点击绿色的Excute sql按钮可以执行该SQL语句。其他的操作如插入新数据、修改数据、删除记录和导出数据等都可以直接在界面中通过按钮和直接编辑表格进行操作。

教你使用VS Code的MySQL扩展管理数据库的方法

执行SQL操作

除了通过UI方式对表和数据进行操作,我们还可以直接使用SQL语句对数据进行任何操作。有这样几种打开SQL编辑页的方式:

  • 在侧栏的数据库名旁边点击Open Query按钮,可以直接打开一个sql编辑页面,输入SQL语句后可以通过点击右上角的Run Selected SQL来执行语句;
  • 在数据表名旁边点击Select Table SQL按钮,可以直接打开一个sql编辑页,并预置了数据查询SELECT语句,通过编辑该语句可以对数据表的数据进行查询;
  • 展开数据表名,会在边栏列出所有字段,点击一个字段名,会打开编辑该字段的sql编辑页,并预置了一条ALTER TABLE语句,通过编辑该语句可以对某列字段的属性进行修改。

导入和导出表结构和数据

在边栏的数据库名右键,会看到有几个数据导入导出的按钮:Export Data(导出数据)、Export Struct(导出表结构)和Import Sql(导入SQL)

在数据表名上右键,同样有Export Data和Export Struct功能按钮。

除了导入和导出数据,还可以生成模拟测试数据。在数据表名右键,选择Generate Mock Data会打开mock.json编辑页面,然后点击右上角的Start Generate按钮会自动在该表内根据mock.json的定义生成一些随机数据。

其他扩展遇到的坑

在选择其他MySQL扩展的过程中也遇到了一些使用问题,这里记录下以作提示。

SQLTools by Matheus Teixeira

这个插件采用主管理界面和数据库驱动分离安装的路子,先安装SQLTools扩展后再安装你所需要使用的数据库驱动。方法是点击扩展介绍界面中的作者名字,会在左侧搜索栏筛选出作者的其他插件,选择SQLTools MySQL/MariaDB并安装便可以使该扩展支持MySQL数据库了。

教你使用VS Code的MySQL扩展管理数据库的方法

除此之外,由于我的Ubuntu 20.04环境安装的MySQL版本是8.0,因此在连接数据库的时候会提示错误:

Request connection/GetChildrenForTreeItemRequest failed with message: ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client

该问题是由于这个MySQL驱动不支持MySQL 8的caching_sha2_password加密方式。如果你要继续用这个插件,可以将数据库的用户加密改为mysql_native_password方式。

同时发布于:使用VS Code的MySQL扩展管理数据库

到此这篇关于使用VS Code的MySQL扩展管理数据库的文章就介绍到这了,更多相关VS Code MySQL扩展管理数据库内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

MySQL 相关文章推荐
MySQL基础(二)
Apr 05 MySQL
JDBC连接的六步实例代码(与mysql连接)
May 12 MySQL
52条SQL语句教你性能优化
May 25 MySQL
linux下导入、导出mysql数据库命令的实现方法
May 26 MySQL
MySQL库表名大小写的选择
Jun 05 MySQL
MySQL query_cache_type 参数与使用详解
Jul 01 MySQL
MySQL分区以及建索引的方法总结
Apr 13 MySQL
Mysql 数据库中的 redo log 和 binlog 写入策略
Apr 26 MySQL
深入理解MySQL中MVCC与BufferPool缓存机制
May 25 MySQL
mysql实现将字符串字段转为数字排序或比大小
Jun 14 MySQL
SQL Server数据库的三种创建方法汇总
May 08 MySQL
彻底解决MySQL使用中文乱码的方法
Jan 22 #MySQL
mysql分组后合并显示一个字段的多条数据方式
Jan 22 #MySQL
MySQL中int (10) 和 int (11) 的区别
Jan 22 #MySQL
JMeter对MySQL数据库进行压力测试的实现步骤
MySQL创建定时任务
Jan 22 #MySQL
SQL基础查询和LINQ集成化查询
Jan 18 #MySQL
MySQL常见优化方案汇总
Jan 18 #MySQL
You might like
PHP判断数据库中的记录是否存在的方法
2014/11/14 PHP
PHP实现的购物车类实例
2015/06/17 PHP
十个PHP高级应用技巧果断收藏
2015/09/25 PHP
PHP 应用容器化以及部署方法
2018/02/12 PHP
为radio类型的INPUT添加客户端脚本(附加实现JS来禁用onClick事件思路代码)
2010/11/11 Javascript
jQuery拖动div、移动div、弹出层实现原理及示例
2014/04/08 Javascript
jQuery中scrollLeft()方法用法实例
2015/01/16 Javascript
浅谈javascript获取元素transform参数
2015/07/24 Javascript
javascript实现动态标签云
2015/10/16 Javascript
js H5 canvas投篮小游戏
2016/08/18 Javascript
关于JavaScript数组你所不知道的3件事
2016/08/24 Javascript
JS插件plupload.js实现多图上传并显示进度条
2016/11/29 Javascript
Node.js用readline模块实现输入输出
2016/12/16 Javascript
JavaScript中的工厂函数(推荐)
2017/03/08 Javascript
使用JavaScript进行表单校验功能
2017/08/01 Javascript
在antd Form表单中select设置初始值操作
2020/11/02 Javascript
浅谈vue在html中出现{{}}的原因及解决方式
2020/11/16 Javascript
[54:24]Optic vs TNC 2018国际邀请赛小组赛BO2 第二场
2018/08/18 DOTA
Python pickle类库介绍(对象序列化和反序列化)
2014/11/21 Python
python pandas消除空值和空格以及 Nan数据替换方法
2018/10/30 Python
使用Python实现正态分布、正态分布采样
2019/11/20 Python
利用pyshp包给shapefile文件添加字段的实例
2019/12/06 Python
Python描述符descriptor使用原理解析
2020/03/21 Python
html5自定义video标签的海报与播放按钮功能
2019/12/04 HTML / CSS
网络艺术零售业的先驱者:artrepublic
2017/09/26 全球购物
荟萃全球保健品:维他购
2018/05/09 全球购物
阿迪达斯香港官网:adidas香港
2019/11/09 全球购物
递归计算如下递归函数的值(斐波拉契)
2012/02/04 面试题
.NET现在共支持多少种语言
2014/02/26 面试题
离职报告范文
2014/11/04 职场文书
2014年安全保卫工作总结
2014/11/13 职场文书
庆七一活动简报
2015/07/20 职场文书
《为人民服务》教学反思
2016/02/20 职场文书
React Native项目框架搭建的一些心得体会
2021/05/28 Javascript
简单聊聊Vue中的计算属性和属性侦听
2021/10/05 Vue.js
python中字符串String及其常见操作指南(方法、函数)
2022/04/06 Python