主頁 > 資料庫 > 【必知必會的MySQL知識】②使用MySQL

【必知必會的MySQL知識】②使用MySQL

2023-05-03 07:54:50 資料庫

目錄
  • 前言
  • 啟動MySQL服務
  • 連接MySQL
  • MySQL資料庫基本命令
  • 小結

前言

根據上一篇文章【必知必會的MySQL知識】①初探MySQL的內容,想必您對MySQL資料庫有了一個整體的了解了,并且應該在自己電腦上已經安裝上了MySQL,
這一篇呢我們來說一說這么連接上資料庫并且使用它,

啟動MySQL服務

前面MySQL安裝的文章手把手教你安裝MySQL中我們已經說過怎么啟動服務了,這里呢再簡單說一下,
啟動MySQL服務有以下兩種方式

1、 使用命令啟動

進入到MySQL安裝目錄的bin目錄下,并輸入命令啟動、停止服務

# 啟動MySQL服務
net start mysql
# 停止MySQL服務
net stop mysql

2、進入服務頁面進行啟動

右鍵選中此電腦-->管理-->服務與應用程式-->服務-->找到MySQL服務-->右鍵服務即可啟動、關閉、重啟MySQL服務

在這里插入圖片描述

在這里插入圖片描述
當然了,我們還可以設定MySQL服務 開機自啟動,這樣每次電腦開機MySQL服務就會自動啟動了
在這里插入圖片描述
在這里插入圖片描述

連接MySQL

MySQL服務啟動后,我們就可以通過各種工具來連接我們的MySQL資料庫了,下面我們將通過最原始的命令列及各種第三方工具演示連接MySQL資料庫

1、通過命令列連接

# 命令格式
mysql [-h 127.0.0.1] [-P 3306] -u root -p
-h : MySQL服務所在的主機IP,本地資料庫IP為127.0.0.1
-P : MySQL服務埠號,默認為3306
-u : MySQL資料庫用戶名
-p : MySQL資料庫用戶名對應的密碼
[]內為可選引數,如果需要連接遠程的MySQL,需要加上這兩個引數來指定遠程主機IP、埠,如果
連接本地的MySQL,則無需指定這兩個引數

在這里插入圖片描述

注: 有時候我們會遇到如下錯誤
在這里插入圖片描述
遇到這樣的錯誤呢,我們也不要慌,上面報錯是因為找不到mysql命令報的,所以呢解決辦法就是將路徑切換到MySQL的安裝路徑的bin目錄下再執行如下命令即可

myslq -u root -p 

2、通過各種第三方工具連接

當然了,日常開發中,我們一般不會使用命令列的方式連接資料庫的,而是通過第三方工具去連,
這里呢推薦幾個小編認為不錯的工具供大家參考,① sqlyog ② Navicat ③ DataGrip
① sqlyog 和② Navicat兩個工具體積不大,占用記憶體也比較小,個人使用起來,各種常用功能都有了,
如果你的電腦配置比較好也可以使用③ DataGrip
不管使用哪個工具都是可以的

下載地址:
① sqlyog 鏈接:https://pan.baidu.com/s/1yDooGbVxqAfwrrsEJ2_Tug 提取碼:mbd0
② Navicat 鏈接:https://pan.baidu.com/s/1yDooGbVxqAfwrrsEJ2_Tug 提取碼:9yoe
③ DataGrip 鏈接:https://pan.baidu.com/s/11PyoGQKAyX-pX2NroapqpQ 提取碼:1ei2
在這里插入圖片描述
各個第三方工具連接MySQL配置
①sqlyog
在這里插入圖片描述
② Navicat
在這里插入圖片描述
③ DataGrip
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
不管使用哪種工具,連接配置都還是比較簡單的,

MySQL資料庫基本命令

1、基本命令

