频道栏目
首页 > 数据库 > SQL Server > 正文
MySQL基础
2017-05-18 09:58:20      个评论    来源:分享空间  
收藏   我要投稿

MySQL 基础

MySQL 基础 数据库入门 数据库引入 常用数据库 数据库安装 数据库卸载 数据库工具 数据库手册 数据库管理 存储结构 数据库管理 数据表管理 增删改数据 查询数据 数据库字符集 备份恢复表数据 备份表数据 恢复表数据。

特别声明:文章对应于2015传智播客教学,大多数内容是原文复制,仅少量改动。因非网上现成帖,所以暂挂原创。

数据库入门

数据库引入

数据库软件优点:

- 数据永久保存下来

- 数据管理非常方便。(SQL管理)

数据库,英文DataBase简写DB。方便管理数据的软件。

常用数据库

关系型数据库

- Oracle:甲骨文的产品。 最流行、应用最广泛的数据库软件。和Java语言兼容非常好。 适合中大型,中大应用。

- SQL Server:微软产品。Windows平台应用非常广泛。和c#、.net平台兼容非常好。

- DB2: IBM的产品。IBM产品包括:IBM服务器–> UNIX -> DB2- > Websphere。

- MySQL: 前期开源组织的产品,后期甲骨文的产品。免费,和java语言兼容非常好!适合中小企业应用。

关系型数据库:以表为基本的存储单元,表与表之间具有各种各样的关系联系。如:员工表与部门表,具有隶属关系。

非关系型数据库

- MongoDB

非关系型数据库:没了解,可能以对象的方式存储,应用程序对数据管理更加方便。

数据库安装

下载网址:MYSQL - DOWNLOADS - Windows - MySQL Installer - 下载安装包最大的。

数据库安装

5.7.18.1.msi 安装过程

问题:安装过程提示The error code is 2503. 或 2502.

解决:开始右击 - 命令提示符(管理员)- 输入 msiexec /package d:*.msi(选择程序目录)

问题: 5.7版本 如何选择数据库安装目录

解决: Select Products and Features 界面 - 选择安装的SQL主程序 - 点击主程序后右下角显示 advanced options - 点击修改

问题:安装完毕后 cmd root指令 提示不是外部或内部命令

解决:添加环境变量 Path = C:\Program Files (x86)\MySQL\MySQL Server 5.7\bin

5.7 安装过程非常简单,几乎就是选择自定义custom ,然后输入自定义账密,不断下一步。

安装成功测试过程:

cmd

mysql -u root -p 回车

root

注意:root替换成自己编写的账密

数据库卸载

5.7卸载过程

- 停止MYSQL服务

- 删除程序【%MySQL%\MySQL Installer for Windows\MySQLInstaller.exe】 - 选中 - remove

- 删除安装目录

- 删除Program Data【隐藏目录】 中的MYSQL目录

数据库工具

推荐: SQLyog_Enterprise

数据库手册

MySQL中文手册.chm

数据库管理

存储结构

这里写图片描述

数据库管理

查询所有数据库

show databases;

这里写图片描述

初始4库:

- information_schema 【mysql元数据,基础数据】

- mysql【mysql配置数据库,其中包含用户信息。(用户名和密码,权限管理)】

- performance_schema 【mysql数据库软件的运行数据,日志信息,性能数据】

- test 【空目录,供开发者测试用】5.5存在 5.7无此数据库

- sys 【5.7新增,功能不明】

创建数据库

CREATE DATABASE day15

删除数据库

DROP DATABASE day15; -- day15数据库不存在时,报错

DROP DATABASE IF EXISTS day15; -- day15数据库不存在时,不报错

数据表管理

注意:先进入具体数据库,才能操作表。

进入数据库

use day15;

查看所有表

SHOW TABLES;

查看的是day15数据库下的所有表(student表是后面讲解建立的,默认新建库无表)

这里写图片描述

创建表

CREATE TABLE student( -- student 表名

id INT,

`name` VARCHAR(20), -- name字段名 varchar(int) 类型及类型长度

age INT,

servlet INT,

jsp INT,

address VARCHAR(50),

gender VARCHAR(20)

);

这里写代码片

查看表结构

DESC student;

这里写图片描述

