数据库

[SQL]602(根据属性判定Root/Inner/Leaf)+612(两两距离)

04-12
608.树节点 思路 三种分类点的特性: Root:p_id为空:Inner:既有p_id又是别人的p_id:Leaf:剩下的. 所以代码: SELECT id, CASE WHEN p_id IS NULL THEN 'Root' WHEN id IN (SELECT p_id FROM tree) THEN 'Inner' ELSE 'Leaf' END AS Type FROM tree; 612. 平面上的最近距离 思路: 将两个表自联结,用POWER(,2)算距离,作为dist.甩掉d

MySQL基于GTID的主从复制

04-12
1.什么是GTID? 1.全局唯一,一个事务对应一个GTID 2.替代传统的binlog+pos复制:使用master_auto_position=1自动匹配GTID断点进行复制 3.MySQL5.6开始支持 4.在传统的主从复制中,slave端不用开启binlog:但是在GTID主从复制中,必须开启binlog 5.slave端在接受master的binlog时,会校验GTID值 6.为了保证主从数据的一致性,多线程同时执行一个GTID 2.组成 Master_UUID:序列号举例:ceb0c

sqli-第七关-一次不愉快的复现

04-12
http://localhost/sqli/Less-7 (注入SQL ) http://localhost/sqli/Less-7/?id=1')) --+ #确认闭合点 http://localhost/sqli/Less-7/?id=1')) order by 3--+ #确认列数 引用一道面试题:mysql注入点,用工具对目标站写入一句话,需要哪些条件? root权限以及网站的绝对路径. 先判断权限.用 and (select count(*) from mysql.user)>0 ,如

[adb devices]后,只显示 [List of devices attached],搜索不到设备信息,怎么办?

04-12
1.网上很多说是 [5037]端口被占用问题,杀死相应进程即可.但我查找了本机[5037]端口是正常没被占用,是等待状态. 2.adb.exe版本不一致导致 1)将夜神模拟器bin目录下的adb.exe文件,替换为sdk\platform-tools下的adb.exe. 2)将夜神模拟器bin目录下的nox_adb.exe,替换为sdk\platform-tools下的adb.exe,并且改文件名为:nox_adb.exe. 总结:因为adb.exe直接操作控制安卓设备,sdk内的adb与模拟器

Linux系统:Centos7下搭建PostgreSQL关系型数据库

04-12
本文源码:GitHub·点这里 || GitEE·点这里 一.PostgreSQL简介 1.数据库简介 PostgreSQL是一个功能强大的开源数据库系统,具有可靠性.稳定性.数据一致性等特点,且可以运行在所有主流操作系统上,包括Linux.Unix.Windows等.PostgreSQL是完全的事务安全性数据库,完整地支持外键.联合.视图.触发器和存储过程,支持了大多数的SQL:2008标准的数据类型,包括整型.数值型.布尔型.字节型.字符型.日期型.时间间隔型和时间型,它也支持存储二进制的大

[同步电子邮件数据库]如何将电子邮件解析到数据库?(How to parse e-mail into database?)

04-12
问 题 Still sometime I'm desperately searching for some community of developers which is dealing with the parsing of incoming email and storing its structure in the database. Quoting Mail2db developers: Different from traditional mail archive, the Mail

Mybatis 动态 sql 有什么用?执行原理?有哪些动态 sql?

04-12
Mybatis 动态 sql 可以在 Xml 映射文件内,以标签的形式编写动态 sql,执行原理 是根据表达式的值 完成逻辑判断并动态拼接 sql 的功能. Mybatis 提供了 9 种动态 sql 标签:trim | where | set | foreach | if | choose | when | otherwise | bind. 原文地址:https://www.cnblogs.com/programb/p/12687019.html

redis数据库的缓存击穿和缓存穿透

04-12
缓存穿透 缓存穿透是指查询一个一定不存在的数据,由于缓存不命中,接着查询数据库也无法查询出结果,因此也不会写入到缓存中,这将会导致每个查询都会去请求数据库,造成缓存穿透: 缓存雪崩 缓存雪崩是指,由于缓存层承载着大量请求,有效的保护了存储层,但是如果缓存层由于某些原因整体不能提供服务,于是所有的请求都会达到存储层,存储层的调用量会暴增,造成存储层也会挂掉的情况. 缓存并发 缓存并发是指,高并发场景下同时大量查询过期的key值.最后查询数据库将缓存结果回写到缓存.造成数据库压力过大 参考:http

数据库表的列约束

04-12
1.主键约束——PRIMARY KEY 声明了主键约束的列上不允许插入重复的值,一个表中只能有一个主键,通常加在编号列上,查询的时候会按照主键标号从小到大排序,会加快查找速度.主键约束不允许为NULL 2.唯一约束——UNIQUE 声明了唯一约束的列上,不允许插入重复的值,但允许插入NULL,并且多个NULL.一个表中可以出现多个唯一约束. 3.非空约束——NOT NULL 声明了非空约束的列上禁止为NULL 4.检查约束——CHECK mysql不支持检查约束,认为会对服务器造成一定的压力,降