# 基本命令
SHOW DATABASES;  --查看當前用戶下所有資料庫
CREATE DATABASE [IF NOT EXISTS] 資料庫名;   --創建一個資料庫
SHOW CREATE DATABASE 資料庫名;-- 查看創建資料庫的陳述句
DROP DATABASE [if EXISTS] 資料庫名;   --洗掉資料庫
show databases;	--查看當前所有的資料庫
use 資料庫名;	--打開指定的資料庫
SHOW CREATE TABLE 表名;-- 查看表的定義陳述句
DROP TABLE 表名; --洗掉表
show tables;	--查看所有的表
desc 表名;	--顯示表的資訊
exit	--退出連接

2、注釋

--		--單行注釋
#		--單行注釋
/*...*/		--多行注釋

3、 關鍵字

上面基本命令中,我們使用的show、databases、create、use、desc 等詞都是MySQL關鍵字,顧名思義,
關鍵字 就是一些用于執行MySQL操作的特殊詞匯,時MySQL自帶的,所以,在命名資料庫、表、列和其他物件時,一定不要使用這些關鍵字

具體關鍵字可以參考 【必知必會的MySQL知識】附錄Ⅰ 5.7版本

4、實踐操作
注: 雖然上面我們介紹了三種圖形化連接MySQL工具,這一節我們還是使用命令列進行演示,

① 查看root用戶下可用資料庫

# 我們可以看到,root 用戶下一共有5個可用資料庫,前四個時MySQL自帶的資料庫,
#最后一個test資料庫時我們后來創建的,我們這里暫時還不用知道這些資料庫具體時干嘛的
# 只需要知道有這么個東西就可以了,后面會具體說
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| test               |
+--------------------+
5 rows in set (0.00 sec)

② 創建一個自己的資料庫

# 創建了一個名叫db_xiezhr的資料庫
mysql> create database if not exists db_xiezhr;
Query OK, 1 row affected (0.02 sec)
# 通過命令show databases; 我們可以看到,上面的創建腳本生效了,可用資料庫多了db_xiezhr
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| db_xiezhr          |
| mysql              |
| performance_schema |
| sys                |
| test               |
+--------------------+
6 rows in set (0.00 sec)

③ 查看創建資料庫腳本

# 根據如下腳本,我們可以看到上面創建db_xiezhr資料庫時的腳本
mysql> show create database db_xiezhr;
+-----------+----------------------------------------------------------------------+
| Database  | Create Database                                                      |
+-----------+----------------------------------------------------------------------+
| db_xiezhr | CREATE DATABASE `db_xiezhr` /*!40100 DEFAULT CHARACTER SET latin1 */ |
+-----------+----------------------------------------------------------------------+
1 row in set (0.02 sec)

④ 選擇資料庫

上面根據show dabatases命令已經列出了root用戶下的所有資料庫,我們要選擇其中的一個,才能操作它

# 選擇我們創建的資料庫db_xiezhr
mysql> use db_xiezhr
Database changed

⑤在db_xiezhr 資料庫下創建一張表
格式

CREATE TABLE IF NOT EXISTS `student`(
	'欄位名' 列型別 [屬性] [索引] [注釋],
    '欄位名' 列型別 [屬性] [索引] [注釋],
    ......
    '欄位名' 列型別 [屬性] [索引] [注釋]
)[表的型別][字符集設定][注釋]
# 在資料庫db_xiezhr 中創建一張用戶表
--表名和欄位盡量使用``括起來
--AUTO_INCREMENT 代表自增
--所有的陳述句后面加逗號,最后一個不加
--字串使用單引號括起來
--主鍵的宣告一般放在最后,便于查看
--不設定字符集編碼的話,會使用MySQL默認的字符集編碼Latin1,不支持中文,可以在my.ini里修改
mysql> CREATE TABLE IF NOT EXISTS `t_account`(
    -> `id` INT(4)NOT NULL AUTO_INCREMENT COMMENT '學號',
    -> `username` VARCHAR(30) NOT NULL DEFAULT '匿名' COMMENT '姓名',
    -> `psw` VARCHAR(20) NOT NULL DEFAULT '123456' COMMENT '密碼',
    -> `sexcode` VARCHAR(1) NOT NULL DEFAULT '1' COMMENT '性別 1男 2女',
    -> `birthday` DATETIME DEFAULT NULL COMMENT '出生日期',
    -> `address` VARCHAR(100) DEFAULT NULL COMMENT '家庭住址',
    -> `email` VARCHAR(50) DEFAULT NULL COMMENT '郵箱',
    -> PRIMARY KEY (`id`)
    -> )ENGINE=INNODB DEFAULT CHARSET=utf8
    -> ;
