
MySQL
文章平均质量分 80
ButFlyzzZ
这个作者很懒,什么都没留下…
展开
-
MySQL count(*),count(1)与count(column)区别
ount(*)对行的数目进行计算,包含NULLcount(column)对特定的列的值具有的行数进行计算,不包含NULL值。count()还有一种使用方式,count(1)这个用法和count(*)的结果是一样的。性能问题1.任何情况下SELECT COUNT(*) FROM tablename是最优选择;2.尽量减少SELECT COUNT(*) FROM table转载 2017-10-29 17:21:40 · 852 阅读 · 0 评论 -
使用mysql容器
1.拉取官方mysql镜像docker search mysql官方镜像版本分为 mysql:5.6 mysql:5.7 mysql:latest我们使用5.7版本,下载镜像:docker pull mysql:5.72.运行镜像使用docker run运行镜像docker run --name mysql -p 12345:3306 -e MYSQL...原创 2018-12-12 11:41:59 · 1816 阅读 · 1 评论 -
Python操作MySQL
本篇对于Python操作MySQL主要使用两种方式:原生模块 pymsqlORM框架 SQLAchemypymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同。1、执行SQL#!/usr/bin/env python# -*- coding:utf-8 -*-import pymysql # 创建连接conn = pymysql.c转载 2017-10-22 14:53:36 · 245 阅读 · 0 评论 -
MySQL表增删改查
1、增insert into 表 (列名,列名...) values (值,值,值...)insert into 表 (列名,列名...) values (值,值,值...),(值,值,值...)insert into 表 (列名,列名...) select (列名,列名...) from 表2、删delete from 表delete from 表 where id=1 and转载 2017-10-22 11:32:11 · 302 阅读 · 0 评论 -
数据库设计三大范式
为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。在关系型数据库中这种规则就称为范式。范式是符合某一种设计要求的总结。要想设计一个结构合理的关系型数据库,必须满足一定的范式。 在实际开发中最为常见的设计范式有三个:1.第一范式(确保每列保持原子性)第一范式是最基本的范式。如果数据库表中的所有字段值都是不可分解的原子值,就说明该数据库转载 2017-10-20 23:09:01 · 164 阅读 · 0 评论 -
MySQL 数据库引擎
数据库中的存储引擎其实是对使用了该引擎的表进行某种设置,数据库中的表设定了什么存储引擎,那么该表在数据存储方式、数据更新方式、数据查询性能以及是否支持索引等方面就会有不同的“效果”。在MySQL数据库中存在着多种引擎(不同版本的MySQL数据库支持的引擎不同),熟悉各种引擎才能在软件开发中应用引擎,从而开发出高性能的软件,MySQL数据库中的引擎有哪些呢?一般来说,MySQL有以下几种引擎:ISA转载 2017-10-20 23:10:56 · 163 阅读 · 0 评论 -
MySQL之主键、外键、索引
主键:主键是数据表的唯一索引,比如学生表里有学号和姓名,姓名可能有重名的,但学号确是唯一的,你要从学生表中搜索一条纪录如查找一个人,就只能根据学号去查找,这才能找出唯一的一个,这就是主键;如:id int(10) not null primary key auto_increment ;not null :不能为空 primary key : 主键 auto_转载 2017-10-21 10:26:10 · 234 阅读 · 0 评论 -
MySQL数据类型
MySQL的数据类型大致分为:数值、时间和字符串bit[(M)] 二进制位(101001),m表示二进制位的长度(1-64),默认m=1 tinyint[(m)] [unsigned] [zerofill] 小整数,数据类型用于保存一些范围的整数数值范围: 有符号:转载 2017-10-21 11:27:28 · 215 阅读 · 0 评论 -
MySQL数据表基本
1、显示数据库SHOW DATABASES;默认数据库: mysql - 用户权限相关数据 test - 用于用户测试数据 information_schema - MySQL本身架构相关数据2、创建数据库# utf-8CREATE DATABASE 数据库名称 DEFAULT CHARSET utf8 COLLATE utf8_general_ci; # gb转载 2017-10-22 21:27:44 · 217 阅读 · 0 评论 -
MySQL进阶
视图是一个虚拟表(非真实存在),其本质是【根据SQL语句获取动态的数据集,并为其命名】,用户使用时只需使用【名称】即可获取结果集,并可以将其当作表来使用。1.创建视图--格式:CREATE VIEW 视图名称 AS SQL语句CREATE VIEW v1 AS SELET nid, nameFROM AWHERE nid > 42.删除视图-转载 2017-10-24 10:22:21 · 184 阅读 · 0 评论 -
MySQL事务
问题的提出 数据库是要被广大客户所共享访问的,那么在数据库操作过程中很可能出现以下几种不确定情况。 更新丢失 两个事务都同时更新一行数据,一个事务对数据的更新把另一个事务对数据的更新覆盖了。这是因为系统没有执行任何的锁操作,因此并发事务并没有被隔离开来。 脏读 一个事务读取到了另一个事务未提交的数据操作结果。这是相当危险的,因为很可能所有的操作都被回滚。 不可重复读 不可重复读(Non-repea...原创 2017-10-25 22:24:46 · 174 阅读 · 0 评论 -
MySQL练习题
题目来源于网络,答案全为博主手敲一、表关系建立表关系分析:二、增删查改1.查询“生物”课程比“物理”课程成绩高的所有学生的学号select * from (select student_id,course_id,score from score left join course on score.course_id = course.cid where原创 2017-10-29 16:32:56 · 779 阅读 · 0 评论 -
Python使用Mysql连接池
0X00 为什么要用数据库连接池平常可能习惯使用pymysql或者一些数据库连接包去跟数据库交互,代码可能是这样的:import pymysqlconfig = { 'host': config_template['MYSQL']['HOST'], 'port': config_template['MYSQL']['PORT'], 'user': config...原创 2019-08-17 11:15:56 · 15646 阅读 · 2 评论