mysql学习

Posted project-zqc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql学习相关的知识,希望对你有一定的参考价值。

数据库操作:

 创建一个数据表
  CREATE TABLE IF NOT EXISTS 表名(
     字段名1 类型(长度)  约束1 约束2 ... 注释,
     字段名2 类型(长度)  约束1 约束2 ... 注释,
     ...
     字段名n 类型(长度)  约束1 约束2 ... 注释
  )DEFAULT CHARSET = UTF8;
 查看数据库的编码方式
  SHOW CREATE DATABASE 库名; 
  写出mysql常用的数据类型, 至少写4种。
  TINYINT INT BIGINT 整型
  DATE TIME DATETIME TIMESTAMP  时间日期
  CHAR VARCHAR TEXT LONGTEXT 字符串
  ENUM("值1","值2","值3",...) 枚举
  FLOAT(5,2) 一共5位数,2位小数
  DOUBLE(5,2) 一共5位数,2位小数
MySQL约束条件:

1、约束条件的背景

数据表的字段如果没有任何规范和限制,
会产生数据冗余,不方便项目的使用和管理。

2、约束条件

PRIMARY KEY :主键约束, 相当于一个表中的序号,主键的值唯一不重复,
              可以用来标志一行数据,一般使用整数。
              主键默认不能重复,不需要加UNIQUE KEY;
              主键默认不能为空,不需要加NOT NULL;
              主键 PRIMARY KEY 加上 AUTO_INCREMENT 之后不需要给值,会自动增长。
              主键 PRIMARY KEY 加上 AUTO_INCREMENT 之后可以给NULL,会自动增长。

AUTO_INCREMENT :自动增长约束,往往用来配合PRIMARY KEY来修饰主键.          
              
UNIQUE KEY : 唯一约束,设置UNIQUE之后字段下的值不能重复。  
             多个NULL值不算重复。

NOT NULL : 非空约束,设置NOT NULL之后的字段值必须填写。

DEFAULT "默认值"  :默认值,给字段设置默认的值,不填写则使用默认值;
                    默认值给NULL,显示的结果是NULL。
                    默认值可以给DEFAULT关键字,会显示默认的值。

COMMENT "注释内容" :给字段的名字解释说明;

说明:
    一张数据表至少有一个字段。
    一张表可以没有主键(序号),如果有就只能有一个。
    主键具有唯一性,一个主键可以代表一行数据,一般是整数。
    一般的我们喜欢把主键叫id,比如学生表可以叫sid,stuid,Xxxid;
    字段没有默认值,不填默认为NULL,表示什么也没有;
数据的添加(插入INSERT)
 
1、添加单条数据 

语法1:
INSERT INTO 表名(字段名1,字段名2,...)
 VALUES(值1,值2,...);
举例:
INSERT INTO student(id,snum,name) 
 VALUES(1,"20190901","king");

语法2:省略字段名,每一个字段都必须按顺序给值。
INSERT INTO 表名 VALUES(值1,值2,...);
举例:
INSERT INTO `user` VALUES(NULL,"张国荣",16,"男","13843877274");

语法3:
INSERT INTO 表名 SET 
字段名1 = 字段值1,
字段名2 = 字段值2,
...,
字段名n = 字段值n;

2、添加多条数据:

语法1:
INSERT INTO 表名(字段1,字段2,...) 
VALUES
(值1,值2,...),
(值1,值2,...),
....
(值n,值n,...);

 
语法2:
INSERT INTO 表名 VALUES
(值1,值2,...),
(值1,值2,...),
...
(值n,值n,...);

注意:每一个字段都必须按顺序给值。
数据的删除(DELETE)

1、删除全部
语法:DELETE FROM 表名; 
举例:DELETE FROM user;

说明:DELETE删除数据不会重置主键的自增长值; 

2、截断表(删除全部)
语法:TRUNCATE TABLE 表名;
举例:TRUNCATE TABLE student;
说明:TRUNCATE阶段表会删除数据表的全部数据,
      并且会重置主键的自增长值;

3、删除指定的数据:
语法:DELETE FROM 表名 WHERE 条件;
举例:DELETE FROM student WHERE age = 15;
模糊匹配
字段名  LIKE 通配符和任意字符组成的字符串
字段名  NOT LIKE 通配符和任意字符组成的字符串
mysql中的通配符
_:表示任意单个字符。匹配单个任意字符,它常用来限制表达式的字符长度语句:(可以代表一个中文字符)
%:表示任意个或多个字符。可匹配任意类型和长度的字符。

 

以上是关于mysql学习的主要内容,如果未能解决你的问题,请参考以下文章

MySQL学习笔记六

MySQL数据库学习目录

有什么学习MySQL的好教程吗?

MySQL学习目录

MySQL学习总结之路(第五章:函数)

MySQL学习笔记五