Query OK, 0 rows affected (0.03 sec)

⑥ 查看建表陳述句

# 查看上面建t_account表的陳述句
mysql> show create table t_account;
+-----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table     | Create Table                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
+-----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| t_account | CREATE TABLE `t_account` (
  `id` int(4) NOT NULL AUTO_INCREMENT COMMENT '學號',
  `username` varchar(30) NOT NULL DEFAULT '匿名' COMMENT '姓名',
  `psw` varchar(20) NOT NULL DEFAULT '123456' COMMENT '密碼',
  `sexcode` varchar(1) NOT NULL DEFAULT '1' COMMENT '性別 1男 2女',
  `birthday` datetime DEFAULT NULL COMMENT '出生日期',
  `address` varchar(100) DEFAULT NULL COMMENT '家庭住址',
  `email` varchar(50) DEFAULT NULL COMMENT '郵箱',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
+-----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.02 sec)

⑦ 查看表“t_account” 的結構

# 查看我們上面所建的表t_account 
mysql> desc t_account;
+----------+--------------+------+-----+---------+----------------+
| Field    | Type         | Null | Key | Default | Extra          |
+----------+--------------+------+-----+---------+----------------+
| id       | int(4)       | NO   | PRI | NULL    | auto_increment |
| username | varchar(30)  | NO   |     | 匿名    |                |
| psw      | varchar(20)  | NO   |     | 123456  |                |
| sexcode  | varchar(1)   | NO   |     | 1       |                |
| birthday | datetime     | YES  |     | NULL    |                |
| address  | varchar(100) | YES  |     | NULL    |                |
| email    | varchar(50)  | YES  |     | NULL    |                |
+----------+--------------+------+-----+---------+----------------+
7 rows in set (0.01 sec)

⑧ 查看資料庫中所有表

# 查看db_xiezhr 資料庫中所有表(資料庫中只有我們剛剛建的t_account表)
mysql> show tables;
+---------------------+
| Tables_in_db_xiezhr |
+---------------------+
| t_account           |
+---------------------+
1 row in set (0.00 sec)

⑨ 洗掉表

# 洗掉我們創建的t_account表,如果是在生產環境,洗掉資料庫一定一定一定要慎重,要不然就只能跑路了

#洗掉表t_account
mysql> drop table t_account;
Query OK, 0 rows affected (0.01 sec)
# 執行上面陳述句后,再查看資料庫表,發現t_account 表已經不在了
mysql> show tables;
Empty set (0.00 sec)

⑩ 洗掉資料庫

# 洗掉我們創建的db_xiezhr資料庫,如果是在生產環境,洗掉資料庫一定一定一定要慎重,要不然就只能跑路了
# 洗掉db_xiezhr資料庫
mysql> drop database db_xiezhr;
Query OK, 0 rows affected (0.01 sec)
# 再用show databases;查所有資料庫時,我們發現db_xiezhr資料庫已經不在了
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| test               |
+--------------------+
5 rows in set (0.00 sec)

? 退出MySQL

# 這期文章我們就說到這里了,該休息了,我們將連接的MySQL退出
# 退出MySQL連接,MySQL還跟我們說了一聲Bye (●'?'●)
mysql> exit;
Bye

