数据库
Sunlalalla
好记性不如烂笔头,细节决定成败
展开
-
事务复习-
一、事物的四个特性1、原子性:事务所包含的操作要么全部成功,要么全部失败之后回滚不会对数据库产生影响2、一致性:a向b银行转账,一定是a扣了n元钱,b加了n元钱,不可能出现a减了,b没加;a没减,b加了3、隔离性:多个线程时,每个线程使用自己的事务,互不影响4、持久性:一旦操作完成,对数据库的影响是持久性的二、每个事务里面包含一个数据源示例3、声明事务是在什么时候提交事务? 方法结束提交事务(写两条插入语句,debug走一下,就可以看出来)4、声明式事务抛出异常时,一定要在catch里面手原创 2021-06-27 19:30:18 · 75 阅读 · 0 评论 -
java向DBeaver 插入数据报错server time zone
error info:Caused by: java.sql.SQLException: The server time zone value '�й���ʱ��' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the 'serverTimezone' configuration property) to use a mor原创 2021-06-27 16:06:19 · 283 阅读 · 0 评论 -
仅使用mybatis框架,insert时返回了1,但是数据库数据没有更新
参考:https://blog.csdn.net/qq_34474324/article/details/98480433测试代码:更正之前public class Test { public static void main(String[] args) throws IOException {// getAll(); insert(); } public static void insert() throws IOException原创 2021-02-22 11:36:26 · 956 阅读 · 0 评论 -
公众号授权微信昵称带表情符号保存时报错解决办法——昵称进行Base64加密解密
贴出加密解密demo,项目中可以现学现用import java.io.UnsupportedEncodingException;import java.util.Base64;public class Test { public static void main(String[] args) { try { //微信昵称加密 String st= Base64.g...原创 2019-06-19 21:55:49 · 1717 阅读 · 0 评论 -
mysql 查询当天、最近一天、最近一周,本月,上一个月的数据
转载:https://blog.csdn.net/cool_easy/article/details/50880949今天select * from 表名 where to_days(时间字段名) = to_days(now());昨天SELECT *FROM表名WHERE TO_DAYS( NOW( ) ) - TO_DAYS( 时间字段名) <= 17天SE...转载 2018-08-14 14:38:02 · 1935 阅读 · 0 评论 -
安装mysql数据库以及使用的一些问题
1、mysql-5.6.35-winx64安装教程:https://blog.csdn.net/u012679583/article/details/555100292、修改mysql中root用户的密码用UPDATE直接编辑user表首先登录MySQL。mysql> use mysql;mysql>UPDATE user SET password=PASSWO...原创 2018-04-03 16:11:34 · 140 阅读 · 0 评论 -
数据库表decimal类型存值遇到的问题
我要给order_item表加两条数据某字段设计如下我插入的两条数据中该字段对应的值为0.029,4.9971但是存入数据库却成了0,.00和5.00当时不知道数据库这层原因,就很想不通,觉得不科学,就问了高级开发同事,他为了指出了数据库字段精确值的问题,修改之后果然好了将字段设计为...原创 2019-08-07 11:00:19 · 2885 阅读 · 0 评论 -
group_concat()用法
代码review的时候,有同事分享了group_concat()的用法,然后测试了下,以后就记住可以用了业务场景大概是这样的:经销商下的订单,如果多个订单收货人相同,则将这些订单汇总成一个汇总单,汇总之前查询订单时用到了group_concat()。sql:select 收货人字段,group_concat(订单id) from orders;查询结果形如:更多用法:...原创 2019-08-20 21:27:31 · 127 阅读 · 0 评论 -
SELECT FIND_IN_SET()用法
同事又发慈悲了,讲了个我没用过的知识点,记录一下,哈哈哈SELECTFIND_IN_SET('2','1,2,3,4');意思是在第二个参数中找第一个参数的位置,位置从1开始,上面sql执行结果为2,如果没找到则返回0想了解更多请参考:https://www.fujieace.com/mysql/functions/find_in_set.html...原创 2019-08-20 21:34:29 · 499 阅读 · 0 评论 -
Oracle查询结果为null,展示空字符串
select NVL(name,"") from studentNVL(Expr1,Expr2)如果Expr1为NULL,返回Expr2的值,否则返回Expr1的值原创 2019-09-02 20:43:02 · 6691 阅读 · 1 评论 -
oracle执行sql报错01722:无效数字
因为查询时关联的两个表,需要判断相等的两个字段类型不同,一个是number,一个是varchar2,导致出错。sql如下:如上图:解决办法,在number类型那边进行类型转换,原字段加上|| ""...原创 2019-09-02 20:52:35 · 4476 阅读 · 0 评论 -
oracle中时间转换成年、年月、年月日
to_char(apply_date,"YYYY") --年to_char(apply_date,"YYYY-MM") --年月to_char(apply_date,"YYYY-MM-DD") --年月日参考:https://www.cnblogs.com/aipan/p/7941917.html原创 2019-09-02 20:56:32 · 10714 阅读 · 0 评论 -
hibernate拼接sql需要注意的
hibernate拼接进行oracle查询时末尾不能加分号原创 2019-09-02 20:58:51 · 726 阅读 · 0 评论 -
跨库查询——mysql
项目开发中遇到跨库查询,以为查不了,然后进度耽搁了一天多然后一个高人指点,mysql是可以跨库查询的,给表名前面加上数据库名即可但是有一个前提是,这些库在同一台机器上放置...原创 2019-04-18 09:43:36 · 1042 阅读 · 0 评论 -
oracle数据库——mabatis中的merge批量插入语句
转载出处:https://blog.csdn.net/xingjianwu/article/details/81455776该语句存在的问题是单个插入有问题,所以批量插入和单个插入方法的分开写<insert id="insertuser" parameterType="java.util.List"> MERGE INTO USER U USI...转载 2018-11-15 14:14:42 · 777 阅读 · 0 评论 -
Oracle关于时间的操作
转载出处:https://www.cnblogs.com/powerwu/articles/5579406.html 获取系统日期: SYSDATE() 格式化日期: TO_CHAR(SYSDATE(),'YY/MM/DD HH24:MI:SS) 或 TO_DATE(SYSDATE(),'YY/MM/DD HH24:MI:SS...转载 2018-09-19 18:26:48 · 223 阅读 · 0 评论 -
Oracle数据库的创建
create user CQ_TTEST --CQ_TTEST为数据库名,也是用户名 identified by "111111" --111111为密码 default tablespace SYSTEM temporary tablespace TEMP profile ...原创 2018-09-19 18:36:30 · 124 阅读 · 0 评论 -
mybatis和oracle: 项目使用的库将mysql库变成oracle库
1、我用的是navicat,点击mysql的连接然后右击点击数据传输,就可以把想要移到oracle连接里面的表传输过去,出现的问题: 1)mysql的有些数据类型和oracle不一样 2)数据传输过来之后对oracle数据库中表的操作出现的很多问题,主要是mysql和oracle创建表的方式有差异 mysql导出来的脚本表名,字段名...原创 2018-09-20 19:21:36 · 1036 阅读 · 0 评论 -
模糊查询:mybatis映射文件——mysql和oracle的不同写法
mysql:select * from a where name like concat('%',#{name},'%'); --使用函数 oracle:select * from a where name like '%'||#{name}||'%' --使用||符号原创 2018-09-20 19:24:55 · 584 阅读 · 0 评论 -
maven搭建的ssm项目——利用mybatis自动生成代码总是报错Project . does not exist
经过网上各种资料的尝试,终于成功地利用mybatis进行自动生成代码,所以想记下解决的办法。顺便也说一下mybatis自动生成代码的过程。首先我是用eclipse工具,利用maven创建的采用ssm框架的的项目,搭建项目参考了https://www.cnblogs.com/aflyun/p/6421441.html,以下是我搭建的项目的结构回到正题,如何自动生成代码,有参考http...原创 2018-10-11 18:04:34 · 1909 阅读 · 0 评论 -
Oracle的case if else用法
转载出处:https://blog.csdn.net/shangboerds/article/details/41989283经常有这类问题,比如性别的男女,一般在数据库中不存男女,而存数字0或1,1或2,查询出来展示的时候做转换。CREATE TABLE USER_INFO( NAME VARCHAR2(20) NOT NULL, ---姓名 GENDE...转载 2018-09-22 09:42:30 · 3398 阅读 · 0 评论 -
一条sql插入多行数据mysql和oracle的不同写法
转载出处:由于要将mysql数据库转为oracle,mybatis的映射文件里面的批量插入用的mysql的多个values的形式,但是换成oracle库之后sql报错。所以.oracle并不支持这种一个insert into 多个values的方法mysql:INSERT INTO users(name, age) VALUES('ccc', 333), ('aaa', 222), ('b...转载 2018-09-22 10:02:26 · 2211 阅读 · 0 评论 -
mybatis映射文件中oracle的插入sql
需要注意的点1、插入时传的值#{属性名},如果数据库的对应字段不能为空,则#{属性名}要写为#{属性名,jdbcType=VARCHAR},注意这里的VARCHAR是需要根据表里面的字段类型进行换的2、映射文件的sql语句末尾不要加分号,否则会报sql结尾不正确的错误 emmmm,暂时就遇到这些,先写到这里,后面遇到了再补...原创 2018-09-22 10:09:33 · 662 阅读 · 0 评论 -
oracel查询遇到的sql问题
1、查询时字符串转换成时间的问题to_date('2018-10-25 19:42:00', 'yyyy-mm-dd hh24:mi:ss')2、时间相减问题Oracle计算时间差表达式--获取两时间的相差豪秒数select ceil((To_date('2008-05-02 00:00:00' , 'yyyy-mm-dd hh24-mi-ss') - To_date('2...原创 2018-10-26 16:58:57 · 278 阅读 · 0 评论 -
Linux下备份oracle数据库
转载出处:https://blog.csdn.net/li951383937/article/details/524759821:我们需要链接到安装oracle的机器上,我是使用的ssh远程链接的工具2:我们需要输入命令登录oracle命令:su - oracle3:需要备份的实例命令:export ORACLE_SID=******代表你...转载 2018-10-24 11:08:16 · 2783 阅读 · 0 评论 -
查看当前oracle中正在执行的sql语句——即查询oracle进程的sql
select a.program, b.spid, c.sql_text,c.SQL_IDfrom v$session a, v$process b, v$sqlarea cwhere a.paddr = b.addrand a.sql_hash_value = c.hash_valueand a.username is not null;参考:https://blog.csdn...原创 2018-10-30 20:01:50 · 14737 阅读 · 3 评论 -
oracle数据库进程被占满——报错ORA-12519, TNS:no appropriate service handler found ----“客户端连接间歇性失败,报错ORA-12519
最近做的一个项目老出现数据库进程用完的问题,问题已解决,开心哈遇到的问题:eclipse报错:ORA-12519, TNS:no appropriate service handler found ----“客户端连接间歇性失败,报错ORA-12519oracle数据库报错:用到了如下sql--当前连接数select count(*) from v$process; 我们...原创 2018-11-05 17:11:38 · 2179 阅读 · 0 评论 -
linux下启动、关闭oracle服务
转载出处:https://blog.csdn.net/heshushun/article/details/79773886 1、先登录服务器后,切换到oracle用户状态下: su oracle2、检查oracle监听器运行状态:lsnrctl status命令查看。表示监听没有启动。3、执行启动监听,通过命令:lsnrctl start (lsnrctl stop 关闭监听)...转载 2018-11-05 17:43:17 · 2806 阅读 · 0 评论 -
Oracle "ORA-00942: 表或视图不存在 "
转载出处:https://blog.csdn.net/yangchangfu111/article/details/53992962采用Oracle数据库,使用Powerdesigner设计或者用navicat设计,生成Sql文件导入后查询出现“ORA-00942: 表或视图不存在 ”。1、问题产生的原因 Oracle 是大小写敏感的,我们创自己写Sql脚本(表名不加引号)创建表的时...转载 2018-09-19 18:20:00 · 1657 阅读 · 0 评论