数据库

MySQL--当事务遇到DDL命令

09-27
众所周知MySQL的DDL语句是非事务的,即不能对DLL语句进行回滚操作,哪在事务中包含DDL语句会怎样呢? 如: #禁用自动提交 set autocommit=off; #创建tb1 create table tb1(id int auto_increment primary key,c1 int); #开始事务 start transaction; #插入数据 insert into tb1(c1) select 1; insert into tb1(c1) select 2; insert

Homebrew(brew)安装MySQL成功后无法登录

09-27
Homebrew简称brew,OSX上的软件包管理工具,在Mac终端可以通过brew安装.更新.卸载各种软件,(简直就是神器级武器). 废话不多说,没安装brew自己去百度学习安装,这里就不多说了. 1.首先在终端使用命令,这是搜索brew上的MySQL各个版本 brew search mysql 2.选择自己需要的版本,安装MySQL,这里我安装为5.7版本 brew install [email protected] 3.执行后稍等片刻,它会自动安装,以下为安装成功后显示的信息 MySQL

Yii2 HOW-TO(4):PDO连接数据库错误

09-27
问题代码 1,控制器代码如下: public function actionIndex() { $query = Country::find(); $pagination = new Pagination([ 'defaultPageSize' => 5, 'totalCount' => $query->count() ]); $countries = $query->orderBy('name') ->offset($pagination->offset) ->

[转帖] Oracle JDK 11 正式发布.. 版本号真快

09-27
Java 11 / JDK 11 正式发布! oschina 发布于 2018年09月26日 收藏 19 评论 38 在您的既有IT基础设施上按需构建人工智能更高效>>>   美国当地时间9月25日,Oracle 官方宣布 Java 11 (18.9 LTS) 正式发布,可在生产环境中使用!这是自 Java 8 后的首个长期支持版本,非常值得大家的关注,可以通过下面的地址进行下载: https://www.oracle.com/technetwork/java/javase/downlo

mysql索引,事务

09-27
1.开启数据库,创建数据库,表等.2.创建普通索引3.创建唯一索引4.创建主键索引5.删除索引6.删除主键7.修改表结构(1.增加一列)(2.删除已列)(3.修改列的内容)8.创建全文索引9.创建多列索引10.事务 原文地址:http://blog.51cto.com/13813317/2286712

SQL 之关于case 函数的使用

09-27
废话不多,直接上SQL case 形式一: SELECT f.series_id, <!-- f.fuel_flag, --> (CASE f.fuel_flag WHEN 1 THEN '汽油' WHEN 2 THEN '柴油' WHEN 3 THEN '油电混合' WHEN 4 THEN '纯电动' WHEN 5 THEN '油气混合' WHEN 6 THEN '液化石油气' WHEN 7 THEN '压缩天然气' WHEN 8 THEN '甲醇' WHEN 9 THEN '乙醇' ELS

oracl数据库中的substr()函数的用法

09-27
substr:字符串截取. 1.substr:(字符串 | 列 ,开始点):从开始一直截取到结尾. select substr(zym,2) from bqh4 2.substr:(字符串 | 列 ,开始点 结束点):从开始-结束截取 select substr(zym,2,5) from bqh4 3.要求截取zym的后三位: 正常思路:通过长度减数字确定开始点.select substr(zym,length(zym)-2) from bqh4 新思路:设置负数,表示从后指定截取位置sele

数据库三大范式个人理解,书上讲的太抽象

09-27
第一范式(1NF):强调的是列的原子性,即列不能够再分成其他几列. 个人理解:列不可分(原子性,即字段不可以再分) 地址可以再分,分成省份,城市,和详细地址 第二范式(2NF):首先是 1NF,另外包含两部分内容,一是表必须有一个主键:二是没有包含在主键中的列必须完全依赖于主键,而不能只依赖于主键的一部分. 个人理解:不存在部分依赖(唯一性,不可以把多种数据保存在同一张表中,即一张表只能保存"一种"数据) 表: 学号, 姓名, 年龄, 课程名称, 成绩, 学分 问题: 数据冗余,每条记

mysql 根据某个字段将多条记录的某个字段拼接成一个字段

09-27
1 问题 GROUP_CONCAT函数用于将多个字符串连接成一个字符串,在拼接成字符串时就会存在拼接长度的问题,mysql 默认的拼接最大长度为1024 个字节,由于1024个字节会出现不够用的情况,所以有时需要去根据情况进行修改, 使用SHOW VARIABLES LIKE "%group_concat_max_len%"查看 mysql> SHOW VARIABLES LIKE "%group_concat_max_len%"; +------------

关于时间的那些事--PHP、JavaScript、MySQL操作时间

09-26
PHP篇 PHP中时间操作单位是秒 一.将时间戳转为普通日期格式 //当前时间戳 time(); //当前时间格式 date("Y-m-d H:i:s",time()); //昨天时间格式 date("Y-m-d,H:i:s",time()-3600*24); 二.将普通日期格式转为时间戳 //将日期格式转为时间戳 strtotime("now"); //当前时间戳 strtotime("last Monday"); //上个

Linux下MySQL的简单使用(二)

09-26
上一篇我们介绍到一些Linux的简单命令的使用,今天我们更深入了解一下MySQL! 一.多表查询 这篇通过实例来讲述多表查询,目的是穷尽所有的场景和所有的方法,并且对每个方法的使用做实例. 首先先列举本篇用到的分类(内连接,外连接,交叉连接)和连接方法: A)内连接:join,inner join B)外连接:left join,left outer join,right join,right outer join,union C)交叉连接:cross join 首先导入hellodb.sql,

