MySQL基础教程(一):连接数据库和使用表

这个专栏用来讲解 MySQL 数据的基本语法和用法。本教程的目的是方便查询 MySQL 的用法,因此对于原理的讲解会偏少一些,但特点就是会有很多实验操作图。

本专栏使用的源材料是《MySQL必知必会》这本书的源代码。

文章目录

  • 1. 连接 MySQL 数据库
  • 2. 创建数据库
  • 3. 执行脚本创建表
  • 4. 查看某个表的结构:show命令

1. 连接 MySQL 数据库

使用MySQL命令行连接数据库:

mysql -u root -p passwd -h myserver -P 3306

参数的含义:

  • -u:指定用户名
  • -p:用户名的密码
  • -h:主机名,例如localhost
  • -P:使用指定的端口连接数据库

2. 创建数据库

mysql 终端使用命令 create database db_name 创建一个数据库:
在这里插入图片描述
这里我们需要创建 crashcourse 数据库。 然后使用这个数据库:use crashcourse
在这里插入图片描述

3. 执行脚本创建表

使用某个sql脚本文件创建表:source create.sqlcreate.sql 文件必须在进入 mysql 命令行时所在的目录。
在这里插入图片描述
在这里插入图片描述

4. 查看某个表的结构:show命令

show 命令可以用来显示某个表的所有列:
在这里插入图片描述
还有一个更快捷的方法:
在这里插入图片描述
使用 help show 可以查看show命令的其它用法。下面只是show命令用法的部分。
在这里插入图片描述

create.sql 文件中的内容如下:

########################################
# MySQL Crash Course
# http://www.forta.com/books/0672327120/
# Example table creation scripts
################################################################
# Create customers table
########################
CREATE TABLE customers
(cust_id      int       NOT NULL AUTO_INCREMENT,cust_name    char(50)  NOT NULL ,cust_address char(50)  NULL ,cust_city    char(50)  NULL ,cust_state   char(5)   NULL ,cust_zip     char(10)  NULL ,cust_country char(50)  NULL ,cust_contact char(50)  NULL ,cust_email   char(255) NULL ,PRIMARY KEY (cust_id)
) ENGINE=InnoDB;#########################
# Create orderitems table
#########################
CREATE TABLE orderitems
(order_num  int          NOT NULL ,order_item int          NOT NULL ,prod_id    char(10)     NOT NULL ,quantity   int          NOT NULL ,item_price decimal(8,2) NOT NULL ,PRIMARY KEY (order_num, order_item)
) ENGINE=InnoDB;#####################
# Create orders table
#####################
CREATE TABLE orders
(order_num  int      NOT NULL AUTO_INCREMENT,order_date datetime NOT NULL ,cust_id    int      NOT NULL ,PRIMARY KEY (order_num)
) ENGINE=InnoDB;#######################
# Create products table
#######################
CREATE TABLE products
(prod_id    char(10)      NOT NULL,vend_id    int           NOT NULL ,prod_name  char(255)     NOT NULL ,prod_price decimal(8,2)  NOT NULL ,prod_desc  text          NULL ,PRIMARY KEY(prod_id)
) ENGINE=InnoDB;######################
# Create vendors table
######################
CREATE TABLE vendors
(vend_id      int      NOT NULL AUTO_INCREMENT,vend_name    char(50) NOT NULL ,vend_address char(50) NULL ,vend_city    char(50) NULL ,vend_state   char(5)  NULL ,vend_zip     char(10) NULL ,vend_country char(50) NULL ,PRIMARY KEY (vend_id)
) ENGINE=InnoDB;###########################
# Create productnotes table
###########################
CREATE TABLE productnotes
(note_id    int           NOT NULL AUTO_INCREMENT,prod_id    char(10)      NOT NULL,note_date datetime       NOT NULL,note_text  text          NULL ,PRIMARY KEY(note_id),FULLTEXT(note_text)
) ENGINE=MyISAM;#####################
# Define foreign keys
#####################
ALTER TABLE orderitems ADD CONSTRAINT fk_orderitems_orders FOREIGN KEY (order_num) REFERENCES orders (order_num);
ALTER TABLE orderitems ADD CONSTRAINT fk_orderitems_products FOREIGN KEY (prod_id) REFERENCES products (prod_id);
ALTER TABLE orders ADD CONSTRAINT fk_orders_customers FOREIGN KEY (cust_id) REFERENCES customers (cust_id);
ALTER TABLE products ADD CONSTRAINT fk_products_vendors FOREIGN KEY (vend_id) REFERENCES vendors (vend_id);

