mysql数据库基本操作

接下来进行数据库的基本操作:

打开cmd

1.登录数据库:mysql -u root(或你的数据库名字) -p

2.输入密码后回车(输入密码时cmd不会显示的,直接输入回车即可)

3.查看mysql的所有数据库(自带的以及我们自己创建的):  show databases;   (一定要在结尾加;)

这4个数据库是mysql自带的,最好不要动,可能会导致数据库不能用。

 

4.创建数据库: create database 数据库名称;

5.删除数据库:create database 数据库名称;

6.进入某一数据库: use 数据库名称;

7.根据6,查看数据库中的数据表: show tables;

8.以上步骤都是基于cmd执行的,不够直观,若想更直观,请下载安装Navicat

9.查询指定列的数据:SELECT 列名1,列名2 FROM 表名;

10.添加一列到指定表中:ALTER TABLE 表名 ADD 列名 VARCHAR(字节数);

  例如添加一列性别到students表中:ALTER TABLE students ADD gender VARCHAR(2);

11. 条件查询where,例如:查询age=24并且性别是女的所有学生信息:SELECT * FROM students WHERE age=24 AND gender='女';

12. 查询学生表中 id=1 或name=lucy的所有学生信息:SELECT * FROM students WHERE id=1 OR name=’lucy‘;

13.查询学号为1,2,3的学生信息:SELECT * FROM students WHERE id=1 OR id=2 OR id=3; 

             或者用in: SELECT * FROM students WHERE id IN (1,2,3);

14.查询性别为空的学生信息:SELECT * FROM students WHERE gender IS NULL;

15.查询性别不为空的记录 :SELECT * FROM students WHERE gender IS NOT NULL;

16.查询性别非男的记录:SELECT * FROM students WHERE gender != '男';

17.查询年龄在18-20之间的记录:SELECT * FROM students WHERE age>=18 AND age<=20; 

       或者用 between:SELECT * FROM students WHERE age BETWEEN 18 AND 20;

模糊查询  like

18

 

去重关键字  distinct : 将查询结果的重复数据去掉,用法 distinct+字段

  例如:select distinct name from students;   查询学生表中的名字,去掉重复的名字

 

where后面跟的关键字

in  代表在这个取值中,只要包含一个,则符合条件

     例如:select name from students where age in (18,19,20) ;   查询学生年龄等于18,19或者20的人的名字 ,相当于 age=18 or age=19 or age=20

not in  与in相反,表示不在这个集合中

between ... and ,在这个区间,相当于>= and <=

    例:select name from students where age  between 18 and 20 ;查询学生年龄大于等于18并且小于等于20的人

is null 判断一个关键字的值为空

is not null  判断一个关键字的值不为空

 

函数

 数学函数

 

聚合函数

AVG() 返回指定列的平均值

COUNT() 返回指定列中非Null值得个数

MIN() 返回指定列得最小值

MAX() 返回指定列得最大值

SUM() 返回指定列得所有值得和

 

字符串函数

 

 

  

 

数据完整性:

什么是数据完整性?

保证用户输入的数据保存到数据库中是正确的

如何添加数据完整性?

在创建表时给表中添加约束。

完整性分类:实体完整性,域完整性,引用完整性

实体完整性:

  表中的一行(一条记录)就代表一个实体,实体完整性就是一行数据的完整性

  实体完整性的作用:标识每一行数据不重复,行约束,不能重复添加

  约束类型:主键约束、唯一约束、自动增长列

    主键:创建表时,可以将某一行字段设置成主键,主键必须数据唯一,且不为null,每一个表中要有一个主键

    创建:1、CREATE TABLE 表名(字段1 数据类型 primary key, 字段2 数据类型);

       2、CREATE TABLE 表名(字段1 数据类型, 字段2 数据类型,  primary key(要设置的主键字段));

       3、CREATE TABLE 表名(字段1 数据类型, 字段2 数据类型,  primary key(主键1,主键2)) ;    可以添加联合主键

       联合主键:用俩个字段同时来约束,俩个字段数据同时相同时,才违反联合主键约束

       4、先创建表,再修改表,添加主键 ALTER TABLE 表名 ADD CONSTRAINT PRIMARY KEY(要设置的主键字段);

    唯一约束:指定列的数据不能重复,可以为空

    创建:在字段后面加上UNIQUE,  CREATE TABLE 表名(字段1 数据类型, 字段2 数据类型 UNIQUE);

    自动增长列: 指定列的数据自动增长,即使数据删除,还是从删除的数据继续往下,一般会将主键设置为自动增长列

    创建:CREATE TABLE 表名(字段1 数据类型 primary key auto_increment, 字段2 数据类型);

域完整性:域代表当前单元格,争对一个单元格的数据,限制此单元格的数据正确,不对照此列的其他单元格比较

  约束类型:数据类型、非空约束(not null)、默认值约束(default)

    数据类型:数值类型、日期类型、字符串类型

    非空约束:CREATE TABLE 表名(字段1 数据类型 PRIMARY KEY AUTO_INCREMENT, 字段2 数据类型 UNIQUE not null);

    默认值约束:CREATE TABLE 表名(字段1 数据类型 PRIMARY KEY AUTO_INCREMENT, 字段2 数据类型  DEFAULT "默认值");

参照完整性

什么时参照完整性?

是指表与表之间的一种对应关系,通常情况下,可以通过设置俩表之间的主键,外键关系,或者编写俩表的触发器来实现,有对应参照完整性的俩张表格,在对他们进行数据插入、更新、删除的过程中,系统都会将被修改表格与另一表格进行对照,从而阻止一些不正确的数据操作。

特点:1、数据库得主键和外键类型必须一致;

2、俩个表必须得要是InnoDB类型

3、设置参照完整性后,外间当中的内值,必须得是主键当中的内容

一个表设置当中的字段设置为主键,设置主键为主表:

 

posted @ 2018-12-23 17:51  玖兰枢_优姬  阅读(173)  评论(0编辑  收藏  举报