Navicat for MySQL 使用基础与 SQL 语言的DDL

一、目的:
Navicat for MySQL 是一套专为 MySQL 设计的高性能数据库管理及开发
工具。它可以用于任何版本 3.21 或以上的 MySQL 数据库服务器,并支持大
部份 MySQL 最新版本的功能,包括触发器、存储过程、函数、事件、视图、
管理用户等。
SQL(Structured Query Language)语言是关系数据库的标准语言。是一种
介于关系代数与关系演算之间的结构化查询语言,其功能并不仅仅是查询,
SQL 语言是一个通用的、功能极强的关系数据库语言。
本实验首先了解并掌握如何使用 Navicat for MySQL 连接数据库、浏览
数据库对象、运行 SQL 语句和 SQL 脚本,以及如何编辑和运行 SQL 语句。
Navicat for MySQL 可以提高工作效率并简化数据库开发任务。
本次实验还了解 SQL 语言中 DDL 语言的 CREATE、DROP、ALTER 对表、索
引、视图的操作,掌握在 Navicat for MySQL 中用 DDL 语言进行对表、索引、
视图的增加、删除和改动。掌握使用 SQL 语句增加或删除约束,加深对完整性
概念的理解,达到灵活应用的目的。掌握使用 SQL 语句定义和删除同义词。
二、重点与难点:
1 、重点:
(1) Navicat for MySQL 的安装及启动。
(2) Navicat for MySQL 连接数据库、浏览数据库对象、运行 SQL 语句和
SQL 脚本。
(3) SQL 语句定义表结构(创建、修改和删除)。 (4) SQL 语句定义索引(创建、删除)。
(5) SQL 语句定义视图(创建、删除)。
(6) SQL 语句定义同义词(创建、删除)。
2 、难点:
(1) Navicat for MySQL 连接数据库的参数配置,包括用户名、密码、主机名、端口。
(2) 完整性约束的定义、增加及删除。
(3) 同义词的定义与删除。
三、过程:
(一)预习
(1)
熟悉 SQL 中的 CREATE DROP ALTER 语句的格式及所用的关键字
含义及用法。
(2)
掌握完整性约束定义、增加和删除的一般用法。
(3)
掌握同义词定义、删除的一般用法。
(二)原理
观看 Navicat for MySQL 连接配置教学视频,在 Navicat for MySQL 中完成连
接参数配置,并进行数据库连接、浏览数据库对象、运行 SQL 语句和 SQL
脚本等操作。
Navicat for MySQL 中使用 CREATE 命令完成对表、索引、视图、同
义词的创建,使用 DROP 命令完成对表、索引、视图、同义词的删除,使用
ALTER 命令对表结构进行修改及完整性约束的增加、删除。
(三)内容
使用 Navicat for MySQL 管理数据库对象首先要创建数据库连接。
1. 双击桌面 Navicat for MySQL 快捷方式。
2. 在文件菜单中,先选择新建连接,再选择 MySQL...
3. 在新建连接常规设置页面下,连接名中输入“本地数据库”,主机名或 IP
地址输入“ localho st ”,端口保持 3306 不变,用户名保持 root 不变,密码输
入“ mysql”, 然后单击连接测试按钮。
4. 测试连接状态已成功,但没有保存该连接。要保存该连接,请单击连接成
功提示框的确定按钮后,再单击 MySQL – 新建连接的确定按钮。
5. 保存了该连接,可以在列表中看到该数据库。
6. 双击本地数据库连接名,连接到本地 MySQL 数据库服务器上。我们可以
看到本地数据库服务器上有四个不同名称的数据库。
7. 双击 mysql 数据库,连接到 mysql 数据库上。
8. 选择 help_keyword 表,单击右键选择设计表。
9. 查看表定义、索引、外键、触发器。
10. 要查看该表数据,请在对象页,单击 help_keyword 表,单击右键选择打
开表。
11. 数据随即显示。
12. 运行 Navicat for MySQL ,连接到 test 数据库,用如下语句进行表操作,详
细的语法格式如下:
CREATE TABLE 表名字
(column1 datatype [DEFAULT expression],
column1 datatype [DEFAULT expression],
……
|[CONSTRAINT [ symbol ]] PRIMARY KEY [ index_type ] ( index_col_name ,...)
| KEY [ index_name ] [ index_type ] ( index_col_name ,...)
| INDEX [ index_name ] [ index_type ] ( index_col_name ,...)
| [CONSTRAINT [ symbol ]] UNIQUE [INDEX]
[ index_name ] [ index_type ] ( index_col_name ,...)
| [FULLTEXT|SPATIAL] [INDEX] [ index_name ] ( index_col_name ,...)
| [CONSTRAINT [ symbol ]] FOREIGN KEY
[ index_name ] ( index_col_name ,...) [ reference_definition ]
| CHECK ( expr )
建立表主要指定义下列信息:
列定义、主键定义、键定义、索引定义 、完整性约束、外键定义、表达式
检查,例如在新建查询中输入如下语句:
CREATE TABLE NEW_DEPT92150033
(DPTNO DECIMAL(10,2),
DNAME CHAR(6),
LOC CHAR(13),
PRIMARY KEY (DPTNO));
点击运行,创建表 NEW_DEPT92150033 ,如下图所示:
因为安装的MySQL社区版,选中表 , 单击右键,需要手动进行表刷新,刷新后可以看到刚刚新建
的表。
更改表详细的语法格式如下:
增加一个列:
alter table 表 名 字 ADD [COLUMN] column_definition [FIRST | AFTER
col_name ],….);
修改一个列:
alter table 表 名 字 MODIFY [COLUMN] column_definition [FIRST | AFTER
col_name],….);
删除一个列:
alter table 表名字 DROP [COLUMN] col_name;
在查询编辑器中执行 create table 语句首先建立一个 test92150033 , 然后分别
使用 alter table add
alter table modify
alter table drop column 在表 test92150033
上来增加两个列、修改一个列和删除一个列。 SQL 语句如下所示:
create table test92150033 (id varchar(20) not null);
alter table test92150033 ADD (name varchar (30) default ' 无名氏 ' not null);
alter table test92150033 ADD (age integer not null);
alter table test92150033 MODIFY name varchar(16);
alter table test92150033 drop column age;
删除表语法:
Drop table 表名字 ;
例如在查询编辑器中执行如下语句删除表:
Drop table test92150033;
13. 用如下语句进行视图操作,详细的语法格式如下:
CREATE VIEW 视图名 AS SELECT … FROM …; 视图是一个逻辑表,它允许操作者从其它表或视图存取数据,视图本身不包
含数据。视图所基于的表称为基表。
引入视图有下列作用:
提供附加的表安全级,限制存取基表的行或 / 和列集合。
隐藏数据复杂性。 为数据提供另一种观点。
例如在查询编辑器中执行如下语句建立视图:
先建立基表:
CREATE TABLE t (qty INT, price INT);
插入记录
INSERT INTO t VALUES(3, 50);
INSERT INTO t VALUES(5, 10);
在基表 t 的基础上,创建视图 v
CREATE VIEW v AS SELECT qty, price, qty*price AS value FROM t;
从视图 v 检索数据
SELECT * FROM v;
结果如图所示。
点击视图可以看到新建立的视图 v, 如图所示。
删除视图语法:
Drop View 视图名 ;
例如在查询编辑器中执行如下语句删除视图:
drop view v;
14. 用如下语句对索引进行操作,详细的语法格式如下:
建立索引: CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name
[USING index_type] ON tbl_name (index_col_name,...)
index_col_name:
col_name [(length)] [ASC | DESC]
索引是种数据库对象。对于在表或聚集的索引列上的每一值将包含一项,为
行提供直接的快速存取。
例如,在 ADDRESS 表的 CUSTOMERID 上建立索引 IX_ADD_CUST
CREATE INDEX IX_ADD_CUST ON ADDRESS(CUSTOMERID);
删除索引语法:
DROP INDEX index_name ON tbl_name
例如在查询编辑器中执行如下语句删除索引:
Drop Index IX_ADD_CUST on ADDRESS;
(四)注意事项
1 、在配置主机名或 IP 地址时,如果访问数据库服务器,可以用本机的 IP
地址替代 localhost
2 MySQL 的端口值默认为 3306
3 、建立视图 v 之前,必须创建表 t 和插入记录。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

