![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库
燕郊第一美男子
这个作者很懒,什么都没留下…
展开
-
java数据类型对应postgresql的数据类型
java数据类型对应postgresql的数据类型原创 2023-01-30 11:25:22 · 500 阅读 · 0 评论 -
postgre写sql时使用别的方法代替IN子句以提高查询效率
postgre替换in子句以提高查询效率原创 2022-09-06 18:34:28 · 1953 阅读 · 0 评论 -
sql一对多查询,且分组后组内根据字段排序
举个例子:比如说,有一个游客表,存储游客的信息,有一个游玩记录表,存储游玩记录的信息,两表呈现一对多关系,每个游客都有不止一条游玩记录,现在我要查询出每一个游客最近一次去游玩的游玩记录信息,这时候查询就是一对多,且要根据游客分组,且分完组后要在组内根据游玩时间倒叙排列,取第一条。举个例子:就比如说游客表 a 长这样:idnameage1张三182李四22再比如游玩记录表 b 长这样iduser_idplacedate11环球影城2原创 2022-05-06 11:45:36 · 952 阅读 · 0 评论 -
java.sql.SQLException: java.lang.ClassCastException: java.math.BigInteger cannot be cast to java
错误截图:问题原因:mysql-connector-java—就是这个jar包的版本问题,MySQL服务是8的,但是项目配置是5的解决办法:改pom.xml配置,把依赖版本改成服务对应版本:原创 2021-04-25 17:13:47 · 641 阅读 · 0 评论 -
java.sql.SQLNonTransientConnectionException:Could not create connection to database server
报这个错一般是由于没有指定数据库连接依赖的版本号当时我在项目里的数据库连接依赖是这么写的:<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId></dependency>如果是这种没有指定版本的情况下,项目自动配置了默认版本的话,可能就会造成默认的版本和本地的jar包版本不符,例如:数据库驱动原创 2021-04-25 17:01:41 · 4971 阅读 · 0 评论 -
MySQL获取刚插入的数据的自增长的id的值
MySQL数据库,主键自增的情况下要获取刚刚新增的那条数据的id,可以使用:select last_insert_id(); 例如:student表:idnameage1小明102小花10新增语句:insert into student(name,age) values ("小三","20");这时如果使用select last_insert_id(); 是可以查出这条数据的id为3的。但是我找到了一个这个语句不生效的情况:我刚找到这个方法的时候想原创 2021-04-22 13:28:38 · 1048 阅读 · 0 评论 -
MySQL查询数据库某张表的结构字段及注释
SQL:SELECT COLUMN_NAME 列名, COLUMN_TYPE 数据类型, DATA_TYPE 字段类型, CHARACTER_MAXIMUM_LENGTH 长度, IS_NULLABLE 是否为空, COLUMN_DEFAULT 默认值, COLUMN_COMMENT 备注FROM information_schema. COLUMNSWHERE TABLE_NAME = '表名'AND TABLE_SCHEMA = '数据库名';把语句中的表名,数据库名替换成原创 2020-10-30 09:31:42 · 1078 阅读 · 0 评论 -
mybatis批量修改报错提示SQL语法错误
可能跟MySQL版本有关系,电脑上装了8.0.16的MySQL之后才出现了这个问题,当然这个也只是推测,这里只说解决问题的方法:在jdbc连接配置中添加参数:&allowMultiQueries=true【允许批量操作】解决问题是通过这篇博客:mybatis批量更新数据三种方法效率对比这位大佬的博客很简洁,也很有用,建议参考。...原创 2020-09-17 11:32:01 · 669 阅读 · 1 评论 -
MySQL将varchar字段转为数字类型并排序或比较
设计数据库之初设计了排序号,业务要求按照这个进行排序,但是粗心设置成了varchar类型,今天在写代码的时候发现了这个问题,在网上找了找相关博文,有一位大佬的让我印象颇深,在此放出那位大佬的博客 ==>> 戳我跳转排序在字段后加个0<select id="selectGSuppliergroupList" parameterType="GSuppliergroup" resultMap="GSuppliergroupResult"> <include转载 2020-09-10 14:38:40 · 2444 阅读 · 0 评论 -
Navicat for MySQL 连接 Mysql 8.0.16 时报错1251- Client does not support.....的解决办法
【问题简述】使用Navicat for MySQL 连接 Mysql 8.0.16 失败。【交互信息】错误:1251- Client does not support authentication protocol requested by server;consider upgrading MySQL client【解决方案】第一步.命令行进入Mysql安装目录下的bin目录。键盘按下windows键+R,在运行弹窗的输入框中输入“cmd”并回车,进入cmd.exe程序窗口。使用cd命令进入My转载 2020-08-05 11:16:13 · 272 阅读 · 0 评论 -
Oracle在where语句后添加日期限制条件
语法: select t*,t.rowid from DataBaseName where time >= to_date(‘2020-6-1’,‘yyyy-mm-dd’) and time2 <= to_date(‘2020-7-24’,‘yyyy-mm-dd’)或者是 select t*,t.rowid from DataBaseName where time between to_date(‘2020-6-1’,‘yyyy-mm-dd’) and to_date(‘20原创 2020-07-24 10:11:35 · 5895 阅读 · 0 评论 -
oracle---cmd 命令行导入sql文件和dmp文件
尊重知识产权,附上原文链接:https://blog.csdn.net/peng_0129/article/details/79636449命令行导入sql文件md 进入 命令窗口输入:sqlplus 用户名/密码@ip地址:端口号/数据库名称(实例哈)进入后输入 : @F:\R1TEST.sql(你的文件的位置)直接回车 就ok了命令行导入dmp文件imp 用户名/密码@ip地址:端口号/数据库名称(实例哈)imp R1TEST/123@localhost:1521/orcl f转载 2020-07-03 19:17:00 · 828 阅读 · 0 评论 -
PLSQL Developer/Oracle怎么解决中文乱码问题
查看服务器端编码select userenv(‘language’) from dual;执行语句 select * from V$NLS_PARAMETERS 查看第一行中PARAMETER项中为NLS_LANGUAGE 对应的VALUE项中是否和第一步得到的值一样。如果不是,需要设置环境变量.PLSQL客户端使用的编码和服务器端编码不一致,插入中文时就会出现乱码.设置环境变量计算机->属性->高级系统设置->环境变量->新建设置变量名:NLS_LANG..转载 2020-06-28 17:37:36 · 3744 阅读 · 0 评论 -
如何在PLSQL里直接修改表中字段的值
SQL语句的写法:select t.*, t.rowid from TableName t where CloumnName = 'XXXYYYZZZ'PLSQL中是不能像MySQL一样直接select * from TableName搜出来就能在表格中修改的,是需要有t.rowid这样的写法,查出来之后仍然不能修改,需要继续进行别的操作。2. 开锁点这个锁的标志,绿色的开锁是可以修改了3. 修改完的提交1. 缓存提交2. 彻底提交...原创 2020-06-18 17:13:14 · 4326 阅读 · 0 评论 -
Windows10安装Oracle11g及navicat12连接Oracle报Oracle library is not loaded错误解决记录
Windows10系统下安装Oracle11g的过程比较简单,可能会因为版本不同,界面的选项不同有略微的差异,但是总体大致相同,可参考用。下载安装包并解压 【官网即可下载】点击setup.exe开始安装这时可能会出现INS-13001的提示,这是因为版本注册的问题。默认的oracleo11g中没有添加win10的注册信息,所以要将win10的注册信息添加到oracle的配置文件中。解决方案:打开oracle安装包,找到stage文件夹,找到cvu_prereq.xml文件,然后在<CER原创 2020-06-11 01:03:09 · 605 阅读 · 0 评论 -
增删改查返回值及事务回滚
增,删,改三种类型的方法返回值都是int类型,其数值代表影响的行数,即【新增了几条】,【删除了几条】,【修改了几条】。查询的方法返回值一般是对象或对象集合,或者对象中某个属性的类型。当执行完方法,如何判定是否执行成功?增删改查都可以通过返回值来判定,增,删,改这三种如果返回值为0,那么证明数据库的数据保持不变没有变化,这时证明执行失败。查询看查出来的是否为空就可以判断了【当然这些是要在肯定能增删改查的情况下】执行失败的事务回滚:TransactionAspectSupport.currentTra原创 2020-06-10 10:06:06 · 1151 阅读 · 0 评论 -
谈谈数据库里的时间戳
一直对时间戳这个概念比较模糊,相信有很多朋友也都会误认为:时间戳是一个时间字段,每次增加数据时,填入当前的时间值。其实这误导了很多朋友。时间戳:数据库中自动生成的唯一二进制数字,与时间和日期无关的, 通常用作给表行加版本戳的机制。存储大小为 8个字节。每个数据库都有一个计数器,当对数据库中包含 timestamp 列的表执行插入或更新操作时,该计数器值就会增加。该计数器是数据库时间戳。这可以跟踪数据库内的相对时间,而不是时钟相关联的实际时间。一个表只能有一个 timestamp 列。每次修改或插入包含转载 2020-06-05 11:40:03 · 2552 阅读 · 0 评论 -
Oracle数据库创建用户及导入表
Windows+R打开cmd命令行键入命令sqlplus/nolog进行操作,登录Oracle如果有用户密码,可以输入conn username/password@数据库名称,直接进入数据库;如果没有用户密码,可以键入命令:conn/ as sysdba,登录不需要密码的超级管理员用户。如果没有用户想要创建一个用户,命令:create user 用户名 identified by 密码;给新创建的用户授权:grant connect,resource,dba to 用户名。删除用户:drop u.原创 2020-05-27 16:18:02 · 511 阅读 · 1 评论 -
docker拉取Oracle11g镜像配置及Oracle操作事项
关于Oracle11g镜像的配置,参考并转载自以下几位大佬的博客:https://blog.csdn.net/qq_38380025/article/details/80647620https://blog.csdn.net/qq_17518433/article/details/72835844https://blog.csdn.net/qiucheng_198806/article/details/80361944以前没用过Oracle,记录一下对Oracle数据库操作的注意事项:对于连接Or原创 2020-05-25 11:50:36 · 643 阅读 · 0 评论 -
关于mybatis批量操作数据的SQL拼接
增:<insert id="insertList" parameterType="com.tdhc.common.model.PuDelivery"> insert into pu_delivery ( <include refid="Base_Column_List" /> ) values <foreach collection="list" i...原创 2020-04-25 22:15:53 · 292 阅读 · 0 评论 -
MySQL中foreach标签的使用说明:
foreach的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集合。foreach元素的属性主要有 item,index,collection,open,separator,close。 item表示集合中每一个元素进行迭代时的别名, index指 定一个名字,用于表示在迭代过程中,每次迭代到的位置, open表示该语句以什么开始, separator表示在每次进行迭代之间以什...转载 2020-04-24 10:17:04 · 1207 阅读 · 0 评论 -
解决SQL server连接报错"provider: Named Pipes Provider, error: 40 - 无法打开到 SQL Server 的连接"
1.解决实例名错误的问题:https://www.cnblogs.com/spring2007/p/5094789.html2.解决远程连接配置未开启的问题,以及相关服务开机与否的情况定义:https://blog.csdn.net/u014717572/article/details/80065805...原创 2020-01-14 15:54:55 · 1050 阅读 · 0 评论 -
SQL Server 2017下载,安装,打开步骤
https://blog.csdn.net/slyh_td/article/details/83474486转载 2020-01-14 14:14:03 · 338 阅读 · 0 评论 -
解决远程服务器连接失败问题
服务器连接失败有很多原因,在项目中的配置文件配置完了之后,测试不通的话大概有几个原因,今天真幸运,全都遇上了。。。在此记录,以防后患。1.用户名密码,路径,端口等基本信息配置错误。一般报的错是connection refuse(拒绝连接),因为基本信息都不对连接请求肯定会被拒绝的。这个问题看着小,但其实有时候就是灯下黑,给广大程序猿朋友带来无端困扰:明明逻辑什么的都对,为啥就一直报错?仔细一看,...原创 2020-01-09 19:09:05 · 4746 阅读 · 1 评论 -
解决MySQL建表后表名自动变小写的问题
今天在MySQL创建新表测试新功能的时候,表名要与公司服务器上的表名保持一致,要用大写,但是当我写完又臭又长的建表语句后发现表名变成小写了。虽然MySQL数据库可以重命名,但不能以后每次建表都要重命名一下。所以在网上找了一些解决这个问题的技术博客,踩了几个坑,记录在此,以绝后患。1.在navicat的工具中选择命令行界面:输入show variables like ‘lower_case_t...原创 2020-01-07 22:10:36 · 6810 阅读 · 0 评论 -
解决SQL server中提示对象名无效
用SQL server的时间不长,但现在遇到两种情况,在这里分别说一下解决办法1.刚打开SQL server Manager Studio,想看看表里的信息,就写一个查询语句,结果表名下有红线,并且执行的时候还提示对象名无效:这是因为没有选定数据库名,因为test只是一个表名,数据库默认为master数据库了:这个时候在下拉列表中把数据库选为表所在的数据库就可以了。2.缓存问题,这个比...原创 2019-12-31 11:38:58 · 33225 阅读 · 12 评论