数据库
文章平均质量分 66
Nishino_shou
一个串烧IT行业的吉他乐手
展开
-
DBeaver使用 - 连接人大金仓
人大金仓-国产化数据库原创 2022-04-12 14:44:48 · 5669 阅读 · 1 评论 -
各数据库插入并更新
老生常谈的问题,业务中出现批量插入的操作,但是有些数据需要判断是否存在,存在则更新。那么在mysql当中,使用on duplicate key update是可以达到这个目的的!关于这个方法的使用,百度上已经有很多介绍,就不在这里赘述了。主要是留存一下使用过程中遇到的问题。1. 使用jdbctemplate来操作的数据库,那么动态sql的拼写上,需要注意字段名称相符,否则会报错Unknown column '***' in 'field list'此时还能遇到jdbctempl原创 2021-06-29 17:07:06 · 816 阅读 · 0 评论 -
数据库 - 连接池
为什么要使用连接池:-数据库连接的建立及关闭资源消耗巨大。-传统数据库访问方式:一次数据库访问对应一个物理连接,每次操作数据库都要打开、关闭该物理连接,系统性能严重受损。数据库连接池是管理并发访问数据库连接的理想解决方案。DriverManager管理数据库连接适合单线程情况,而在多线程并发情况下,为了能够重用数据库连接,同时控制并发连接总数,保护数据库避免连接过载,一定要使用数据库连接池。---...原创 2018-04-23 01:39:12 · 212 阅读 · 0 评论 -
数据库七-序列 索引 约束
序列:序列也是数据库对象之一,作用是生成一系列数字。系列常用于为某张表的主键字段提供值使用。创建序列CREATE SEQUENCE seq_emp_id START WITH 1 INCREMENT BY 1;序列支持两个伪列:NEXTVAL:获取序列下一个值。若是新创建的序列,那么第一次调用返回的是START WITH指定的值,以后每次调用都会得到当前序列值加上步长后的数字。NEX...原创 2018-04-14 01:04:19 · 349 阅读 · 0 评论 -
DBUtil封装JDBC部分过程
##管理数据库连接在软件中数据库连接使用非常频繁,如果每次都创建连接,就会造成代码的大量冗余,常规的做法是建立数据库连接工具类,封装数据库连接过程,同意数据库连接过程,使用时候就可以简化代码。DBUtil处理JDBC的过程,发现一些代码是经常需要重复调用的,例如与数据库的连接过程,所以做了以下封装过程。其中抛出的异常是为了处理连接过程中可能失败导致无法返回conn连接,给调用者一个交代。以Orac...原创 2018-04-20 02:08:26 · 408 阅读 · 0 评论 -
数据库-PreparedStatement
数据库的执行类似于Java的编译执行过程。SQL语句翻译为执行计划,才能执行。SQL语句完全一样的情况下会重用执行计划。关于执行计划:1.任何SQL执行过程都是先编译“执行计划”,再执行“执行计划”2.数据库为了优化性能,在SQL相同时候,会重用执行计划 -执行计划编译较慢 -重用执行计划可以提高数据库性能3.数据库只在SQL语句完全一样的时候才重用相同的执行计划 ...原创 2018-04-24 23:27:43 · 553 阅读 · 0 评论 -
JDBC - 结果集元数据
ResultSetMetaData用于描述查询结果的相关信息,其中包含列名称,列数量,类数据类型等。column:柱子,列我们只有查询到结果集了,才能在结果集的基础之上获取元数据。有可以滚动的结果集,但是不建议使用,因为其性能不好。...原创 2018-04-25 00:12:51 · 497 阅读 · 0 评论 -
数据库 - JDBC事务 - 批量执行 - 返回自动主键
事务:-Transaction:数据库中保证交易可靠的机制-JDBC支持数据库中的事务概念-在JDBC中,事务默认是自动提交的--事务特性ACID: ----原子性(Atomicity):事务必须是原子工作单位;对于其数据修改,要么全部执行,要么全都不执行 ----一致性(Consistency):事务在完成时,必须使所有的数据都保持一致状态 ----隔离性(Isolation)...原创 2018-05-01 23:56:05 · 320 阅读 · 0 评论 -
Oracle产生的序列总是从2开始
用Oracle11g创建序列后插入数据的初始值老是从2开始 Oracle新表使用序列(sequence)作为插入值,初始值不是第一个,oraclesequence 1 --创建测试表-- 2 CREATE TABLE tbl_test( 3 test_id NUMBER PRIMARY KEY, 4 test_name VARCHAR2(20) 5 );...转载 2018-05-04 01:04:19 · 1332 阅读 · 0 评论 -
JDBC - 分页查询
分页查询主要就针对Oracle中的分页SQL,利用以下代码,完成了JDBC的分页过程此分页SQL参考之前写过的Oracle分页查询原创 2018-05-17 23:44:43 · 608 阅读 · 0 评论 -
数据库 高级查询
子查询子查询是一条SELECT语句,但它是嵌套在其他SQL语句中的,为的是给该SQL提供数据以支持其执行操作。查看谁的工资高于CLARK?select ename,sal from emp where sal >(select sal from emp where ename='CLARK');在DDL中使用子查询可以使用子查询的结果集快速创建一张表创建表employe...原创 2018-04-13 01:20:27 · 293 阅读 · 0 评论 -
数据库六-视图
视图:视图是数据库对象之一。所有数据库对象名字不能重复,所以视图名字一般都是以"V_"开头。视图在SQL语句中体现的角色与表相同,但是视图并不是一张真实存在的表,而只是对应一个SELECT语句的查询结果集,并将其当做表看待而已。使用视图的目的是简化SQL语句的复杂度,重用子查询,限制数据访问。创建视图:该视图包括的数据为10号部门的员工信息?CREATE VIEW v_emp_10ASSELECT...原创 2018-04-13 01:19:44 · 430 阅读 · 0 评论 -
JDBC
JDBC是什么?java database Connectivity: JDBC是java应用程序和数据库之间信任桥梁,是Java应用程序访问数据库的通道。1.JDBC定义了一套标准接口,即访问数据库的通用API,不同的数据库厂商根据各自数据库的特点实现这些接口。2.JDBC接口的实现类称之为数据库驱动,由各个数据库厂商提供,使用JDBC必须导入这个驱动!一定要清楚驱动是什么!-DriverMan...原创 2018-04-18 01:48:36 · 237 阅读 · 0 评论 -
数据库四-oracle日期操作
日期操作------TIMESTAMP 时间戳-oracle常用的日期类型-与DATE的区别是不仅可以保存日期和时间,还能保存小数秒,最高精度可以到ns(纳秒)-数据库内部用7或者11个字节存储,精度为0,用7字节存储,与DATE功能相同,精度大于0则用11字节存储。格式为: ---第1字节-第7字节:和DATE相同 ---第8-11字节:纳秒,采用4个字节存储,内部运算...原创 2018-03-15 23:20:28 · 434 阅读 · 0 评论 -
char varchar varchar2(byte) varchar(char) nvarchar2()有何不同?
LONG:varchar2加长版,存储变长字符串,最多达2GB的字符串数据。LONG有诸多的限制:每个表只能有一个LONG类型列;不能作为主键;不能建立索引;不能出现在查询条件中。。CLOB:存储定长或者变长字符串,最多达4GB的字符串数据ORACLE建议开发中使用CLOB替代LONG类型1、长度定义 char 的长度是固定的。varchar2 是可变的。例如:同时定义一个字符串20,存...转载 2018-03-12 23:42:06 · 476 阅读 · 0 评论 -
数据库通用SQL
SQL:结构化查询语言SQL是在关系数据库上执行数据操作、检索及维护所使用的标准语言,可以用来查询数据,操纵数据,定义数据,控制数据。所有的数据库都使用相同或相似的语言。DDL 数据定义语言 用于建立、修改、删除数据库对象DDL是对数据库对象进行操作的语言,数据库对象包括:表、视图、索引、序列 包括: -CREATE: 创建表或其他对象的结构 -ALTER: 修改...原创 2018-03-06 23:12:28 · 1283 阅读 · 0 评论 -
数据库二 - 字符串函数
字符串函数concat()函数,用来连接字符串select concat(ename,sal) from emp;如果是多个字符串连接的话可以使用 ||-------多个字符串连接,用 || 更直观select ename || ':' || sal from emp;LENGTH(char) 用于返回字符串的长度如果字符类型是VARCHAR2,返回字符的实际长度,如果字符类型是CH...原创 2018-03-13 23:32:17 · 230 阅读 · 0 评论 -
数据库 空值操作
NULL的含义数据库中的重要概念:NULL,即空值。有时表中的某些字段值,数据位置或暂时不存在,取值NULL。任何数据类型均可取值NULL。判断字段的值是否为NULL,判断的时候要使用 IS NULL或 IS NOT NULLdelete from student where gender is null;非空约束约束后的字段不可为空NULL值得运算操作:NULL与任何数字运算结果还为NULL,N...原创 2018-03-20 23:01:01 · 1726 阅读 · 0 评论 -
SQL 基础查询 关联查询
--SELECT用于指定要查询的列--FROM子句指定从哪个表中查询如果要查询所有列,可以在SELECT后面使用 * 号。如果只查询特定的列,可以直接在SELECT后面指定列名,列名之间用逗号隔开。使用别名:在SQL语句中可以通过使用列的别名改变标题的显示样式,或者表示计算结果的含义。使用语法是列的别名跟在列名后,中间可以加或不加一个"AS"关键字。如果希望别名区分大小写字符,或者别名中包含字符或...原创 2018-04-03 00:18:07 · 1043 阅读 · 0 评论 -
oracle安装问题处理
1.安装oracle11g过程开始时,提示安装环境不足:升级win10系统之后,需要重新安装Oracle,因为在安装Oralce11g时,使用64位的会出现各种不兼容问题,我每次安装都是使用32位的数据库。在安装时点击setup.exe之后,出现了:[INS-13001]环境不满足最低要求这时,打开你的解压后的database文件夹,找到stage,然后cvu,找到cvu_prereq.xml文件...原创 2018-04-09 16:46:08 · 120 阅读 · 0 评论 -
Oracle使用SQL PLUS时必须了解的操作
查询数据库名等操作oracle中:1、查询数据库名:select name,dbid from v$database;或者show parameter db_name;2、查询实例名:select instance_name from v$instance;或者show parameter instance_name;3、查询数据库域名:select value from v$parameter ...原创 2018-04-13 01:20:07 · 291 阅读 · 0 评论 -
数据库五-Oracle分页查询
分页查询分页查询是将查询表中数据时分段查询,而不是一次性将所有数据查询出来。有时查询的数据量非常庞大,这会导致系统资源消耗大,响应速度长,数据冗余严重。为此当遇到这种情况时,一般使用分页查询解决。数据库基本都支持分页,但是不同数据库语法不同。Oracle中的分页是基于伪列ROWNUM实现的。ROWNUM不存在于任何一张表中,但是所有的表都可以查询该字段,该字段的值是随着查询自动生成的。方式是:每当...原创 2018-04-13 00:22:24 · 215 阅读 · 0 评论 -
数据库三-oracle数值操作
oracle数值操作-------number(precision , scale)-precision : number可以存储的最大数字长度(不包括左边的0和小数点右边的0)-scale: 在小数点右边的最大数字长度(包括左边的0)--指定了s但是没有指定p,则p默认为38,如:列名 number( * , s )------round (n [ , m ]) : 用于四舍五入-参...原创 2018-03-15 21:48:20 · 249 阅读 · 0 评论