VMware配置CentOS 7 并实现ssh连接

Vmware 17下载地址 ***永久许可证:***5Y012-8HL8P-0J8U0-032Q6-93KKF CentOS 7 下载地址 一、配置CentOS 如下 创建新的虚拟机,选择典型,点击下一步 选择上述下载镜像存储位置,选择镜像,点击下一步 3.填写相关信息…

微信小程序wx.getLocation 真机调试不出现隐私弹窗

在小程序的开发过程中,首页中包含要获取用户地理位置的功能,所以在这里的onLoad()中调用了wx.getLocation(),模拟调试时一切正常,但到了真机环境中就隐私框就不再弹出,并且出现了报错&#xff0…

智能生活新体验:小米香薰加湿器技术解码

在现代家居生活中,科技与舒适性日益交织,智能家居产品成为提升生活品质的重要工具。小米香薰加湿器作为一款集科技与生活美学于一体的产品,其独特的设计和多功能性受到了广泛欢迎。今天,我们就来详细拆解这款融合了科技与香薰元素…

Sony Camera Remote SDK在Windows上的使用

Sony官方提供了相机遥控软件开发包,允许用户自行开发应用软件,实现对相机的远程控制,包括拍摄、监看和文件传输等。截至目前最新的版本是2024.4.12发布的1.12.00版本,下载链接如下:Camera Remote SDK | LICENSE AGREEM…