zbb20180927 MySQL MyISAM InnoDB区别

09-26
MySQL MyISAM InnoDB区别 InnoDB:支持事务处理等不加锁读取支持外键支持行锁不支持FULLTEXT类型的索引不保存表的具体行数,扫描表来计算有多少行DELETE 表时,是一行一行的删除InnoDB 把数据和索引存放在表空间里面跨平台可直接拷贝使用InnoDB中必须包含AUTO_INCREMENT类型字段的索引表格很难被压缩 MyISAM:不支持事务,回滚将造成不完全回滚,不具有原子性不支持外键不支持外键支持全文搜索保存表的具体行数,不带where时,直接返回保存的行数DEL

windbg 定位崩溃问题

09-26
三板斧如下: 使用windbg打开dump文件,设置好对应进程的 pdb 文件(这个很关键.为了避免releas优化导致符号文件错乱,我发布的所有                      release 版都是关闭代码优化的). 在windbg的"edit"->"open/close log file"  设置log 路径 "d:\a.log" 输入命令 "~*er?$t1=((ntdll!_NT_TIB*)@$teb)->

oracle sql语言模糊查询

09-26
'^' 匹配输入字符串的开始位置,在方括号表达式中使用,此时它表示不接受该字符集合.'$' 匹配输入字符串的结尾位置.如果设置了 RegExp 对象的 Multiline 属性,则 $ 也匹配 '\n' 或 '\r'.'.' 匹配除换行符之外的任何单字符.'?' 匹配前面的子表达式零次或一次.'+' 匹配前面的子表达式一次或多次.'*' 匹配前面的子表达式零次或多次.'|' 指明两项之间的一个选择.例子'^([a-z]+|[0-9]+)$'表示所有小写字母或数字组合成的字符串.'( )' 标记一

mysql优化之参数优化

09-26
1.优化方式 硬件优化=>系统优化=>mysql配置优化=>SCHEMA优化=>sql优化=>其他解决方案(redis or MongoDB or Cassandra or HBase) 2.mysql配置分析 1)常见瓶颈 90%系统瓶颈都在IO上,所以提高IOPS尤为总要,iowait过高,加内存,减小数据读取量 如果CPU很高,或者查询时间很长,90%索引不当 如果系统发生swap,必定是内存分配不当 所以优化,总是会围绕着提高对内存的使用率+减少IO,比如内存缓存+索

云迁移-oracle flashback

09-26
最近几个月一直忙着云迁移的产品选择.技术.流程化工作,负责整个江苏省云迁移业务推广与咨询,业务基本上理的很顺,现在闲下来充充电,回顾oracle相关技术,并做相关记录. 1.数据库的flashback技术 与快速恢复区有关的两个初始化参数是: DB_RECOVERY_FILE_DEST_SIZE DB_RECOVERY_FILE_DEST 回收站-闪回 flashback:alter system set recclebin=on scope=spfile: show parameter rec

oracle中 start with .. connect by prior.. 用法简介

09-26
我们经常会将一个比较复杂的目录树存储到一个表中.或者将一些部门存储到一个表中,而这些部门互相有隶属关系.这个时候你就会用到connect by prior start with.oracle 提供了start with connect by 语法结构可以实现递归查询. connect by 是结构化查询中用到的,其基本语法是: select ... from tablename start with 条件1 connect by prior 条件2 where 条件3; 例: select *

JDBC连接数据

09-26
一.数据库连接 (前面为jdbc的其他参数,文章下部分为ResultSet详解) ResultSet rs = st.executeQuery(sqlStr) 1. java的sql框架支持多种数据库连接,不同的数据库需要使用不同的数据库连接驱动,驱动来自于数据库厂商; 2. 主要需要四个参数,一个驱动信息参数,三个数据库入口参数 driverClass:驱动信息 url:数据库连接参数 user:用户名 password:密码 3.java语言定义了很多接口,数据库厂商统一实现这些接口,所以通

python利用mongodb上传图片数据 : GridFS 与 bson两种方式

09-26
利用mongodb保存图片通常有两种方法,一种是将图片数据转化为二进制作为字典的键值对进行保存,另一种是利用mongodb提供的GridFS进行保存,两者各有利弊.性能方面的优劣未曾测试,无法进行评价,此处仅对两种方式进行介绍,若有彻知者还望指教. 下面以如下数据作为示例进行介绍: 数据示例 dic = { "owner_name" : "samssmilin", "photo_id" : "602880671", "

最佳数据库无限分级快速查找所有子节点的方法

09-26
场景我们基本设计的表是这样的 temp表 id, name, parent_id 当我们查某个节点的所有子节点的时候,我们需要递归查询 id = 4 select * from temp where parent_id = 4 ids = [5,9,25] select * from temp where parent_id in [5,9,25] 那么这种方法在层数达到一定层的时候势必带来性能问题,因为需要多次查询数据库,就算写存储过程,性能也是十分低下的. 快速查询方法如下: 改造表,添加c