1-1 MySQL数据库简介及安装
1.数据库(DataBase)是按照数据结构来组织、存储和管理数据的仓库。
2.常见数据库 Oracle DB2 SQL Server Postgre SQL
MySQL
3.数据库系统(Database System)DBS。
数据库(Database);数据库管理系统(Database Management System):DBMS;应用开发工具;
管理员及用户。
4.SQL语言
Structured Query Language:结构化查询语言
DDL:数据定义语言;(定义数据库;表;视图索引;触发器等)
DML:数据操作语言;(数据的插入;更新;删除;增删改查的增删改)
DQL:数据查询语言;(增删改查的查;查询语句)
DCL:数据控制语言;(控制用户的访问权限)
1-5 MySQL常用命令
1.my.cnf是MySQL的配置文件
2.登录退出mysql
登录:mysql -uroot -p
退出:exit 或 quit
得到版本号:mysql -V、mysql --version
登陆的同时打开相关数据库:mysql -uroot -p -D mysql(数据库名字叫mysql)
3.sql语句
命令行结束符默认使用;或者g来结束。 Commands end with ; or g.
select version();select versiong
select user(); select database(); select now();
c 不执行当前命令
常用MYSQL的关键字我们需要大写,库名、表名、字段名称等使用小写
数据库名称、表名称、字段名称不要使用MySQL的保留字,如果必须要用,需要用''反引号括起来
1-7 创建和管理数据库常用操作
1.创建数据库
CREATE DATABASE或者SCHEMA db_name;
例如:CREATE DATABASE test1;
2.查看当前服务器下的所有数据库
SHOW DATABASES或SCHEMAS;
3.检测数据库名称是否存在,不存在则创建
CREATE DATABASE IF NOT EXISTS test1;
4.查看上一部操作的警告信息
SHOW WARNINGS;
5.在创建数据库的同时,指定编码方式
CREATE DATABASE IF NOT EXISTS test3 DEFAULT CHARACTER SET UTF8;
CREATE DATABASE IF NOT EXISTS test3 DEFAULT CHARACTER SET UTF8;
CREATE DATABASE IF NOT EXISTS test4 CHARACTER SET ='GBK';
6.查看指定数据库下的详细信息(编码方式信息)
mysql> SHOW CREATE DATABASE TEST2;
+----------+----------------------------------------------------------------+
| Database | Create Database |
+----------+----------------------------------------------------------------+
| TEST2 | CREATE DATABASE `TEST2` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+----------------------------------------------------------------+
1 row in set (0.00 sec)
7.修改制定数据库的编码方式
mysql> ALTER DATABASE test4 DEFAULT CHARACTER SET 'UTF8';
Query OK, 1 row affected (0.02 sec)
mysql> ALTER DATABASE test4 DEFAULT CHARACTER SET 'GBK';
Query OK, 1 row affected (0.00 sec)
8.打开指定数据库
USE db_name;
mysql> USE cuishien;
Database changed
9.得到当前打开的数据库
SELECT DATABASE();或SCHEMA();
mysql> USE cuishien;
Database changed
mysql> SELECT DATABASE ();
+-------------+
| DATABASE () |
+-------------+
| cuishien |
+-------------+
1 row in set (0.00 sec)
mysql> SELECT SCHEMA();
+----------+
| SCHEMA() |
+----------+
| cuishien |
+----------+
1 row in set (0.00 sec)
10.删除指定的数据库
DROP DATABASE db_name;
mysql> DROP DATABASE cuishien;
Query OK, 0 rows affected (0.04 sec)
mysql>
11. 如果数据库存在则删除
DROP DATABASE [IF EXISTS] db_name;
mysql> DROP DATABASE cuishien;
ERROR 1008 (HY000): Can't drop database 'cuishien'; database doesn't exist
mysql> DROP DATABASE IF EXISTS cuishien;
Query OK, 0 rows affected, 1 warning (0.01 sec)
12.mysql的注释
#注释内容
- -注释内容
1-11 数据表及数据类型简介
4.数据表相关操作:
数据表是数据库最重要的组成部分之一。数据是存放在数据表中。
数据表由行(row)和列(column)来组成
每个数据表中至少有一列,行可以有零行一行或者多行组成
表明要求唯一,不要包含特殊字符,最好含义明确
创建表:
CREATE TABLE [IF NOT EXISTS] tbl_name{
字段名称 字段类型[完整约束条件],
字段名称 字段类型[完整约束条件],
.......
}ENGINE=存储引擎 CHARSET=编码方式;
5.MYSQL中的数据类型
数值型:整数型,浮点数,定点数
浮点数
字符串类型
日期时间类型
2-5 简单慕课用户数据表创建
2-6 查看当前数据库下已有数据表
1.SHOW TABLES;
2.SHOW [FULL] TABLES [{FROM | IN} db_name]
[LIKE 'pattern' | WHERE expr]
3.查看指定数据表的详细信息
SHOW CREATE TABLE tbl_name;
4.查看表结构
DESC tbl_name;或DESCRIBE tbl_name;或SHOW COLUMNS FROM tbl_name;
5.删除指定的数据
DROP TABLE [IF EXISTS] tbl_name;
练习
--查看当前数据库下的数据表
--查看imooc_user表的详细信息
--通过三种方式查看指定数据表的表结构
--最后删除imooc_user数据表
2-8 完整性约束条件
1.unsigned :无符号,没有负数,从0开始。
2.zerofill:零填充,当显示长度不够的时候可以使用前补0的效果填充至指定长度
3.NOT NULL:非空约束,也就是查入值的时候这个字段必须要给值
4.DEFAUL:默认值,如果插入记录的时候没有给字段赋值,则使用默认值
5.PRIMARY KEY:主键,标识记录的唯一性,值不能重复,一个表只能有一个主键,自动禁止为空。
6.UNIQUE KEY:唯一性,一个表中可以有多个字段是唯一索引,同样的值不能重复,但是NULL除外
7.AUTO_INCREMENT: 自动增长,只能用于数值列,而且配合索引使用
8.FOREIGN KEY: 外键约束
--向imooc_user表插入一条记录
INSERT imooc_user(id,username,password,email,age,card,tel)
VALUES(1,'king','king','401076528@qq.com','24','98776645637377733','15822881246')
--查询表中所有记录
SELECT * FROM tbl_name;
INSERT imooc_user(id,username)