D:\DeveSoftware\mysql-5.7.37-winx64\bin>

小結

這一篇文章主要是說了怎么連接MySQL資料庫、推薦了三款比較好用圖形化工具Sqlyog、Navicat、Datagrip,
參照上面文章,相信你可以成功連接自己本地資料庫或者遠程服務器上的MySQL了 以及對MySQL資料庫進行一些基本操作了,
其實,我們本文章用到的基本操作都屬于資料庫定義語言(DDL)

SQL陳述句根據其功能可以分為:DDL、DML、DQL、DCL 四類

  • DDL 資料定義語言: 用來定義資料庫物件(資料庫,表, 欄位)
  • DQL資料查詢語言: 用來查詢資料庫中表的記錄
  • DML 資料操作語言: 用來對資料庫表中的資料進行增刪改
  • DCL資料控制語言: 用來創建資料庫用戶、控制資料庫的 訪問權限

后續文章中,我們會依次對剩下的SQL進行講解,并且會通過刷題網站進行實戰操作,敬請期待哦 (●'?'●)

如果覺得內容不錯,防止以后找不到,可以點贊、收藏、關注哦, (●'?'●)

在這里插入圖片描述

轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/551552.html

標籤:其他

上一篇:Oracle ORA-01033: ORACLE initialization or shutdown in progress(誤刪了DBF資料庫檔案導致)解決方法

下一篇:返回列表

