1. 安装配置
下载地址: https://dev.mysql.com/downloads/windows/installer/
图形化管理工具:
(1) phpMyAdmin https://www.phpmyadmin.net/
(2)Navicat https://www.navicat.com.cn/
2. 启动与停止
(1)打开命令行管理工具:可从开始菜单中MySQL Server 中Command Line工具打开,打开后会要求输入密码。
(2)查看数据库,命令:show databases; 可以查看到当前连接服务器中有多少个数据库。
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| 罗斯文 |
| mxonline |
| mysql |
| performance_schema |
| sakila |
| spider |
| sys |
| testdjango |
+--------------------+
(3)使用其中一个数据库,命令: use [数据库名称]
mysql> use spider;
Database changed
(4)查看数据库中的表, 命令:show tables;
mysql> show tables;
+------------------+
| Tables_in_spider |
+------------------+
| answer |
| author |
| topic |
+------------------+
3. MySQL 语法基础
(1)两种类型,MySQL主要分为两种类型。
DDL(数据定义语句) CREATE TABLE/DATABASE ALTER TABLE/DATABASE DROP TABLE/DATABASE | DML(数据管理语句) INSERT 新增 DELETE 删除 UPDATE 修改 SELECT 查询 |
(2) 注释:MySQL中的注释,由“-- ”(两个杠和一个空格)开头,后面就是注释的内容;
(3)使用反引号,可以使自定义的变量,数据库名,表名等与MySQL中的保留字区别开来;
-- 创建并使用数据库
CREATE DATABASE `mydatabase`;
USE `mydatabase`;
-- 查看已有数据库
SHOW DATABASES;
(4)创建表
-- 新建数据库
CREATE DATABASE `school`;
-- 使用数据库
USE `school`;
-- 创建表
CREATE TABLE `students`(
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
`name` VARCHAR(20) NOT NULL,
`nickname` VARCHAR(20) NULL,
`sex` CHAR(1) NOT NULL,
`name` VARCHAR(20) NOT NULL,
)DEFAULT CHARSET `UTF8`;
4. 增删改查
(1)插入
-- 承接上面建立表的语句,插入数据
INSERT INTO `students`(1, `张三`, `三哥`, `男`);
INSERT INTO `students2`(`name`, `nickname`, `sex`) VALUE(`张三`, `三哥2`, `男`);
INSERT INTO `students2`(`name`, `nickname`) VALUES
(`张三3`, `三哥3`),
(`张三x`, `三哥x`),
(`张三x1`, `三哥x1`);
(2)查询
SELECT select_expr [,select_expr ...]
[
FROM table_references
[WHERE where_condition]
[GROUP BY {col_name|position} [ASC|DESC],...]
[HAVING where_condition]
[ORDER BY {col_name|expr|position}[ASC|DESC],...]
[LIMIT {[offset,]row_count|row_count OFFSET offset}]
]
SELECT `id`, `name`, `nickname` FROM `students2` WHERE `sex`=`男` ORDER BY `id` DESC LIMIT 0, 2;
-- LIMIT 是分页功能
(3) 修改
UPDATE table_references SET col_name1=expr1[, col_name2=expr2 ...][WHERE where_definition]
UPDATE `students` SET `sex`=`女` WHERE `sex`=`男`;
UPDATE FROM `students` WHERE `id` > 6
(4)删除
DELETE FROM tbl_name [WHERE where_definition]
DELETE FROM `students` WHERE `sex`=`男`;