小结:

  • 登入 mysql 的命令行;
  • 查看有哪些数据库:show databases;
  • 使用指定的数据库:use database_name;
  • 当前所在数据库有哪些表:show tables;
  • 查看一个表的结构:describe table_name; 或者 show columns from table_name;

各位道友,如有收获,记得一键三连呐。

最后,给各位道友介绍一下使用国外虚拟卡开通一些国外服务的渠道,当前我在用的是 wildcard,使用我的注册邀请码 IOQ1YDHH 注册,能得 2 美刀,抵消一部分的开卡费用。同时,我也能得 1 美刀,赠人玫瑰,手有余香啊,哈哈。自己买个 Github CopilotChatGPT Plus 简直不要太香。

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

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

相关文章

【物流配送中心选址问题】基于改进粒子群算法

课题名称: 基于改进粒子群算法的物流配送中心选址问题 改进方向:动态惯性权重优化粒子群算法 代码获取方式: 模型描述: 待补充 Matlab仿真结果: 1. 模型优化后的仿真结果 2. 初始解对应的物流配送路径图 3. 粒子…

Tianrui Green Shield

Tianrui Green Shield,即天锐绿盾,是一款专注于企业数据防泄密的软件系统。以下是对天锐绿盾的详细介绍: 一、基本信息 产品名称:天锐绿盾(又名绿盾信息安全管理软件)公司官网:www.drhchina.co…

VMware中Ubuntu系统Docker正常运行但网络不通(已解决)

问题描述:在VMware中的Ubuntu系统下部署了Docker,当在docker容器中运行Eureka微服务时,发现Eureka启动正常,但无法通过网页访问该容器中Eureka。 解决办法如下: 1、创建桥接网络:test-net sudo docker n…

2024年最强网络安全学习路线,详细到直接上清华的教材!

关键词:网络安全入门、渗透测试学习、零基础学安全、网络安全学习路线 首先咱们聊聊,学习网络安全方向通常会有哪些问题前排提示:文末有CSDN官方认证Python入门资料包 ! 1、打基础时间太长 学基础花费很长时间,光语…

微信第三方开放平台接入本地消息事件接口报错问题java.security.InvalidKeyException: Illegal key size

先看报错: java.security.InvalidKeyException: Illegal key sizeat javax.crypto.Cipher.checkCryptoPerm(Cipher.java:1039)at javax.crypto.Cipher.implInit(Cipher.java:805)at javax.crypto.Cipher.chooseProvider(Cipher.java:864)at javax.crypto.Cipher.in…

Java基础(上)

Java的特性 简单易学(语法简单,上手容易); 面向对象(封装,继承,多态); 平台无关性( Java 虚拟机实现平台无关性); 支持多线程&…

什么是数据编织

What Is Data Fabric? 【dataCamp】 What Is Data Fabric? Data fabric is a unified data architecture that connects disparate data sources, simplifying access and management while ensuring consistency and security across the entire data landscape. Data Fa…

【设计模式】设计模式介绍和常见设计模式代码示例