初学python记录:力扣706. 设计哈希映射

题目: 不使用任何内建的哈希表库设计一个哈希映射(HashMap)。 实现 MyHashMap 类: MyHashMap() 用空映射初始化对象void put(int key, int value) 向 HashMap 插入一个键值对 (key, value) 。如果 key 已经存在于映射中&#x…

SpringCloud之LoadBalancer自定义负载均衡算法,基于nacos权重

LoadBalancer基于Nacos权重自定义负载算法 ReactorLoadBalancer接口&#xff0c;实现自定义负载算法需要实现该接口&#xff0c;并实现choose逻辑&#xff0c;选取对应的节点 public interface ReactorLoadBalancer<T> extends ReactiveLoadBalancer<T> {Mono<…

VMware Workstation部署最新版OpenWrt 23.05.3

正文共&#xff1a;1456 字 51 图&#xff0c;预估阅读时间&#xff1a;2 分钟 我们之前介绍了如何在VMware Workstation上安装OpenWrt&#xff08;软路由是啥&#xff1f;OpenWrt又是啥&#xff1f;长啥样&#xff1f;在VMware装一个瞅瞅&#xff09;&#xff0c;也介绍了如何…

【计算机毕业设计】物流管理系统设计与实现——后附源码

&#x1f389;**欢迎来到琛哥的技术世界&#xff01;**&#x1f389; &#x1f4d8; 博主小档案&#xff1a; 琛哥&#xff0c;一名来自世界500强的资深程序猿&#xff0c;毕业于国内知名985高校。 &#x1f527; 技术专长&#xff1a; 琛哥在深度学习任务中展现出卓越的能力&a…

ubuntu16.04安装Eclipse C/C++

1.安装 JDK 官网源码安装 首先打开JDK官网&#xff0c;JDK1.8的下载网址为&#xff1a;https://www.oracle.com/cn/java/technologies/downloads/#java8-windows&#xff0c;进入到网址如下图所示&#xff1a; 向下滑动到 JDK1.8的下载界面&#xff0c;如下图所示&#xff1a…

3_2Linux中内核级加强型火墙的管理

### 一.Selinux的功能 ### 观察现象 ①当Selinux未开启时 在/mnt中建立文件被移动到/var/ftp下可以被vsftpd服务访问 匿名用户可以通过设置后上传文件 当使用ls -Z /var/ftp查看文件时显示"?" ps auxZ | grep vsftpd 时显示&#xff1a; - root 8546 0.0 0.0 26952 …

四.音视频编辑-音频混合-概述