標籤雲
其他(158362) Python(38110) JavaScript(25398) Java(18011) C(15221) 區塊鏈(8261) C#(7972) AI(7469) 爪哇(7425) MySQL(7156) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5870) 数组(5741) R(5409) Linux(5334) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4565) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2432) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1964) Web開發(1951) HtmlCss(1930) python-3.x(1918) 弹簧靴(1913) C++(1912) xml(1889) PostgreSQL(1874) .NETCore(1857) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • GPU虛擬機創建時間深度優化

    **?桔妹導讀:**GPU虛擬機實體創建速度慢是公有云面臨的普遍問題,由于通常情況下創建虛擬機屬于低頻操作而未引起業界的重視,實際生產中還是存在對GPU實體創建時間有苛刻要求的業務場景。本文將介紹滴滴云在解決該問題時的思路、方法、并展示最終的優化成果。 從公有云服務商那里購買過虛擬主機的資深用戶,一 ......

    uj5u.com 2020-09-10 06:09:13 more
  • 可編程網卡芯片在滴滴云網路的應用實踐

    **?桔妹導讀:**隨著云規模不斷擴大以及業務層面對延遲、帶寬的要求越來越高,采用DPDK 加速網路報文處理的方式在橫向縱向擴展都出現了局限性。可編程芯片成為業界熱點。本文主要講述了可編程網卡芯片在滴滴云網路中的應用實踐,遇到的問題、帶來的收益以及開源社區貢獻。 #1. 資料中心面臨的問題 隨著滴滴 ......

    uj5u.com 2020-09-10 06:10:21 more
  • 滴滴資料通道服務演進之路

    **?桔妹導讀:**滴滴資料通道引擎承載著全公司的資料同步,為下游實時和離線場景提供了必不可少的源資料。隨著任務量的不斷增加,資料通道的整體架構也隨之發生改變。本文介紹了滴滴資料通道的發展歷程,遇到的問題以及今后的規劃。 #1. 背景 資料,對于任何一家互聯網公司來說都是非常重要的資產,公司的大資料 ......

    uj5u.com 2020-09-10 06:11:05 more
  • 滴滴AI Labs斬獲國際機器翻譯大賽中譯英方向世界第三

    **桔妹導讀:**深耕人工智能領域,致力于探索AI讓出行更美好的滴滴AI Labs再次斬獲國際大獎,這次獲獎的專案是什么呢?一起來看看詳細報道吧! 近日,由國際計算語言學協會ACL(The Association for Computational Linguistics)舉辦的世界最具影響力的機器 ......

    uj5u.com 2020-09-10 06:11:29 more
  • MPP (Massively Parallel Processing)大規模并行處理

    1、什么是mpp? MPP (Massively Parallel Processing),即大規模并行處理,在資料庫非共享集群中,每個節點都有獨立的磁盤存盤系統和記憶體系統,業務資料根據資料庫模型和應用特點劃分到各個節點上,每臺資料節點通過專用網路或者商業通用網路互相連接,彼此協同計算,作為整體提供 ......

    uj5u.com 2020-09-10 06:11:41 more
  • 滴滴資料倉庫指標體系建設實踐

    **桔妹導讀:**指標體系是什么?如何使用OSM模型和AARRR模型搭建指標體系?如何統一流程、規范化、工具化管理指標體系?本文會對建設的方法論結合滴滴資料指標體系建設實踐進行解答分析。 #1. 什么是指標體系 ##1.1 指標體系定義 指標體系是將零散單點的具有相互聯系的指標,系統化的組織起來,通 ......

    uj5u.com 2020-09-10 06:12:52 more
  • 單表千萬行資料庫 LIKE 搜索優化手記

    我們經常在資料庫中使用 LIKE 運算子來完成對資料的模糊搜索,LIKE 運算子用于在 WHERE 子句中搜索列中的指定模式。 如果需要查找客戶表中所有姓氏是“張”的資料,可以使用下面的 SQL 陳述句: SELECT * FROM Customer WHERE Name LIKE '張%' 如果需要 ......

    uj5u.com 2020-09-10 06:13:25 more
  • 滴滴Ceph分布式存盤系統優化之鎖優化

    **桔妹導讀:**Ceph是國際知名的開源分布式存盤系統,在工業界和學術界都有著重要的影響。Ceph的架構和演算法設計發表在國際系統領域頂級會議OSDI、SOSP、SC等上。Ceph社區得到Red Hat、SUSE、Intel等大公司的大力支持。Ceph是國際云計算領域應用最廣泛的開源分布式存盤系統, ......

    uj5u.com 2020-09-10 06:14:51 more
  • es~通過ElasticsearchTemplate進行聚合~嵌套聚合

    之前寫過《es~通過ElasticsearchTemplate進行聚合操作》的文章,這一次主要寫一個嵌套的聚合,例如先對sex集合,再對desc聚合,最后再對age求和,共三層嵌套。 Aggregations的部分特性類似于SQL語言中的group by,avg,sum等函式,Aggregation ......

    uj5u.com 2020-09-10 06:14:59 more
  • 爬蟲日志監控 -- Elastc Stack(ELK)部署

    傻瓜式部署,只需替換IP與用戶 導讀: 現ELK四大組件分別為:Elasticsearch(核心)、logstash(處理)、filebeat(采集)、kibana(可視化) 下載均在https://www.elastic.co/cn/downloads/下tar包,各組件版本最好一致,配合fdm會 ......

    uj5u.com 2020-09-10 06:15:05 more