Mybatis用SQL做自连表查询

04-12
1 需求 现在有一个菜单表,菜单里同时保存有一级菜单和二级菜单,一级菜单的父菜单id字段是null,二级菜单的父菜单id字段保存了它的父菜单的id.在Java中,一个菜单对象里有一个List类型的属性保存它的子菜单.现在需要将数据库中的数据转为Java中菜单兑现的结构. 2 方法 本文采用Mybatis,编写SQL语句做自连表查询. 3 数据库表 名 类型 id int description varchar path varchar parent_menu_id int 4 POJO pack

Code-Helper:OracleHelper.cs

04-12
ylbtech-Code-Helper:OracleHelper.cs 1.返回顶部 1. using System; using System.Configuration; using System.Data; using System.Data.OracleClient; using System.Collections; namespace PetShop.DBUtility { /// <summary> /// A helper class used to execute queri

Oracle NULL字段使用总结

04-12
oracle中在可为NULL的字段上做逻辑关系运算要格外小心,如 <>,>,=,<  任何与NULL的运算结果都返回false, 因此对于可能为NULL的字段运算判断要用   is null 来判断,或者使用函数nvl.decode处理后在判断,比如: where 字段名 is null 或者where nvl(字段名,0) = 0: -- 假设字段类型是数字 NULL算术运算例如+,-,*,/,等,结果还是NULL,但是对于连接操作符||,NULL忽略,concat函数也忽略NU

oracle备份脚本(三-rman0级全备)

04-12
#!/bin/bash export ORACLE_SID=testexport ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1export ORACLE_BASE=//u01/app/oraclebacktime=`date +"20%y%m%d%H%M%S"`cd $ORACLE_HOME/binrman target / log=/bak/log/backupall_$backtime.log <<EOF run { a

node_使用mongo数据库

04-12
egg连接MongoDB数据库 $ npm install egg-mongoose --save 开启插件config/plugin.js mongoose: { enable: true, package: 'egg-mongoose' } mongo配置信息config.default.js config.mongoose = { client: { url: 'mongodb:127.0.0.1/user', // user是collection(数据库)名称 options: {},

过滤sql语句

04-12
#Region "过滤sql语句" Public Shared Function denny(ByVal id) As String id = Replace(id, "'", "") id = Replace(id, " and ", "") id = Replace(id, "select ", "") id = Replace(id, "update

如何将oracle ojdbc驱动放到maven中

04-12
1.找到jdbc jar包 2.mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11.2.0.1.0 -Dpackaging=jar -Dfile=ojdbc6.jar 3.pom文件中配置 <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc6</artifactId> &l

Windows下安装Oracle

04-12
本次我们学习下如何在Windows下安装Oracle数据库. 本人环境:Windows10 家庭版 64位 安装版本:Oracle 11.2.0 准备安装包 关于 Oracle 11g 的安装包,我们可以直接到官网上下载. 下载链接:https://www.oracle.com/database/technologies/oracle-database-software-downloads.html 解压安装包 Oracle 11g安装包解压方法: 创建一个新文件夹用于存放Oracle 11g的

windows下 Mysqlclient安装不成功解决方法

04-12
1.4.2以后的版本不存在该问题 到https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysqlclient网址去下载 原文地址:https://www.cnblogs.com/ianduin/p/12684466.html

SQL Server第1部分:为什么要监视SQL日志

04-12
根据2019年发布的基于风险安全研究报告,数据经常会有泄露的风险,每秒有超过44条记录被盗,最主要目标是利用企业数据库,获取其机密资产.一般来讲企业不会察觉到自己的数据库已经被破坏了几个月,一旦敏感数据泄漏,损坏将无法挽回. 通过监视和分析异常活动日志,企业可以在早期阶段提高检测防御的能力,如:尽早识别出未授权访问之类的事件,可以帮助您在数据损坏之前识别并阻止. 在本系列博客中关于SQL Server的第一部分,我们将介绍为什么监视SQL日志很重要. 应该监视哪些日志来保护您的SQL数据库? 事

21.MySQL中的聚合函数

04-12
函数名 描述 COUNT() 返回参数字段的数量,不统计为NULL的记录 SUM() 返回参数字段之和 AVG() 返回参数字段的平均值 MAX() 返回参数字段的最大值 MIN() 返回参数字段的最小值 GROUP_CONCAT() 返回符合条件的参数字段值的连接字符串 JSON_ARRAYAGG() 将符合条件的参数字段值做为单个JSON数组返回,MySQL5.7.22新增 JSON_OBJECTAGG() 将符合条件的参数字段值做为单个JSON对象返回,MySQL5.7.22新增 COUN