随笔分类 -  mysql数据库

摘要:一、加锁 表名:test 1、加读锁 #读锁,锁定之后,无论是当前线程还是其他线程均只能读操作,写操作全部被堵塞,备份时可以用,避免在备份过程中,表被更新 LOCK TABLES test READ; 2、加写锁 #写锁,锁定之后,只有当前线程可以进行读操作和写操作,其他线程读操作和写操作均被堵塞. 阅读全文
posted @ 2023-04-19 11:07 米兰的小铁將 阅读(720) 评论(0) 推荐(0) 编辑
摘要:一、索引设置1、索引的设置原则经常出现在WHERE条件、关联条件中的字段作为索引字段;在满足查询需求的前提下,应尽可能少的创建索引;(对于一个组合索引,可以满足以组合索引左边的一部分字段的查询需求);经常更新的字段,不适合创建索引;区分度太低的字段,不适合创建索引;不要为永远不会出现在WHERE条件、关联条件中的字段创建索引;2、案例分析比如有下面一张表:查询需求如下:需求一:按单个客户编号查询某... 阅读全文
posted @ 2019-09-05 11:09 米兰的小铁將 阅读(728) 评论(0) 推荐(0) 编辑
摘要:一、去重的2种基本方法1、DISTINCT##建表:CREATE TABLE teacher(teacher_id VARCHAR(50),teacher_name VARCHAR(50),id_no VARCHAR(50));CREATE INDEX idx_teacher_id ON teacher(teacher_id);插入重复数据:DELETE FROM teacher;INSERT I... 阅读全文
posted @ 2019-09-05 09:58 米兰的小铁將 阅读(1746) 评论(0) 推荐(0) 编辑
摘要:一、隐式类型转换1、隐式类型转换隐式类型转换:SELECT 1 + '1'; 程序可读性差,且依赖数据库的隐式转换规则,如果数据库升级,则程序可能无法正确执行; 有可能会导致索引失效; 有可能会导致意想不到的结果;显式类型转换:SELECT 1 + CAST('1' AS SIGNED INT);尽量用显式类型转换;2、数值型 + 字符型SELECT 1+'1'; ... 阅读全文
posted @ 2019-09-04 14:17 米兰的小铁將 阅读(2335) 评论(0) 推荐(1) 编辑
摘要:一、行转列1、建表CREATE TABLE score( student_id VARCHAR(20) NOT NULL COMMENT '学生编号' DEFAULT '', student_name VARCHAR(50) NOT NULL COMMENT '学生姓名' DEFAULT '', gender VARCHAR(10) NOT NULL COMMENT '学生性别'... 阅读全文
posted @ 2019-09-04 13:03 米兰的小铁將 阅读(830) 评论(0) 推荐(0) 编辑
摘要:一般有这几种转换:一、数值型与字符型的转化###数值型转为字符型: 65 –> '65' select cast(65 as char); 65 –> 'A' select char(65); 65.23 --> '65.23' select cast(65.23 as char(10));###字符型转为数... 阅读全文
posted @ 2019-09-03 14:41 米兰的小铁將 阅读(708) 评论(0) 推荐(0) 编辑
摘要:一、游标1、游标简介SQL是一种集合操作语言,但有时候需要对单行操作怎么办呢?也就是有时候会过滤出不止一行的数据,但是想一行行的处理;---游标游标: 从集合中依次提取单条记录,直接提取完最后一条; 类似于指针的作用; 尽管游标能遍历结果中的所有行,但一次只指向一行;游标的适用场景: 存储过程 函数 触发器游标的使用步骤: 定义游标 DECLARE 游标... 阅读全文
posted @ 2019-09-02 16:04 米兰的小铁將 阅读(564) 评论(0) 推荐(0) 编辑
摘要:一、存储过程1、存储过程简介存储过程: 一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,然后通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它。存储过程的创建: 使用关键字CREATE PROCEDURE2、存储过程的创建及调用比如: 现需要向学生表中插入新的学生数据。但在插入学生数据的时,需要同时检查老师表里的数据。 如果插入学生的老师不在... 阅读全文
posted @ 2019-09-02 15:14 米兰的小铁將 阅读(717) 评论(0) 推荐(0) 编辑
摘要:一、约束1、约束简介约束(constraint): 表中数据的限制条件。 完整性 有效性约束的种类: 主键约束 外键约束 唯一约束 检查约束 非空约束2、主键约束主键约束: 唯一标识表中每一行的一列或多个列,可以定义一列或多列为主键; 主键列上没有任何两行具有相同值(即重复值),不允许空(NULL); 主健可作外健,唯一索引不可; 不... 阅读全文
posted @ 2019-09-02 13:37 米兰的小铁將 阅读(518) 评论(0) 推荐(0) 编辑
摘要:一、更新数据1、更新数据###更新全部数据: 使用UPDATE关键字。语法如下: UPDATE 表名 SET 字段名=新的值;比如: 更新学生表中的所有学生性别为男: UPDATE student SET gender = '男';###更新部分数据: 使用UPDATE关键字。语法如下: UPDATE 表名 SET 字段名=新的值 WHERE 限定条件;比如: ... 阅读全文
posted @ 2019-09-02 11:03 米兰的小铁將 阅读(3516) 评论(0) 推荐(0) 编辑
摘要:一、连接表1、SQL JOIN忘记在哪保存的某位网友的图,先明白SQL JOIN,2、关于笛卡尔积笛卡尔积: 两个集合的乘积重新建student表和teacher表:student表:CREATE TABLE `student` ( `student_id` varchar(50) NOT NULL COMMENT '学生编号', `student_name` varchar(100) ... 阅读全文
posted @ 2019-08-30 17:04 米兰的小铁將 阅读(517) 评论(0) 推荐(0) 编辑
摘要:一、子查询1、使用子查询作为计算字段子查询:嵌套在其他查询中的查询现在有两个表,student表和teacher表创建teacher表,并插入数据:CREATE TABLE `teacher` ( `teacher_id` varchar(255) DEFAULT NULL COMMENT '老师编号', `teacher_name` varchar(255) DEFAULT NULL COM... 阅读全文
posted @ 2019-08-30 10:56 米兰的小铁將 阅读(1118) 评论(0) 推荐(0) 编辑
摘要:一、汇总统计1、聚集函数COUNT() 计算总数SUM() 求和MAX() 最大值MIN() 最小值AVG() 平均值2、聚集函数使用总共有多少名学生?SELECT COUNT(*) FROM student;所有学生的数学成绩总和?SELECT SUM(score) FROM student;所有学生的数学成绩最高分?SELECT... 阅读全文
posted @ 2019-08-29 16:24 米兰的小铁將 阅读(6522) 评论(0) 推荐(0) 编辑
摘要:一、创建新的输出字段1、建表、插数据###CREATE TABLE `t_stock_trans_dtl` ( `trans_id` varchar(100) NOT NULL COMMENT '交易流水号', `stock_name` varchar(20) NOT NULL DEFAULT '' COMMENT '股票名称', `stock_code` varchar(10) NOT N... 阅读全文
posted @ 2019-08-29 11:38 米兰的小铁將 阅读(1884) 评论(0) 推荐(0) 编辑
摘要:一、过滤数据1、使用WHERE子句过滤数据:关键字WHERESELECT 字段列表 FROM 表名 WHERE 过滤条件;过滤条件一般由要过滤的字段、操作符、限定值三部分组成;如: SELECT student_id,student_name FROM student WHERE gender = '男';2、常用操作符3、过滤单个值#age 不等于10SELECT student_id ... 阅读全文
posted @ 2019-08-29 09:47 米兰的小铁將 阅读(1221) 评论(0) 推荐(0) 编辑
摘要:一、操纵表1、表的关键信息2、更新表名更新表名:使用RENAME TABLE关键字。语法如下: RENAME TABLE 旧表名 TO 新表名;比如,生产环境投产前备份teacher表,使用如下语句: RENAME TABLE teacher TO teacher_bak;3、更新字段名更新字段名:使用ALTER TABLE关键字。语法如下: ALTER TABLE 表名 REN... 阅读全文
posted @ 2019-08-28 17:05 米兰的小铁將 阅读(562) 评论(0) 推荐(0) 编辑
摘要:一、建表1、创建表的两种方式*客户端工具 *SQL语句2、使用SQL语句创建表表名和字段名不能使用中文;(一般为字母开头,字母、数字、下划线组成的字符串);CREATE TABLE关键字后跟上表名,字段名在括号中列出且以逗号分隔;最后以分号结尾;不区分大小写,但最好关键字都大写;按一定的规则缩进;每个字段都需要设置数据类型;常用的数据类型有以下几个大类: 字符类 数值类 日期和时... 阅读全文
posted @ 2019-08-28 13:53 米兰的小铁將 阅读(6961) 评论(0) 推荐(0) 编辑
摘要:一、安装mysql和xtrabackup (1)安装mysql 因为RDS是5.6版本,所以我们本地的mysql数据库要与RDS版本对应。 rpm -ivh http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm && yum - 阅读全文
posted @ 2019-01-24 16:11 米兰的小铁將 阅读(1120) 评论(0) 推荐(0) 编辑
摘要:1、备份: #常用参数 --user:该选项表示备份账号。 --password:该选项表示备份的密码。 --port:该选项表示备份数据库的端口。 --host:该选项表示备份数据库的地址。 --socket:该选项表示mysql.sock所在位置,以便备份进程登录mysql。 --default 阅读全文
posted @ 2019-01-17 15:41 米兰的小铁將 阅读(4096) 评论(2) 推荐(1) 编辑

点击右上角即可分享
微信分享提示