文章目录 设计模式分类创建型模式结构型模式行为型模式 设计模式详解单例模式(Singleton Pattern)懒汉模式饿汉模式 工厂模式(Factory Pattern)简单工厂模式工厂方法模式抽象工厂模式 装饰模式(Decorator Pattern&…

设计模式的学习

OO:Object-Oriented 面向对象 --- 《Head First设计模式》 这本书是用java写的,我是写C的,用C来写相关的代码 --- p2(第二页) #ifndef DUCK_H #define DUCK_H/*** brief The Duck class 鸭子类*/ class Duck { public:D…

No.8 笔记 | SQL 查询语句:数据探索的钥匙

2024/10/7 心记 - 致在路上默默奋斗的你 在当今数字化的时代,网络安全已成为我们生活中不可或缺的一部分。它如同守护数字世界的隐形盾牌,保护着我们的隐私、数据和整个社会的稳定运行。 学习网络安全,是踏上一段充满挑战与机遇的征程。 每一…

软件设计师(软考学习)

数据库技术 数据库基础知识 1. 数据库中的简单属性、多值属性、复合属性、派生属性简单属性:指不能够再分解成更小部分的属性,通常是数据表中的一个列。例如学生表中的“学号”、“姓名”等均为简单属性。 多值属性:指一个属性可以有多个值…

【网络原理】面试高频考点!!TCP协议“三次握手,四次挥手”,保姆级详解,建议收藏!

💐个人主页:初晴~ 📚相关专栏:计算机网络那些事 通过上篇文章,我们可以得知TCP通过 “确认应答” 和 “超时重传”机制相辅相成,共同构建了 TCP的“可靠传输机制”。而为了保障建立通信和断开通信的可靠性…

解决磁盘负载不均——ElasticSearch 分片分配和路由设置

ES 分片分配(Shard Allocation)时间点: 初始恢复(Initial Recovery)副本分配(Replica Allocation)重平衡(Rebalance)节点添加或移除 小结: 准备移除节点时&a…

CAN转WiFi模块在仓库系统中应用

CAN转WiFi模块在仓库系统中应用 我们的LCWLAN设备在实际使用中以裸板的形式放在客户的智能总线控制器中,客户的智能总线刀片灯,柔性灯货架,柔性感应钢网柜以及智能电子料架等设备都是接到总线控制器中,然后总控制器通过CAN总线和…

Qt-QSpacerItem布局相关控件(45)

目录 描述 属性 使用 控件小结 描述 使⽤布局管理器的时候,可能需要在控件之间,添加⼀段空⽩.就可以使⽤ QSpacerItem 来表⽰ 属性 width宽度height⾼度hData⽔平⽅向的 sizePolicy • QSizePolicy::Ignored : 忽略控件的尺⼨,不对布局产⽣影响。 • QSizePol…

免费高可用软件

高可用软件是指那些能够提供高可用性、高可靠性的软件,它们在各种应用场景下都能确保系统的稳定运行。以下是四款免费的高可用软件,它们在不同领域都表现出色,能够满足各种高可用性需求。 一、PanguHA PanguHA是一款专为Windows平台设计的双…

贪心算法c++

贪心算法C概述 一、贪心算法的基本概念 贪心算法(Greedy Algorithm),又名贪婪法,是一种解决优化问题的常用算法。其基本思想是在问题的每个决策阶段,都选择当前看起来最优的选择,即贪心地做出局部最优的决…

网络通信——OSPF协议(基础篇)

这里基础是因为没有讲解OSPF中的具体算法过程,以及其中很多小细节。后续会更新。 目录 一.OSPF的基础信息 二.认识OSPF中的Router ID 三.OSPF中的三张表 四.OSPF中的度量方法(计算开销值) 五. OSPF选举DR和BDR(就是这个区域…

音视频入门基础:FLV专题(9)——Script Tag简介

一、SCRIPTDATA 根据《video_file_format_spec_v10_1.pdf》第75页到76页,如果某个Tag的Tag header中的TagType值为18,表示该Tag为Script Tag(脚本Tag,又称Data Tag、SCRIPTDATA tag)。这时如果Filter的值不为1表示未加…