![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库
kangfu_521
不忘初心,方得始终。
展开
-
regexp_substr截取指定的字符
sql原创 2023-02-11 17:23:57 · 685 阅读 · 0 评论 -
VLOOKUP函数
execl原创 2022-06-06 17:35:17 · 194 阅读 · 0 评论 -
row_number() over partition by 分组聚合
row_number() over partition by 分组聚合分组聚合,就是先分组再排序,可以的话顺手标个排名;如果不想分组也可以排名;如果不想分组同时再去重排名也可以Oracle和SQL server的关键字是over partition bymysql的无关键字row_number() over (partition by col1 order bycol2),表示根据col1分组,在分组内部根据col2排序-- 建表USE db_03;DROP TABLE IF原创 2022-05-27 16:31:14 · 5323 阅读 · 0 评论 -
如何判断oracle数据库的列中有中文数据的三种方式
1:使用ASCIISTR函数判别ASCIISTR函数说明:ASCIISTR返回字符的ASCII形式的字符串。非ASCII的字符被转化为\xxxx的形式。使用ASCIISTR函数也是根据非ASCII字符会被转化这个特性来判别中文字符,只要里面包含中文字符,则必定会有\xxx这样的字符。且简体汉字的编码范围是B0A1F7FE.如下例子所示CREATE TABLE TEST( NAME_ONE CHAR(24) ,NAME_TWO VARCHAR2(24) ,NAME_原创 2022-05-27 15:42:01 · 4387 阅读 · 0 评论 -
oracle 的trunc使用与instr()函数使用
oracle 的trunc使用ORACLE中TRUNC是截取的函数用在日期类型上,就是截取到日或时间。以下为具体例子。SELECT TRUNC(SYSDATE) FROM DUAL;默认是截取系统日期到日,SELECT TRUNC(SYSDATE)+2/24 FROM DUAL得到2012-12-19比如值为"2012-12-19 14:30:50"的日期变量TRUNC(SYSDATE)得到 2012-12-19 , 和TRUNC(SYSDATE,‘DD’)一样TRUNC(SYSDATE原创 2022-04-07 19:43:26 · 7309 阅读 · 0 评论 -
SQL中的cast()函数
SQL中的cast()函数https://blog.csdn.net/qq_21101587/article/details/78642423语法:CAST (expression AS data_type)SELECT CAST(‘9.0’ AS decimal) 结果:9有些number类型的字段,转换时报无效数字异常处理,SELECT CAST(‘9.5’ AS decimal(10,2))SELECT CAST(‘9.5’ AS decimal) 解决无效数字,其他符号会转义原创 2022-02-18 17:46:24 · 24529 阅读 · 0 评论 -
DQL,DML,DDL,DCL,TCL区别
SQL中DQL,DML,DDL,DCL,TCL的区别dba拥有所以权限;普通应用拥有dml;只读账号需要授权查询,ower用户执行授权语句,同义词,给用户teacher授予系统的create session权限grant create session to TEACHER;DCL权限授权表操作grant insert,update,delete,select on ower.table to app;授权执行存储过程grant execute on ower.start to原创 2022-01-01 14:11:30 · 454 阅读 · 0 评论 -
SpringBoot启动时将数据库数据加载到内存的静态map里
SpringBoot启动时将数据库数据加载到内存的静态map里实现CommandLineRunner接口实现CommandLineRunner接口,@Order注解里面的参数是类执行的顺序,由小到大顺序。监听接口方式,启动服务,执行方式时仍然提供服务,服务初始化之后,执行方法。@Componentpublic class SettingConfig implements CommandLineRunner {public static Map<String,Object>=ne原创 2021-10-25 21:14:18 · 1798 阅读 · 0 评论 -
浅谈oracle树状结构层级查询
https://blog.csdn.net/u012615705/article/details/78321022?转载 2021-10-10 12:38:59 · 187 阅读 · 0 评论 -
mysql同步数据到服务器到服务器
mysql同步数据到服务器到服务器数据备份,服务器一到服务器二服务器一test.sh服务器二test1.sh步骤1: sh test.sh user2:移动文件3:sh test1.sh user原创 2021-08-21 23:10:57 · 106 阅读 · 0 评论 -
shell导出数据
shell导出数据参考https://www.runoob.com/linux/linux-shell-io-redirections.htmlshell重定向demo#!/bin/bashcat << EOF欢迎来到菜鸟教程www.runoob.comEOF执行以上脚本,输出结果:欢迎来到菜鸟教程www.runoob.comshell导出数据测试text.sh#!/bin/bashmysql -h 127.0.0.1 -P 3306 -u’r原创 2021-08-09 22:19:18 · 364 阅读 · 0 评论 -
Spring: @PropertySource注解如何能够引入非classpath下的资源文件
Spring: @PropertySource注解如何能够引入非classpath下的资源文件spring中@PropertySource注解的使用https://blog.csdn.net/dengpengfu4092/article/details/102176605Spring Boot @PropertySource 加载指定配置文件、@ImportResource 导入Spring 配置文件https://wangmaoxiong.blog.csdn.net/article/d原创 2021-06-15 18:09:43 · 340 阅读 · 0 评论 -
2021-04-06
解锁第一种show processlist;找到锁进程,kill id ;第二种mysql>UNLOCK TABLES;锁表锁定数据表,避免在备份过程中,表被更新mysql>LOCK TABLES tbl_name READ;为表增加一个写锁定:mysql>LOCK TABLES tbl_name WRITE;查询是否锁表show OPEN TABLES where In_use > 0;SHOW OPEN TABLES;// 解锁UNLO原创 2021-04-06 17:02:32 · 89 阅读 · 0 评论 -
IDEA使用JDBC连接MySQL数据库详细教程
参考https://blog.csdn.net/qq_36172505/article/details/84102468原创 2021-04-01 14:54:06 · 262 阅读 · 0 评论 -
springMVC连接数据库
springMVC连接数据库https://blog.csdn.net/weixin_40641900/article/details/99635028可以到github下载https://github.com/3ono3/simpleMVC-config.gitSpringBoot连接数据库相关配置https://www.jianshu.com/p/b79a8ec049be原创 2021-03-23 13:20:46 · 617 阅读 · 0 评论 -
springmvc 利用AOP实现多数据源动态切换
分享:springmvc 利用AOP实现多数据源动态切换多数据源说白了就是项目里连接多个数据库;常见于分库查询(主从库),分库操作-增删改查(多库多表)等。参考:https://blog.csdn.net/lovebosom/article/details/100525455?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-1&spm=1001.2101.3001.4242https://blog.csdn.ne转载 2021-03-08 11:29:11 · 242 阅读 · 0 评论 -
oracle用户连接到数据库基本查询
oracle用户连接到数据库可以执行以下语句:select username,serial#, sid from v$session; —查询用户会话1、查询oracle的连接数select count(*) from v$session;2、查询oracle的并发连接数select count(*) from v$session where status=‘ACTIVE’;3、查看不同用户的连接数select username,count(username) from v$s原创 2020-12-23 21:16:54 · 315 阅读 · 0 评论 -
mysql存储函数
mysql存储函数可加入逻辑BEGIN …endCREATE FUNCTION name_from_employee (emp_id INT ) RETURNS VARCHAR(20) BEGIN RETURN (SELECT name FROM employee WHERE num=emp_id ); END存储过程原创 2020-12-19 11:45:52 · 165 阅读 · 1 评论 -
crt连接服务器跳转以及测试网络是否通
crt连接服务器跳转以及测试网络是否通一:crt连接服务器跳转linux服务器A跳转服务器B,首先连接服务器A,在A中跳转服务器B,ssh user@10.10.10.11密码123456连接数据库1、连接到本机上的MySQL。首先要将刚才的DOS窗口跳转到mysql/bin目录下,这时候我们需要给默认账户root创建一个密码,mysqladmin -u root-password 123456。再键入命令mysql -uroot -p123456,回车后提示你输密码.注意用户名前可以原创 2020-12-09 20:25:33 · 1574 阅读 · 0 评论 -
部署容器数据库连接失败:TNS:listener does not currently know of SID given in connect descriptor
ORA-12505, TNS:listener does not currently know of SID given in connect descriptor之前用PL/SQL DEVELOPER和SQLPLUS登录数据库都没有问题,就是应用程序通过JDBC连接Oracle时无法成功连接,出现ORA-12505错误listener does notcurrently know of SID given in connect descriptor…。经过查找,发现Oracle的serv原创 2020-11-21 18:22:30 · 23571 阅读 · 3 评论 -
mysql行转列,列转行
mysql行转列,列转行1:mysql行转列DROP TABLE IF EXISTS tb_score;CREATE TABLE tb_score( id INT(11) NOT NULL auto_increment, userid VARCHAR(20) NOT NULL COMMENT '用户id', subject VARCHAR(20) COMMENT '科目', score DOUBLE COMMENT '成绩', PRIMARY KEY(id)原创 2020-09-26 00:38:52 · 425 阅读 · 0 评论 -
数据库表内导入txt
数据库表内导入txtoracle数据库表内导入txt首先准备TXT格式的文件,(可以从数据库导出)1:准备ctl文件(导入字段映射以及字符集设置)2:准备shell文件,执行导入命令(传入文件路径,ctl)3: 调用shell,导入mysql数据库表内导入txt1:准备txt文件将空值用\N代替,每行数据内的分隔符为\t,行与行之间换行符为\r\n。然后将txt文件存放到/var/lib/mysql-files路径下。2:准备数据表mysql> use testd原创 2020-09-24 23:29:53 · 1900 阅读 · 0 评论 -
mysql实现oracle中rank() over,dense_rank() over,row_number() over函数
mysql实现oracle中rank() over,dense_rank() over,row_number() over函数row_number() over:返回的是排名,rank() over:返回的相关等级会跳跃dense_rank():返回的相关等级不会跳跃mysql要达到oracle的查询效果select id, name, rank() over(order by score desc) as r, DENSE_RANK() OVER(order by score desc)原创 2020-09-15 23:13:40 · 690 阅读 · 0 评论 -
Mysql 插入中文错误
Mysql 插入中文错误:Incorrect string value: ‘\xE7\xA8\x8B\xE5\xBA\x8F…’ for column ‘course’ at row 1出现这个错误的原因是,数据库的编码格式为latin1 而我要将utf8的中文插入到数据库中。一开始修改 修改数据库的编码alter table score default character set utf8;但是插入中文依然出现错误。然后通过查看数据表编码show create table score;原创 2020-09-05 13:47:15 · 988 阅读 · 0 评论 -
mysql简单函数
mysql简单函数1、baiMySQL 提供几个处理null的函数1)、ifnull(expr1,expr2):如果expr1不为dunull,则返回expr1,否则返回expr2;2)、nullif(expr1,expr2):expr1与expr2相等,则返回null,否则返回expr1;3)、if(expr1,expr2,expr3):类似于三目运算符,expr1为true,返回expr2,否则返回expr3;4)、isnull(expr1):判断expr1是否为null,expr1为nul原创 2020-08-23 11:48:24 · 455 阅读 · 0 评论 -
java调用存储过程
1:jdbc调存储过程准备jar准备一个oracle 的JDBC jar 包:ojdbc14_11g.jar建立连接,utilpackage com.test.db; import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement; public class JDBCUt原创 2020-08-09 11:45:18 · 700 阅读 · 0 评论 -
ORACLE函数之GREATEST与mysql之GREATEST
一:ORACLE函数之GREATESTGREATEST(expr_1, expr_2, …expr_n)函数从表达式(列、常量、计算值)expr_1, expr_2, … expr_n等中找出最大的数返回。在比较时,OracIe会自动按表达式的数据类型进行比较,以expr_1的数据类型为准。1:expr_1为数值型。按大小进行比较,查出16SELECT GREATEST(2, 5, 12, 3, 16, 8, 9) A FROM DUAL;2:expr_1为字符型。按首字母进行比较(如果相等则原创 2020-08-09 11:24:19 · 745 阅读 · 0 评论 -
Could not commit JPA transaction; nested exception is javax.persistence.RollbackException
1:Could not commit JPA transaction; nested exception is javax.persistence.RollbackExceptionspringmvc+hibernate+jpa+oracle—>springmvc+hibernate+jpa+mysqloracle迁移mysql中上传exel接口报错上传接口先删除表数据,验证表数据,满足则保存,否则保存在另一张表中,在保存表数据时save方法报以上错误,定位原因是由于保存时没设置主原创 2020-08-09 11:02:47 · 2250 阅读 · 0 评论 -
mysql实现oracle 函数sum(num) over(partition by order by col)效果
1:oracle中sum(num) over(partition by order by col)分组组内累计求和select v1,v2,sum(v2) over(partition by v1 order by v2) as sum --先分组,组内在进行 1 中的操作其中over(partition by v1 order by v2) as sum中partition 能分组,还具备累计的功能,2:mysql实现相同效果,分组组内累计求和将相同的表在做一次关联,让里面的值作原创 2020-08-08 13:26:42 · 2739 阅读 · 2 评论 -
MySQL基于日志还原数据俩种方式
1:mysql数据误删除还原前提mysql开启了binlog日志binlog即binary log,我们可以通过binlog日志恢复数据此文件是二进制日志文件。它有两个作用,一是增量备份,即只备份新增的内容;二是用于主从复制等,即主节点维护了一个binlog日志文件,从节点从binlog中同步数据。步骤1:查询binlog要恢复的节点2:从日志中复制临时恢复的数据节点文件3:执行临时文件,数据恢复4:验证恢复数据具体如下先验证是否开启binlogmysql>原创 2020-07-11 11:32:05 · 537 阅读 · 0 评论 -
MySQL因大小写敏感
MySQL因大小写敏感阿里巴巴Java开发手册,在MySql建表规约里有看到:【强制】表名、字段名必须使用小写字母或数字 , 禁止出现数字开头,禁止两个下划线中间只 出现数字。数据库字段名的修改代价很大,因为无法进行预发布,所以字段名称需要慎重考虑。说明: MySQL 在 Windows 下不区分大小写,但在 Linux 下默认是区分大小写。因此,数据库名、 表名、字段名,都不允许出现任何大写字母,避免节外生枝。正例: aliyun _ admin , rdc _ config , leve原创 2020-07-04 19:52:50 · 482 阅读 · 0 评论 -
MySQL 中NULL和空值的区别
1、空值不占空间,NULL值占空间。当字段不为NULL时,也可以插入空值。2、当使用 IS NOT NULL 或者 IS NULL 时,只能查出字段中没有不为NULL的或者为 NULL 的,不能查出空值。3、判断NULL 用IS NULL 或者 is not null,SQL 语句函数中可以使用IFNULL()函数来进行处理,判断空字符用 =''或者<>''来进行处理。4、在进行count()统计某列的记录数的时候,如果采用的NULL值,会别系统自动忽略掉,但是空值是会进行统计到其中的。5、原创 2020-07-04 19:36:30 · 5433 阅读 · 0 评论 -
MySQL 执行计划 explain
MySQL 执行计划 explain格式explain select * from user where age>10执行计划就是展示Mysql如何执行一条Sql语句,使用 EXPLAIN 。输出包括Sql查询的顺序、是否使用索引、以及使用的索引信息等内容, 展示如图各项参数解释select_type :该表示选择的类型,可选值有: SIMPLE(简单的)type :该属性表示访问类型,有很多种访问类型。最常见的其中包括以下几种: ALL(全表扫描), index(索引扫描原创 2020-07-04 19:11:15 · 86 阅读 · 0 评论 -
mysql报错 specify target table
1: mysql 不能更新查询本身的表You can’t specify target table ‘表名’ for update in FROM clause翻译不能先select出同一表中的某些值,再update这个表(在同一语句中)oracle中update a set a.id=(select id from a where a.id=b.id) where a.code=(select code from b where a.id=b.id)mysql不支持,报以上错误,更新原创 2020-06-17 21:52:53 · 2569 阅读 · 0 评论 -
mysql:datediff 日期相加 UNIX_TIMESTAMP日期相减精确到时分秒
1:日期加一天oracleto_date(‘20200610’,‘yyyy-MM-dd’)+1mysqlstr_to_date(date_add(‘20200610’,interval 1 day),’%Y-%m-%d’)2:日期相减oracleto_date(‘20200610’,‘yyyy-MM-dd’)-to_date(‘20200601’,‘yyyy-MM-dd’)mysqldatediff(‘2020-06-10’,‘2020-06-01’)3:left joi原创 2020-06-10 22:13:28 · 1273 阅读 · 0 评论 -
查询连续日期列表
1:mysql查询连续一个周的日期列表SELECT DATE_SUB(CURDATE(),INTERVAL 7 DAY) day1 UNIONSELECT DATE_SUB(CURDATE(),INTERVAL 6 DAY) day1 UNIONSELECT DATE_SUB(CURDATE(),INTERVAL 5 DAY) day1 UNIONSELECT DATE_SUB(CURDATE(),INTERVAL 4 DAY) day1 UNIONSELECT DATE_SUB(CURDATE(原创 2020-06-05 22:38:45 · 388 阅读 · 1 评论 -
mysql中字符串转数字convert
1:mysql查询字符串类型会默认返回字符串加.0结尾,如字符串1,查询页面返回1.0踩坑之路:mysql中字符串转数字 int= 字段+0页面返回正常,导出未生效,解决换 convert(字段,unsigned integer)...原创 2020-06-01 23:37:31 · 1473 阅读 · 0 评论 -
mysql:查询报字段不存在,SQLException: Column ‘列名’ not found 解决
1:hibernate 或者Jpa 报错 java.sql.SQLException: Column ‘列名’ not found 解决现象把原sql到mysql可视化执行正常,在程序中报错,参考参考 https://blog.csdn.net/love_moon821/article/details/80015851解决:由于字段别名问题,仔细核实,格式化后未起别名引起加上原字段名称作为别名,问题解决总结使用了SQL 函数,带上别名 mysql是 支持的,...原创 2020-06-01 23:27:53 · 7383 阅读 · 0 评论 -
mysql:Every derived table must have its own alias
1:oracle 执行SQL正常,mysql报错Every derived table must have its own alias(每一个派生出来的表都必须有一个自己的别名)。多表关联要起别名https://blog.csdn.net/qq_32863631/article/details/83024322原创 2020-05-31 23:22:05 · 646 阅读 · 0 评论 -
mysql用sum出现null解决
1:Oracle中的行转列pivot用mysql的case when 改写后sum出现null解决,原因表中无数据,页面返回一条全为null的数据,解决由于sum产生,由于改写SQL比较复杂在代码中进行处理,返回一条数据时,判断为null的个数,满足重新赋值附,其他方案...原创 2020-05-31 23:14:37 · 598 阅读 · 0 评论