MySQL
做只早起的鸟儿
这个作者很懒,什么都没留下…
展开
-
MySQL子表删除策略
子表的删除更新策略一共有四种:1)CASCADE 级联策略。使用此种策略时主表的记录被删除或者主键字段被修改时会同步删除或修改子表2)NO ACTION 无动作策略。使用此种策略时要删除主表必须先删除子表,要删除主表的记录必须先删除子表关联的记录,不能更新主表主键字段的值。3)RSTRICT 主表约束策略。此种策略对主表的约束跟 NO ACTION 一样4)SET NO 置空策略。使用此...原创 2019-04-10 18:30:57 · 639 阅读 · 0 评论 -
数据库DQL(select)
DQL:Data Query Language 数据查询语言标准语法select * from 表名;:显示全部数据select 字段(eg:name,age) from 表名;:显示所写的字段数据(name,age)select distinct 字段 from 表名;:去除字段中重复的数据 ,比如数据中有两个叫张三的,这里只会显示一个;1.selecte 可以跟表达式select ...原创 2019-04-09 19:32:00 · 185 阅读 · 0 评论 -
MySQL数据完整性(实体完整性、域完整性)
数据完整性: 为保证插入到数据库中的数据是正确的,防止用户输入错误的数据 分为实体完整性、 域完整性 、参照完整性 (下节再说)(1)实体完整性:实体指的是表中的一行,一行记录对应一个实体 ,通过主键实现主键:关键字(primary key);特点:不能为null,并且唯一。逻辑主键(推荐):例如ID,不代表实际的业务意义,只是用来唯一标识一条记录(推荐) eg: create tabl...原创 2019-04-09 19:47:45 · 3032 阅读 · 0 评论 -
MySQL存储过程(简述)
存储过程就是 在MySQL上保存一个别名,这个别名包含的中就是一堆sql语句。我们可通过 别名() 这样方式使用存储过程。目的:为了代替程序员写sql语句 DBA写存储过程 ,程序员调用存储过程格式:1、第一种 简单:delimiter //create procedure 名字 ()beginsql语句 ;end //delimiter ;call 名字()...原创 2019-04-12 21:58:43 · 415 阅读 · 0 评论 -
mysql table 主键
Q1.什么时候用主键?或主键的用处?A1:保证数据的唯一性Q2.一张表只能有一张主键?A2:对Q3.一个主键只能是一列吗?A3:错解释:一个表可以用两列做主键,只要这两列唯一就可以常用:create table person(id int primary key auto_increment,……);不常用:create table person(id int not ...原创 2019-04-09 22:36:04 · 358 阅读 · 0 评论 -
MySQL外键(两列做主键)
目的:用两列创建主键表一create table ta1(id int not null primary key auto_increment,pid int not null,uname varchar(20))engine =innodb default charset=utf8由于这种写法无法再表二无法进行外键的关联 顾写成下面的格式表一的变形create table t...原创 2019-04-09 22:57:35 · 3322 阅读 · 0 评论 -
sql趣味自增
Purpose:改变auto_increment自增的起始值众所周知 当一个表的主键id设置auto_increment时,每插入一条数据,id就会自动加1,即使清空表以后,id的值依然会保存,当再插入数据时,id会在原有id值上接着加1。1、创建一个表create table per(id int PRIMARY KEY auto_increment,name VARCHAR(20)...原创 2019-04-09 23:26:38 · 117 阅读 · 0 评论 -
Pymysql模块和sqlalchemy模块
orm: object , relative , mapping :对象关系映射类->表格 一个类对应一个表格对象–>记录属性–>字段接下来是一个简单的通过pycharm 来实现数据库的增删改查:步骤:(1)创建引擎(2)创建基类(3)创建 类(4)创建表格#所需要的模块import pymysqlfrom sqlalchemy import cr...原创 2019-04-13 14:19:40 · 469 阅读 · 0 评论 -
naviat 12连接不上mysql8 报2059错误(刚安装完这两个时)
进入到user库中,修改密码,就ok了原创 2019-07-05 17:02:01 · 129 阅读 · 0 评论 -
数据库 DML中的delete
delete语法:格式1:delete from 表名;清空表,不删除表,删除表使用drop格式2:delete from 表名 where 条件;:只要是符合条件的都删除扩展:truncate table 表名;:摧毁整张表,重新建立表结构,效率高...原创 2019-04-09 19:03:05 · 258 阅读 · 0 评论 -
MySQL创建表 的理解
create table t1(id int,name varchar(20)) engine=innodb default charser=utf8;innodb 支持事务(eg:取钱事务)myisam myisam 不支持事物 auto_increment 表示:自增primary key :表示 约束(不能重复,不能为空);加速查找数据类型: 数字: tinyint ...原创 2019-04-08 20:52:46 · 174 阅读 · 0 评论 -
MySQL初理解
数据库软件: 关系型数据库:sqlite、db2、oracle、access、sql server、MySQL 非关系型数据库(约束少):MongoDB、redisMySQL:是用于管理文件的一个软件 --服务端软件(mysqld): --socket服务端 --本地文件操作 --解析指令(sql语句) 等功能 --客户端软...原创 2019-04-08 19:48:44 · 108 阅读 · 0 评论 -
MySQL(多对多、一对多、一对一)
多对多:例如:一个学生可以学多门课程一门课程可以有多个学生: 多对多创建学生表:create table students(id int primary key auto_increment,name varchar(20) not null,gender char(10));创建课程表:create table course(id int primary key aut...原创 2019-04-10 19:02:52 · 456 阅读 · 0 评论 -
MySQL多表查询
多表查询:(表必须有关联)先创建两张有关联的表,这里采用 一对一方式连接表,第一张为用户表,第二张为 IDcard表,这里就不写插入数据了创建用户表:create table users(id int primary key auto_increment,name varchar(20),age int);创建idcard表create table card(id int...原创 2019-04-10 20:01:15 · 85 阅读 · 0 评论 -
mysql 复合函数
聚合函数在这里我们创建几张表来 做例子create table teacher(id int PRIMARY KEY auto_increment,name VARCHAR(20) NOT null,sub VARCHAR(20) not null);create table student(id int PRIMARY KEY auto_increment,name VARC...原创 2019-04-10 20:08:52 · 1525 阅读 · 0 评论 -
mysql事务
1、什么是事务:事务。数据库事务(简称:事务)是数据库管理系统执行过程中的一个逻辑单位,由一个有限的数据库操作序列构成。2、ACID性质并非任意的对数据库的操作序列都是数据库事务。数据库事务拥有以下四个特性,习惯上被称之为ACID特性。原子性(Atomicity):事务作为一个整体被执行,包含在其中的对数据库的操作要么全部被执行,要么都不执行。一致性(Consistency):事务应确...原创 2019-04-11 21:25:26 · 72 阅读 · 0 评论 -
mysql索引
索引在Mysql中是存储引擎用于快速找到记录的一种数据结构(BTree,平衡树),索引对于数据库的良好性能是非常关键的,尤其是当表中的数据量越来越大的时候,索引对于性能的影响愈发重要。索引相当于字典的目录,如果查找某个字的时候可以通过目录,提高查询速度,否则需要翻阅字典的每一页。使用索引的目的:提高查询速度。索引特点:创建和维护索引会消耗很多时间与磁盘空间,但是查询速度大大提高。(创建字典...原创 2019-04-11 21:47:16 · 96 阅读 · 0 评论 -
mysql视图
1、什么是视图视图是基于 SQL 语句的结果集的可视化的表。视图包含行和列,就像一个真实的表。视图中的字段就是来自一个或多个数据库中的真实的表中的字段。我们可以向视图添加 SQL 函数、WHERE 以及 JOIN 语句,我们也可以提交数据,就像这些来自于某个单一的表。注释:数据库的设计和结构不会受到视图中的函数、where 或 join 语句的影响。2、视图的作用(1)简化用户的操作关...原创 2019-04-11 21:58:20 · 201 阅读 · 0 评论 -
数据库第一天:数据库 和数据表的一些简单基本操作
一 : DDL(对表格数据库的操作)1、show databases 查看数据库2、create database (dataname)[character set gbk|utf8] 创建数据库3、use (data name)使用数据库4、show tables 查看表5、create table student(id int,name varchar(20),gender v...原创 2019-04-08 19:00:30 · 120 阅读 · 0 评论 -
mysql触发器(TRIGGER)
触发器(trigger):监视某种情况,并触发某种操作,它的执行是由事件来触发的,例如当对一个表进行操作( insert,delete, update)时就会激活它执行。触发器经常用于加强数据的完整性约束和业务规则等。 触发器创建语法四要素:1.监视地点(table)2.监视事件(insert/update/delete)3.触发时间(after/before)4.触发事件(inser...原创 2019-04-11 22:10:49 · 168 阅读 · 0 评论 -
contos7下mariadb主从备份
1、准备俩个虚拟机:克隆虚拟机时注意:修改克隆机的mac地址我的主机地址:192.168.110.128 user:root ,password:root我的从机地址:192.168.110.129 user:root ,password:root,都可以ping通百度,我的数据库用户是root,密码是root记得使用自己的2、主机启动mariadb服务,打开数据库,输入命令 ...原创 2019-09-25 15:46:12 · 178 阅读 · 0 评论