SQL、数据库
文章平均质量分 52
SQL、Oracle、MySQL、NoSQL、Redis、MongoDB
wangjunjun2008
这个作者很懒,什么都没留下…
展开
-
Redis(Windows版)安装、访问、配置密码
1、下载 地址:https://github.com/MSOpenTech/redis/releases点击版本号(如3.2.100)进入下载页面。2、启动服务端 命令redis-server.exe redis.windows.conf //需要指定配置文件安装目录查看是否含有配置文件,如果没有,可自行下载http://download.redis.io/redis-stable/redis.conf3、启动客户端 命令redis-cli.ex...转载 2022-01-05 17:19:37 · 310 阅读 · 0 评论 -
MongoDB(version3.2)创建用户报错addUser is not a function
通过MongoDB命令行,创建用户时,报错如下:db.addUser("lisi","123456");2016-11-04T19:41:02.563+0800 E QUERY [thread1] TypeError: db.addUser is not a function :经过排查原因,由于MongDB的版本为3.2.10,而MongDB3.x版本已经不再支持a原创 2016-11-04 20:21:52 · 3022 阅读 · 0 评论 -
无法连接远程MongoDB数据库
在远程服务器上(CentOS6.5)安装 MongoDB(版本3.2.10),按照如下命令启动:#!/bin/bash### start mongodb shell### dbpath 表示执行数据库存放目录(若不指定,则默认值为/data/db)### fork 表示以Daemon方式运行### auth 表示需要帐号密码### 【注意】如果指定fork参数,则必须指定logpat原创 2016-11-04 19:23:42 · 11584 阅读 · 0 评论 -
MongoDB命令行模式下,格式化find()的返回结果,pretty()
使用 db.demo.find() 返回数据,每一条占一整行,不便于阅读,寻找能格式化输出结果的方法,其实MongoDB本身提供了该方法,在find()方法后直接追加pretty()方法即可,如下:补充个一劳永逸的方法,在 shell 里执行下列代码:echo "DBQuery.prototype._prettyShell = true" >> ~/.mongorc.js转载 2016-11-04 19:06:05 · 16863 阅读 · 0 评论 -
mysql中 now() sysdate() curdate() 的区别
-- now() 返回当前日期和时间,格式如下:2013-01-17 10:57:13mysql> select now(), sleep(5), now();+---------------------+----------+---------------------+| now() | sleep(5) | now() |+---转载 2016-10-19 11:38:36 · 24254 阅读 · 2 评论 -
MySQL修改字符集为utf8mb4以支持 emoji 表情符号
系统接入微信公众号,需要存储用户昵称,但是发现,有些用户的昵称存储报错;查询之后,发现用户昵称中包含emoji表情,而数据库的编码为utf8;因此需要对相关的数据库、表、字段等的编码进行修改,以达到保存emoji表情的目的。要存储 emoji 表情,需要客户端、到 RDS MySQL 实例的连接、RDS 实例内部 3 个方面统一使用或者支持 utf8mb4 字符集。转载 2016-09-01 14:57:18 · 22060 阅读 · 0 评论 -
Hibernate报错,没有权限创建表 HT_xxx
某功能在测试环境没问题,发布生产环境后,出现如下错误:HT_xxx表不存在,无法执行插入操作,跟踪发现,hibernate内部报错,没有创建表HT_xxx的权限。具体的错误,可参考:http://stackoverflow.com/questions/4412459/hibernate-bulk-update-leads-to-in-query-which-takes-for-ever-t原创 2016-02-23 16:56:33 · 3116 阅读 · 2 评论 -
MySQL创建帐号/修改权限不生效
一次工作中,把数据库帐号误删除,后重建该帐号。本以为问题解决了,但测试人员反馈说,无法连接数据库。猜测是帐号、密码有错误,对比再三,还是没问题,不知是何问题。上网搜索之后,才发现,少了一个步骤:【修改完权限以后,一定要刷新权限表或重启数据库,才能使权限生效!!!】刷新权限的命令: flush privileges;在该问题上犯过错,记录下来,防止再次犯错。同时将转载 2016-02-22 19:18:37 · 11678 阅读 · 1 评论 -
MySQL无法连接[MySql Host is blocked because of many connection errors]
测试环境,发现数据库(MySQL数据库)无法登录,报错如下:Host is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'上网查到解决方案,转载如下:http://www.cnblogs.com/susuyu/archive/2013/05/28/3104249.h转载 2016-02-19 15:34:02 · 10738 阅读 · 0 评论 -
使用powerdesigner生成表结构到word文档
有时候,写各种系统相关文档时,需要把数据库表的结构也加到文档中,如果手动添加的话,就非常可笑了。有很多的工具可以使用,有一种可以使用windows office套件+扩展程序,能直接将数据库表结构导出到word。但是经过配置,始终不行,后来,又找到了一篇文章,说可以使用powerdesigner,达到同样的目的。参考文章:http://jingyan.baidu.com/artic转载 2016-11-16 19:38:48 · 2521 阅读 · 0 评论 -
JIRA 数据库 设计 点滴
由于工作需要,接触到了JIRA,you转载 2014-07-24 10:57:58 · 3419 阅读 · 0 评论 -
以通配符(%)开始的like字符串,走索引
本文翻译自https://jeffkemponoracle.com/2008/01/17/like-with-wildcard-at-start-can-use-an-index/了解SQL的同学,都知道,like关键字可以走索引,只要字符串不是以通配符(%)开始。如果类似 like "%xxx" 的sql,如何走索引呢?基于REVERSE()函数来创建一个函数索引。翻译 2016-08-05 18:52:59 · 21986 阅读 · 0 评论 -
MySQL性能优化的最佳20+条经验
本文转载自:http://coolshell.cn/articles/1846.html请大家移步原文阅读,以下内容从原文快照而来,仅作备份之用。转载 2016-08-05 19:26:47 · 542 阅读 · 0 评论 -
MySQL的procedure(存储过程)实现动态的行转列
博文 http://blog.csdn.net/u013938484/article/details/50552747讲的非常详细,不再重复造轮子。转载 2017-03-24 11:17:38 · 1119 阅读 · 0 评论 -
MySQL查询不区分大小写
今天遇到一个情况,发出去的优惠码,领导要求,优惠码的使用,不用区分大小写。换言之,对于优惠码ABC,用户输入abc、aBc、Abc、ABC等,均可使用;即优惠码是大小写不敏感的。因为程序使用Hibernate框架访问mysql数据库。一开始,总是在hibernate上寻找解决方案:跟踪Hibernate代码没有找到转换大小写的操作,未果。后来在MySQL上下功夫:发现直接使用客户端转载 2016-08-05 17:05:20 · 2934 阅读 · 0 评论 -
MySQL中COLLATE 排序规则 utf8_unicode_ci、utf8_general_ci 的比较和选择
转载自 http://blog.csdn.net/xiaoliuliu2050/article/details/52875680总结:1、utf8_unicode_ci 和 utf8_general_ci 对中、英文来说没有实质的差别;2、utf8_general_ci 校对速度快,但准确度稍差;3、utf8_unicode_ci 准确度高,但校对速度稍慢;4、如果应用有德语、转载 2017-11-15 14:23:57 · 13526 阅读 · 0 评论 -
MySQL的ON DUPLICATE KEY UPDATE 使用
因工作需要,需要实现如下业务功能:给定日期范围(开始日期~结束日期),批量将该范围内的日期,按照天把价格存储(insert or update)到数据库(MySQL)中;简化考虑,采用触发器实现;由于日期设置了唯一索引,因此,insert语句有可能出现唯一索引冲突,因此需要使用 on duplicate key update 语法来实现;该语法的作用:某条件的记录不存在时新增,否则更新。原创 2016-01-26 16:41:34 · 2487 阅读 · 0 评论 -
mysql中,与日期相关的函数
ADDTIME (date2 ,time_interval ) //将time_interval加到date2;CONVERT_TZ (datetime2 ,fromTZ ,toTZ ) //转换时区;CURRENT_DATE ( ) //当前日期;CURRENT_TIME ( ) //当前时间...ADDTIME (date2 ,time_interval ) //将time_int转载 2016-01-26 16:51:38 · 871 阅读 · 0 评论 -
Windows下,MySQL5.6.x 免安装版(*.zip)的配置
MySQL5.5之前的版本,Oracle官网提供了msi和zip两种格式的安装包;从5.6开始,Oracle官网仅提供了zip格式的安装包;因此对zip格式的安装与配置,需要掌握。本文仅记录了安装、配置的步骤,没有对配置过程中出现的错误进行说明,可查阅相关资料。1、下载 MySQL-5.6.27-wins64.zip;2、解压到D:/programs/mysql56目录中;转载 2015-11-22 12:38:34 · 993 阅读 · 0 评论 -
Oracle基础学习笔记(一)-基于马士兵Oracle视频
004. sqlplus sys/bjsxt as sysdba; --更改登录用户005. alter user scott account unlock; --解锁用户006. desc ; --查看表字段结构007. select ename,sal*12 annual_sal from emp; select ename,sal*12 "annual sal" from原创 2013-07-29 12:39:47 · 2732 阅读 · 0 评论 -
Oracle常用内置函数介绍及用法(二)
-- REGEXP_LIKE 正则表达式/*ORACLE中的支持正则表达式的函数主要有下面四个:1,REGEXP_LIKE :与LIKE的功能相似2,REGEXP_INSTR :与INSTR的功能相似3,REGEXP_SUBSTR :与SUBSTR的功能相似4,REGEXP_REPLACE :与REPLACE的功能相似它们在用法上与Oracle SQL 函数LIKE、I原创 2013-07-29 13:11:31 · 3288 阅读 · 0 评论 -
Oracle 生成指定范围内随机日期
Oracle生成一个指定范围内的随机日期/* * Oracle将日期作为过去某个关键日期(这个日期是公元前4712年1月1日)的整数偏移量来保存(即把日期保存为一个数字); * 因此可通过寻找‘指定日期’与‘关键日期’相对应的整数偏移量,再加一个指定范围内的随机整数来生成一个指定范围内的随机日期。*/步骤:原创 2013-07-22 12:11:11 · 3746 阅读 · 0 评论 -
Oracle完全卸载
Oracle数据库比较大,安装和卸载都比较复杂。Oracle的卸载过程比较复杂,而且在卸载过程中,如果没有完全卸载,则不允许再次安装。我的Oracle10g安装环境:Windows XP,D:\Oracle目录。 卸载步骤如下:1、如果数据库配置了自动存储管理(ASM),应该先删除聚集同步服务CSS(cluster Synchronization Services).删除CSS原创 2013-07-22 12:11:32 · 1423 阅读 · 0 评论 -
SQL中Case When 用法举例
Case具有两种格式。简单Case函数和Case搜索函数。--简单Case函数CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他'END --Case搜索函数CASE WHEN sex = '1' THEN '男' WHEN sex = '2' THEN '女' ELSE '其他'END原创 2013-07-22 12:10:55 · 3909 阅读 · 1 评论 -
PLSQL重建存储过程(procedure)出错
前提:测试库和正式库的表结构相同,并且存储过程(5570行)在测试环境下运行正常。晚上八点,产品准备上线的时候,开始拷贝存储过程(procedure)时,竟然出问题了!!!而且是找不到原因,很是莫名其妙,只好临时中断了上线,之后的两天,开始苦逼的查找原因,查无所获,决定放弃,改为曲线救国。在重建P的时候,如果将此P分段创建,则编译通过,分析认为,新建P出错,更新P没问题;无意间,点了下“格原创 2013-07-22 12:10:14 · 1995 阅读 · 1 评论 -
PL/SQL启动报错:Control 'dxDockBrowserPanel' has no parent window分析及解决
重装PL/SQL后,启动报 “Control 'dxDockBrowserPanel' has no parent window”这个错误,分析其原因: 某次刚打开PL/SQL Developer时,界面还没有加载的时候,机器死机了。然后强行重启,再打开PL/SQL Developer就报错。 PL/SQL Developer7.1.5、8.0.2、8.0.4、9.0.2、9.0.原创 2014-03-11 13:58:10 · 5265 阅读 · 0 评论 -
Oracle 10g 创建 DB link
某些时候,需要关联不同的数据库进行数据查询、操作等。在Oracle中,关联不同的数据库进行表关联,就要用到了数据库连接(DB link)。创建DB link有两种方法:通过SQL语句创建,通过可视化界面创建(其实也是执行的SQL语句)。1.通过PL/SQL Developer 工具建立Name:此DBLINK的名字,你自己随便起。比如:DEMOUserName:原创 2014-03-13 19:02:35 · 3020 阅读 · 0 评论 -
Oracle trigger 启用/禁用
节选自:http://www.cnblogs.com/huyong/archive/2011/04/27/2030466.html转载 2014-04-23 15:23:23 · 14783 阅读 · 0 评论 -
Oracle数据库获取uuid函数
Oracle新建系统表时,要求主键为32位uuid,猜测Oracle肯定会提供相关的函数。翻阅相关文档,果然发现Oracle提供的函数 sys_guid() 用于获取32位uuid,简单使用为select sys_guid() from dual;该函数返回32位的uuid为大写,可以使用 lower(sys_guid()) 转为小写.原创 2014-07-07 12:54:43 · 51759 阅读 · 0 评论 -
Oracle常用内置函数介绍及用法(一)
lower(str):将字符串转化为小写;upper(str):将字符串转化为大写;initcap(str):将字符串首字母转化为大写;select lower('AaBb') as aaa, upper('AaBb') as AAA, initcap('AaBb') as Aaa from dual;length(str):返回字符串的长度lengthb(st原创 2013-07-29 13:04:07 · 2974 阅读 · 0 评论 -
Oracle数据库,数字强制显示2位小数
在银行、财务等对数字要求敏感的系统中,数字的显示一般有着严格的要求。今遇到一个需求,如题,要求将数字以两位小数的格式显示,如果没有小数,则强制显示为0。例如:123.4 显示为 123.4012 显示为 12.000 显示为 0.00本以为这是个比较简单的问题,Oracle本身提供了to_char函数,带有格式化功能,能够满足条件:原创 2014-11-07 16:13:18 · 32282 阅读 · 1 评论 -
PL/SQL工具优化配置(个性化设置)
使用PL/SQL工具时,总是不习惯默认的样式和风格;每个人在使用工具的时候,都有自己的使用习惯,以下是配置PL/SQL工具的几个小技巧,能够定制自己的习惯,提高工作速度。#. 保存当前编辑窗口样式:Window->Save Layout;#. 将某条SQL语句转换大小写:选中这条SQL语句->右键->Selection->uppercase/lowercase;#. PL/SQL原创 2013-10-21 18:38:15 · 7154 阅读 · 0 评论 -
MySQL数据库的注释
今天写MySQL的function时,对内容添加注释,发现编译出错;查找手册才发现,”--”注释有个小小的需要注意的地方:"--"与被注释内容之间要添加空格才行;本以为是个小问题,谁知.... 还是在此记录一下,为了马虎先生和马虎小姐。MySQL注释分为两类:单行注释、多行注释。->单行注释有两种,格式如下:1、#... 以“#”号开头,直到该行行尾,全部都是注释内容;2、原创 2013-10-21 13:08:39 · 4956 阅读 · 0 评论 -
使用Navicat实现MySQL数据库 表结构同步
项目开发时,一般会有两个(或以上)的数据库,一个开发库和一个正式库,在开发库修改的表结构如何才能快速同步到正式库中呢?如果手动一个个字段或属性去修改,实在太麻烦,而且容易遗漏,这更不是一个搞IT的人该用的手段!有了Navicat,就能快速实现数据库的同步,包括结构同步,数据同步等。下面详细介绍。【前提】navicat已经创建了数据库连接。1.选 工具→结构同步,如下转载 2015-06-15 12:31:57 · 23037 阅读 · 0 评论 -
MySQL实现类似Oracle的序列
Oracle一般使用序列(Sequence)来处理主键字段,而MySQL则提供了自增长(increment)来实现类似的目的;但在实际使用过程中发现,MySQL的自增长有诸多的弊端:不能控制步长、开始索引、是否循环等;若需要迁移数据库,则对于主键这块,也是个头大的问题。本文记录了一个模拟Oracle序列的方案,重点是想法,代码其次。Oracle序列的使用,无非是使用.nextval和.原创 2013-10-21 18:16:36 · 5196 阅读 · 2 评论 -
Oracle基础学习笔记(二)-基于马士兵Oracle视频
041. PL_SQL PL/SQL PLSQL--PL/SQL块包含三部分:声明部分(可选)、执行部分(必选)、异常处理部分(可选)。--set serveroutput on; --打开控制台输出--PL/SQL中的select语句,必须和 into 关键字一起使用,而且必须且只能返回一个值;--PL/SQL中,sql%rowcount 表示执行的sql语句影响了多少行数据,s原创 2013-07-29 12:42:10 · 1830 阅读 · 0 评论