最新发布
  • 【必知必會的MySQL知識】②使用MySQL

    (使用MySQL) 前言 根據上一篇文章【必知必會的MySQL知識】①初探MySQL的內容,想必您對MySQL資料庫有了一個整體的了解了,并且應該在自己電腦上已經安裝上了MySQL。 這一篇呢我們來說一說這么連接上資料庫并且使用它。 啟動MySQL服務 前面MySQL安裝的文章手把手教你安裝MySQ ......

    uj5u.com 2023-05-03 07:54:50 more
  • Oracle ORA-01033: ORACLE initialization or shutdown in progr

    先宣告一下前期的一些手欠欠兒的操作導致oracl登錄不進去了,起先是清理磁盤空間的時候誤洗掉了orcle DBF資料檔案后無法進入系統,plsql登錄報錯如下: 一般情況下,洗掉表空間的正確方法是:DROP TABLESPACE BDCDJ INCLUDING CONTENTS AND DATAFI ......

    uj5u.com 2023-05-03 07:53:55 more
  • day09-達人探店

    功能04-達人探店 5.功能04-達人探店 5.1發布&查看探店筆記 5.1.1發布探店筆記 探店筆記類似點評網站的評價,往往是圖文結合。對應的表有兩個: tb_blog:探店筆記表,包含筆記中的標題、文字、圖片等 tb_blog_comments:其他用戶對探店筆記的評價 /*表: tb_blog ......

    uj5u.com 2023-05-03 07:53:05 more
  • 【必知必會的MySQL知識】③DML語言

    (DML語言) 前言 前面的兩篇文章中,我們已經對MySQL有了基本了解。 并且知道了怎么用工具連接資料庫?怎么創建資料庫?怎么創建表? 這一篇呢我們就來看看怎么在我們創建的表中插入資料、洗掉資料和修改資料。也就是上一篇文章中提到的DML 資料操作語言 準備 根據上一章所說的,我們創建一個db_xi ......

    uj5u.com 2023-05-03 07:52:14 more
  • 【必知必會的MySQL知識】②使用MySQL

    (使用MySQL) 前言 根據上一篇文章【必知必會的MySQL知識】①初探MySQL的內容,想必您對MySQL資料庫有了一個整體的了解了,并且應該在自己電腦上已經安裝上了MySQL。 這一篇呢我們來說一說這么連接上資料庫并且使用它。 啟動MySQL服務 前面MySQL安裝的文章手把手教你安裝MySQ ......

    uj5u.com 2023-05-03 07:46:13 more
  • 讀SQL進階教程筆記14_SQL編程要點

    1. 消滅NULL 1.1. NULL惹人討厭的原因 1.1.1. 進行SQL編碼時,必須考慮違反人類直覺的三值邏輯 1.1.2. 指定IS NULL、IS NOT NULL的時候,不會用到索引,SQL陳述句執行起來性能低下 1.1.2.1. 1 + NULL = NULL 2- NULL = NUL ......

    uj5u.com 2023-05-01 08:25:44 more
  • 手記系列之四 ----- 關于使用MySql的經驗

    前言 本篇文章主要介紹的關于本人在使用MySql記錄筆記的一些使用方法和經驗,溫馨提示,本文有點長,約1.5w字,幾十張圖片,建議收藏查看。 一、MySql安裝 下載地址:https://dev.mysql.com/downloads/ 在安裝MySql之前,查看是否以及安裝過MySql,如果已經安 ......

    uj5u.com 2023-05-01 08:05:48 more
  • 讀SQL進階教程筆記14_SQL編程要點

    1. 消滅NULL 1.1. NULL惹人討厭的原因 1.1.1. 進行SQL編碼時,必須考慮違反人類直覺的三值邏輯 1.1.2. 指定IS NULL、IS NOT NULL的時候,不會用到索引,SQL陳述句執行起來性能低下 1.1.2.1. 1 + NULL = NULL 2- NULL = NUL ......

    uj5u.com 2023-05-01 08:00:09 more
  • 手記系列之四 ----- 關于使用MySql的經驗

    前言 本篇文章主要介紹的關于本人在使用MySql記錄筆記的一些使用方法和經驗,溫馨提示,本文有點長,約1.5w字,幾十張圖片,建議收藏查看。 一、MySql安裝 下載地址:https://dev.mysql.com/downloads/ 在安裝MySql之前,查看是否以及安裝過MySql,如果已經安 ......

    uj5u.com 2023-05-01 07:59:11 more
  • MySQL常用資料庫陳述句

    ==資料庫==1、創建資料庫create database [IF NOT EXISTS] 資料庫名; 2、洗掉資料庫drop database [IF EXISTS] 資料庫名; 3、切換資料庫select database(); 4、查詢資料庫show databases; —————————— ......

    uj5u.com 2023-04-30 07:59:05 more