引言 当我们在前两篇博客中成功地构建了一个媒体组合&#xff0c;并且略过了音频部分时&#xff0c;我们意识到了我们需要对这个项目进行更详细的探讨。在本篇博客中&#xff0c;我们将会展示如何创建一个包含视频轨道、配音音频轨道以及背景音频轨道的完整媒体组合。更进一步…

Antd:在文本框中展示格式化JSON

要想将对象转换为格式化 JSON 展示在文本框中&#xff0c;需要用到 JSON.stringify JSON.stringify 方法接受三个参数&#xff1a; value&#xff1a;必需&#xff0c;一个 JavaScript 值&#xff08;通常为对象或数组&#xff09;要转换为 JSON 字符串。replacer&#xff1a…

MySql 安装,小白也可以学会成功安装的保姆级教程

MySql 安装 文章目录 MySql 安装1.Mysql下载1.1 访问下载链接1.2 选择合适版本1.3 下载安装包 2.MySql安装3.安装成功检测验证3.1 mysql自带控制台验证3.2 win系统控制台进入验证 4. mysql 配置path5. navicat 连接 mysql 1.Mysql下载 1.1 访问下载链接 MySQL Downloads 这里…

【自由看门狗配置及计算】

一、看门狗使用场景 看门狗是一个硬件计时电路&#xff0c;用来监测由软件故障导致的系统故障。 片上有两个看门狗定时器外设&#xff0c;自由看门狗定时器&#xff08;FWDGT也叫独立看门狗&#xff09;和窗口看门狗定时器&#xff08;WWDGT&#xff09;。 当嵌入式程序在运…

Linux程序调试优化(1)——内存占用详解及优化思路

文章目录 1.free查看总体的内存占用2./proc/$PID/status 查看某进程状态 linux开发最重要的两个参数&#xff0c;分别是内存以及CPU使用率&#xff0c;若内存出现严重不足&#xff0c;则在需要使用内存时&#xff0c;可能出现申请不到的情况&#xff0c;导致 OOM&#xff0c;L…

不出天府锋巢直播产业基地,即可激活电商直播产业、产教融合及人才培训服务

天府锋巢直播产业基地打造直播产业产教融合及人才培训服务新模式&#xff0c;携手政府、企业、高校&#xff0c;促进直播产业与创新人才双向奔赴&#xff0c;推进教学与实战深度融合&#xff0c;推动实习与就业无缝衔接。 各方资讯一应俱全 直播产业产教融合及人才培训服务全套…

DFS专题:力扣岛屿问题(持续更新)

DFS专题&#xff1a;力扣岛屿问题 开篇 每次做到DFS相关的题目都是直接跳过。蓝桥杯过后痛定思痛&#xff0c;好好学习一下DFS和BFS。先从DFS开始吧。 参考题解&#xff1a;nettee&#xff1a;岛屿类问题的通用解法、DFS 遍历框架 一、岛屿数量 题目链接: 200.岛屿数量 题…

Vue3学习05 一些API

Vue3-API 其它 API【shallowRef 与 shallowReactive 】shallowRefshallowReactive总结 【readonly 与 shallowReadonly】readonlyshallowReadonly 【toRaw 与 markRaw】toRawmarkRaw 【customRef】 Vue3新组件【Teleport】【Suspense】【全局API转移到应用对象】【其他】 其它 …

BackTrader 中文文档(一)

原文&#xff1a;www.backtrader.com/ 主页 欢迎来到 backtrader&#xff01; 原文&#xff1a;www.backtrader.com/ 一个功能丰富的 Python 框架&#xff0c;用于回测和交易 backtrader允许您专注于编写可重复使用的交易策略、指标和分析器&#xff0c;而不必花时间构建基础…

Android T多屏多显——应用双屏间拖拽移动功能(更新中)

功能以及显示效果简介 需求&#xff1a;在双屏显示中&#xff0c;把启动的应用从其中一个屏幕中移动到另一个屏幕中。 操作&#xff1a;通过双指按压应用使其移动&#xff0c;如果移动的距离过小&#xff0c;我们就不移动到另一屏幕&#xff0c;否则移动到另一屏。 功能分析…