快速复制表结构

CREATE TABLE tea LIKE student; -- tea 表结构将于student表结构一致,但不会复制数据。

删除表

DROP TABLE student;

修改表

关键字: ALTER TABLE 【ADD、DROP、MODIFY、CHANGE、RENAME TO】

注意: 以下凡带COLUM关键字,均可省略。

1)添加字段

ALTER TABLE student ADD COLUMN remark VARCHAR(50);

这里写图片描述

2)删除字段

ALTER TABLE student DROP COLUMN sgender

这里写图片描述

3)修改字段类型

ALTER TABLE student MODIFY NAME VARCHAR(30);

这里写图片描述

4)修改字段名称

ALTER TABLE student CHANGE COLUMN id sid INT;

这里写图片描述

注意: CHANGE COLUMN 不但可以修改字段名称,同时还可以修改字段类型。甚至可以单独只修改字段类型

5)修改表名称

ALTER TABLE student RENAME TO teacher;

这里写图片描述

增删改数据

插入所有字段值

INSERT INTO student VALUES (1,'李云龙',27,65,45,'河北邢台','男');

这里写图片描述

以顺序插入的方式,向所有字段插入值。

插入值的数量等于字段数量,如果插入值数量不等于字段数量,报错。

错误码: 1136 Column count doesn’t match value count at row 1

注意: 字符和日期型数据应包含在单引号中。

插入部分字段值

INSERT INTO student(id,NAME) VALUES(2,'楚云飞');

这里写图片描述

将需插入的部分字段名填写至表名后面的括号中。 缺省字段默认以NULL填充

修改所有数据

UPDATE student SET NAME = '王五'

这里写图片描述

特别注意:将表中name字段的所有值均修改,是字段中的所有值,不是单个值。

带条件的修改

UPDATE student SET NAME = '陈六' WHERE id = 2;

这里写图片描述

where 定义条件,上述语句修改符合条件的字段值。可以修改单个值,也可以修改多个值,主要看条件语句如何描述。

修改多个字段

UPDATE student SET NAME='张三',age=17 WHERE id = 2

这里写图片描述

where 定义条件,修改符合条件的字段值。可以修改单个值,也可以修改多个值,主要看条件语句如何描述。

删除所有数据

第一种方式:DELETE FROM student;

第二种方式:TRUNCATE TABLE student;

将表中所有数据删除。

带条件删除数据

DELETE FROM student WHERE id=2;

删除符合条件的表中数据

DELETE FROM :

- 可以带条件删除

- 只能删除表的数据,不能删除表的约束

- 删除的数据可以回滚(事务)

TRUNCATE TABLE :

- 不能带条件删除

- 删除表数据同时也删除表的约束

- 删除的数据不能回滚

查询数据

初始化student表中数据

DELETE FROM student; -- 先将表中旧数据删除

INSERT INTO student VALUES (1,'李云龙',27,65,45,'河北邢台','男');

INSERT INTO student VALUES (2,'楚云飞',28,75,99,'山东济南','男');

INSERT INTO student VALUES (3,'杨秀芹',20,85,95,'山东青岛','女');

INSERT INTO student VALUES (4,'张大彪',22,92,85,'辽宁沈阳','男');

INSERT INTO student VALUES (5,'冯楠',17,99,75,'四川成都','女');

INSERT INTO student VALUES (6,'赵刚',30,49,65,'广东广州','男');

查询所有列

SELECT * FROM student;

这里写图片描述

查询指定列

SELECT `name` FROM student;

这里写图片描述

查询时添加常量列

SELECT id,`name`,'Java就业班' AS '年级' FROM student;

这里写图片描述

查询时动态添加列,列值’Java就业班’,列名由AS关键字重命名。 常量列仅作用于查询,不会影响数据库数据。

查询时合并列

SELECT id,`name`,(jsp+servlet) AS 总成绩 FROM student;

这里写图片描述

在查询时可以多列合并(算术运算),并将运算结果显示出来。说白了就是查询时动态添加一个计算列。

点击复制链接 与好友分享!回本站首页
上一篇:SQLite无法加载DLL“SQLite.Interop.dll”:找不到指定的模块
下一篇:SQLServer怎么升级补丁?
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站