数据库
绿竹痕
精通java技术,酷爱编程!
展开
-
论Sharding-jdbc组件 采用 hint-strategy 策略 的实现
因为在项目中,需要用到分库,但不分表。网上找到sharding-jdbc组件,因为业务要求分库,而不是采用数据库字段形式,进行路由。所以需要采用:hint方式,但网上资料少的可怜,而且版本不同,实现起来略有差异,而且网上的实现,注释不全。经过3天的研究,终于了解了hint方式的用法,现在把成果贴出来,供大家参考!maven 包引入<dependency> <groupId>org.apache.shardingsphere</groupId> <.原创 2020-05-25 04:15:58 · 2862 阅读 · 2 评论 -
数据库--SQLServer--如何找到包含某列最大值的那一行
有这样的表mytable,包括user_id,my_value,my_date三列。我想获取每个user_id的最近日期max(my_date)对应的user_id,my_value,my_date。用怎样的SQL实现呢?这里假设每个user_id下日期唯一。本题来源stackoverflow本题可以有多种方式实现。1.使用分析函数max,找出每个user_id分组的m转载 2014-02-17 14:43:18 · 14272 阅读 · 1 评论 -
数据库--SQL--有就更新,没有就插入
IF EXISTS (SELECT 1 FROM t_event_message_cache WHERE msg_key = #{msgKey}) BEGIN UPDATE t_event_message_cache SET msg_value = #{msgValue} WHERE msg_key =原创 2014-03-12 20:55:25 · 4358 阅读 · 0 评论 -
数据库-设计-数据库表字段类型设计标准
数据库表字段类型设计标准转载 2014-04-18 12:14:37 · 2223 阅读 · 0 评论 -
数据库--SQLServer--写sql,时间比较
select top ${step} id, rank_user_id, msg_type, event_id, message, publisher_id, effective_date, operate_typeFROM t_msgcenter_room_broadcast_hwhere id > #{id}and begin_原创 2014-03-26 18:57:08 · 892 阅读 · 0 评论 -
数据库-mysql-Can't get hostname for your address
昨天晚上活动开始之前,服务器上突然报Can't get hostname for your address原创 2014-05-20 17:00:10 · 2593 阅读 · 0 评论 -
数据库-mysql--IP address 'xxx.xxx.xxx.xx' could not be resolved: getnameinfo() returned error (code: -3
在公司服务器上,突然报这个错误,转载 2014-05-20 19:50:12 · 2725 阅读 · 0 评论 -
数据库-mysql--Host is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'
MySql Host is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts' 解决方法环境:linux,mysql5.5.21错误:Host is blocked because of many connection errors; unblock with 'mysql转载 2014-05-20 20:31:37 · 958 阅读 · 0 评论 -
数据库--sqlserver--sqlserver 查询 值如果为NULL则显示0-解决方法
方法1:isnull(字段名称,0) as 字段名称方法2:原创 2014-05-26 18:47:32 · 41861 阅读 · 2 评论 -
数据库--异常--java.net.NoRouteToHostException: Cannot assign requested address
解决办法:执行命令修改如下2个内核参数 sysctl -w net.ipv4.tcp_timestamps=1 开启对于TCP时间戳的支持,若该项设置为0,则下面一项设置不起作用sysctl -w net.ipv4.tcp_tw_recycle=1 表示开启TCP连接中TIME-WAIT sockets的快速回收原创 2014-06-05 10:21:27 · 5332 阅读 · 0 评论 -
数据库-sqlserver-B库的B表同步到A库的A表
Select * into guagua_new_event_system.dbo.t_recreation_category_consume_week from guagua_new_event_system_test.dbo.t_recreation_category_consume_week原创 2014-06-20 19:46:17 · 1960 阅读 · 0 评论 -
数据库-函数-over,row_number,dense_rank,rank,log,lead,first_value等
OVER(PARTITION BY)函数介绍开窗函数 Oracle从8.1.6开始提供分析函数,分析函数用于计算基于组的某种聚合值,它和聚合函数的不同之处是:对于每个组返回多行,而聚合函数对于每个组只返回一行。 开窗函数指定了分析函数工作的数据窗口大小,这个数据窗口大小可能会随着行的变化而变化,举例如下:1:over后的写法转载 2014-11-26 13:56:33 · 855 阅读 · 0 评论 -
数据库-mysql-mysql对binlog的处理
Mysql和其它开源数据库相比,具有更好的扩展性。其主要原因是它提供了存储引擎的开放接口。喜欢自己折腾数据库的程序员可以从这个接口起步,打造有个性的数据库。然而这里不打算对某种存储引擎的实现细节进行描述,也不打算介绍各种存储引擎的优缺点,只是描述一下mysql如何处理binlog,并澄清几个容易混淆的问题。Binlog对mysql而言是重要的,主要体现在它的功能上。Mysql官方文档明确指转载 2014-11-23 22:27:29 · 1124 阅读 · 0 评论 -
docker容器php-fpm 访问容器 mysql,报:网页无法成功运行
因为换工作,这周休息在家。想利用空余时间,把discuz论坛迁移到docker中。其中遇到一个问题:php-fpm私活不能访问数据库。而且没有日志,页面仅报:网页无法成功运行。网上查了好多资料,有说:php-fpm 使用www-data用户运行,权限不够;有说: 容器之间网络问题。由于没有日志文件,所有很难确定原因。经过3-4天的研究,今天突然看到一个帖子,提示:docker官方的php镜像好多扩...原创 2018-12-03 00:35:48 · 2502 阅读 · 0 评论 -
数据库--SQLServer--over函数的应用
本文将为您介绍SQL中的分析函数,除了ORDER BY(按…排序)语句外,分析函数是一条查询被执行的操作,供您参考,希望对您学习SQL函数的使用能够有所帮助。所有合并、WHERE、GROUP BY、HAVING语句都是分析函数处理之前完成的。因此,分析函数只出现在选择目录或ORDER BY(按…排序)语句中。 使用Over语句的情况 :A. 等级函数如, ROW_N原创 2014-02-17 14:25:28 · 2544 阅读 · 0 评论 -
数据库--oracle--分析函数OVER ()
准备工作: table:oracle用户scott下的emp表 ; 一. Oracle 从8.1.6开始提供分析函数,分析函数用于计算基于组的某种聚合值,它和聚合函数的不同之处是 对于每个组返回多行,而聚合函数对于每个组只返回一行。 exp: Sql代码 select t.empno,t.ename,sum(t.sal) from转载 2014-02-17 14:44:55 · 773 阅读 · 0 评论 -
数据库中,日期格式装换成字符串格式
sqlServer 数据库:函数: convert(varchar(7),signTime,120)例子:select convert(varchar(7), t.signTime,120) from Table t;注意:VARCHAR(7)代表长度为7,因为yyyy-MM的长度为7oralce 数据库:函数: to_char( 日期, 'yyyy-原创 2013-01-24 15:38:50 · 1782 阅读 · 0 评论 -
teradata 数据仓库--特有函数积累
日期函数data类型cast('2013-02-18' as date format 'yyyy-MM-dd') //将日期字符串格式化成date类型,相当于oralce中的to_date(‘’,'yyyy-MM-dd')timestamp(0)类型,格式:时间戳(yyyy-mm-dd HH:mm:ss),不带毫秒在sql中直接写入'2013-02-18 15:32:16'原创 2013-02-18 16:07:42 · 1872 阅读 · 0 评论 -
数据库--sqlserver-- sqlserver分页sql
sqlserver 分页sqlselect * from (select p.* ,row_number() over(order by createdate desc) num_idfrom table p where 查询条件)t where t.num_id between (pageNum - 1) * num + 1 and (pageNu原创 2013-06-03 16:34:00 · 921 阅读 · 0 评论 -
sql server----sql convert函数,日期格式化
CONVERT(data_type,expression[,style]) convert(varchar(10),字段名,转换格式)说明:此样式一般在时间类型(datetime,smalldatetime)与字符串类型(nchar,nvarchar,char,varchar)相互转换的时候才用到.语句 结果SELECT CONVERT(varchar(100),转载 2013-08-08 16:01:41 · 1036 阅读 · 0 评论 -
sqlserver---获取前一天的数据
--使用 CONVERT函数格式化时间,--dateadd函数 前x天,后x天的方法--查询后,直接插入数据 insert into [guagua_ktv].[dbo].[t_song_total] (song_name, room_id, totalnum, create_time) (select song_name, room_id, totalnum, CON原创 2013-08-12 19:38:06 · 7216 阅读 · 0 评论 -
如何彻底删除SQL 2005数据库(完整版)
1、首先卸载删除SQL2005安装程序 开始-控制面板-添加删除程序,删除以下五项: Microsoft SQL Server 2005 Microsoft SQL Server Management Studio Express Microsoft SQL Server Native Client、 Microseoft SQL Server V转载 2013-09-14 21:46:28 · 19134 阅读 · 2 评论 -
数据库--SQL SERVER 和ACCESS 查询表名
SQL SERVER查看所有表名:select name from sysobjects where type='U'查询表的所有字段名:Select name from syscolumns Where ID=OBJECT_ID('表名')select * from information_schema.tablesselect转载 2013-11-12 00:15:12 · 1318 阅读 · 0 评论 -
Access---Access没有使用对象的必要权限解决方案(ACCESS取消权限 ACCESS取消用户组权限)
A. 开启Access时如果出现以下提示:“没有使用*.mdb对象的必要权限。请让系统管理员或安装此对象的人为您设置适当的权限” 1、请下载 advanced office password recovery pro将该软件的USER、PID、密码破解出来。2、打开ACCESS,从菜单工具→安全→用户和组账号,新建一个用户(OWNER),在内部输入破解出来的用户名转载 2013-11-12 00:52:37 · 6487 阅读 · 0 评论 -
数据库--数据库链接池--DBCP连接池配置参数说明
class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">转载 2013-12-23 19:14:12 · 1441 阅读 · 0 评论 -
数据库--数据库链接池--DBCP--Spring 连接池之 DBCP
Spring 连接池之 DBCPdataSource : 要连接的 datasource ( 通常我们不会定义在 server.xml) defaultAutoCommit : 对于事务是否 autoCommit, 默认值为 true defaultReadOnly : 对于数据库是否只能读取 , 默认值为 false driverClassName : 连接数据库所用转载 2013-12-24 20:08:07 · 1037 阅读 · 0 评论 -
数据库--sqlserver--创建唯一约束和唯一索引方法
创建唯一约束,使用UNIQUE关键字CREATE TABLE TB101(ID INT IDENTITY(1,1) PRIMARY KEY,C1 INT UNIQUE,C2 INT)UNIQUE 表示:唯一约束测试:INSERT INTO TB101(C1,C2)SELECT 2,1创建唯一索引:CREATE UNIQUE INDEX IX_原创 2014-01-28 11:46:52 · 12782 阅读 · 0 评论 -
数据库--sql 查询字段如果为null 则返回0的写法
oracleselect nvl(字段名,0) from 表名;sqlserverselect isnull(字段名,0) from 表名; mysqlselect ifnull(字段名,0) from 表名;原创 2014-02-11 17:55:04 · 38854 阅读 · 0 评论 -
数据库--Oracle--分析函数--over函数
over()函数是Oracle的分析函数,其语法如下:函数名( [ 参数 ] ) over( [ 分区子句 ] [ 排序子句 [ 滑动窗口子句 ] ])分区子句类似于聚组函数所需要的group by,排序子句可看成是SQL语句中的order by,只不过在此语句中还可指定null值排前(nulls first)还是排后(nulls last)。滑动窗口语句就比较复杂,参见man转载 2014-02-17 14:40:36 · 855 阅读 · 0 评论 -
修改oracle数据库用户名及密码
--直接修改底层表 USER$ 更换用户名1、windows 平台下运行 cmd2、sqlplus /nolog3、SQL> connsys/lmis@lmisdx_localas sysdba 连接到数据库。通常可以用sys用户登陆。4、SQL> select * from user$; 找到 name为需要修改的用户的user#。5、SQL> UPDATE USER$ SE原创 2013-01-04 16:56:45 · 1415 阅读 · 0 评论