随笔分类 - oracle
technology of oracle
摘要:情况一: create table edu_group_parent ( group_id varchar2(50) primary key not null, group_name varchar2(200), group_url ...
阅读全文
摘要:一、解释session web应用中,session是服务器段保存用户信息的一个对象,cookie是浏览器端保存用户信息的对象。今天了解了oracle也有session对象,那么什么是oracle的session对象呢? 依照web应用的模式,很容易理解,session是oracle服务器端保存...
阅读全文
摘要:一、一些概念定义:主键--唯一标识一条记录,不能有重复的,不允许为空外键--表的外键是另一表的主键,外键可以有重复的,可以是空值索引--该字段没有重复值,但可以有一个空值作用:主键--用来保证数据完整性外键--用来和其他表建立联系(在添加数据时会做检查,关联表中没有的值是添加不进来的)索引--是提高...
阅读全文
摘要:一、概述 使用merge声明从一个或者更多个表或视图中筛选记录,以用来更新或者插入到一个表或视图中。你可以指定条件以决定是执行update操作还是insert操作到目标表或视图中。 这个声明是一个方便的方式以联合多种操作。这样你就避免了大量的insert/update/delete这样的dm...
阅读全文
摘要:一、问题描述 有时我们为了保留某个表中的数据,而该表中的数据在另外一个关联表中未必都存在对应,此时就应该试用外连接查询。 比如:两个表,产品表和子产品表注:子产品的parent_product_id便是产品表的id 产品可以有子产品,也可以没有子产品 遇到类似的问题需要使用外连接查询,保证所...
阅读全文
摘要:一、默认值 建表时如果有默认值应该给定,否则如果前端需要一个默认值的话,就只能在sql中用nvl或者程序冲去处理,这样做的缺点就是将来维护的人必须到代码里才能找到对应的配置。
阅读全文
摘要:altertabletable_namemodifycolumn_namedefault0;
阅读全文
摘要:一、问题描述 查询列表时,我们有时需要对查询结果依据某个字段进行排名。 如果每条记录在排序字段上都不相同,我们可以将原查询作为一个视图,查询其rownum,便可以实现简单排序,例如:select rownum,e.* from emp e; 但是,很多时候我们想用来排序的字段都是有重复值的,此...
阅读全文
摘要:一、问题描述 有时在“相关子查询中”需要查询某个实体类对应的某个字段有多个值,如果不做行专列查询,会提示返回多个列的错误。例如: 如上图所示,一个组合包,可能对应多个产品,需要你将所对应的多个产品都放到前台显示。二、解决方法 表结构设计如图: 首先,我们这里采用相关子查询的方式来获取结果: ...
阅读全文
摘要:看到where语句中有条件:where 1=1 和 1=2或11用途: 1=1:是为了添加条件时使用and并列其他条件时使用的(动态连接后续条件) 比如: String sql = "select * from emp where 1=1 "; if(username...
阅读全文
摘要:truncateddl语句,删除表中数据,速度要比delete快;且所有自增字段重新开始计数;删除数据保留表结构;删除的数据不进入rollback segment,无法恢复。例: truncate table emp_tmp; drop ddl语句,删除和该表相关的所有信息,包括表结构、数据...
阅读全文
摘要:一、问题描述 本地未安装oracle-client端,由于机器资源有限,希望通过pl/sql developer进行远程数据库连接。单纯的安装pl/sql developer无法远程连接数据库。 二、解决 首先统一版本:windows64位,pl/sql64位,下载instantclien...
阅读全文
摘要:NVL( string1, replace_with):判断string1是否为空,如果是空就用replace_with代替。NVL2(E1, E2, E3)的功能为:如果E1为NULL,则函数返回E3,若E1不为null,则返回E2。decode(条件,值1,返回值1,值2,返回值2,...值n,...
阅读全文
摘要:一、问题 查询用户所有的错题数目到前端展示,要求展示的时候要有错题的编号,从1开始递增。如果删除了第5题,则将后面的题编号均向前挪。二、分析 错题是在用户每次做题过程中插入到错题表中的,或者将题目推送表中“错题标识字段”置1,我们没有必要在表中维护一个编号位,因为该编号位除了展示并无其他用途,如...
阅读全文
摘要:一、需求 用户答题,共3道,必须3题都答完才能提交。 目的:要查询用户答对了几题,答错了几题。(当然此处可以只查答对的题目数,用3减即得答错题的题目数)二、sqlselect * from (select count(1) rightCount from (select * ...
阅读全文
摘要:语法:select *from tablename t start with column = ?connect by [prior] t.id = [prior] t.parentid例如:菜单表,表结构如下 数据如下: 一、从上向下查1、查询某个指定id的所有下级菜单select * fro...
阅读全文
摘要:一、无关子查询 查询结果作为外层查询的条件或结果集。 例如: 学生学科表 s_subject 学生学科成绩表:s_subject_score 需求:查询一个学生所有学科的成绩值。每个学生可以选择多个学科,且选择学科的数量不定。 解决:将该学生选择的所有科目查询出来,用条件in再在...
阅读全文
摘要:一、应用场景 学生成绩表:create table s_score(id number(16) primary key not null,studentId number(16) not null,subject varchar(32) not null,test_time date defaul...
阅读全文
摘要:一、当前时间 在sql中直接使用sysdate函数,表示当前时间。 那么,利用当前时间,我们可以获取到当前时间前后指定的时间信息。 1.1 加减法select sysdate-1 from dual;--2015-05-20 14:54:10select sysdate+1 from dua...
阅读全文
摘要:java使用JDBC与数据库直接进行通信,但是我们通常将这个工作交给第三方框架来完成,而我们只专注于业务系统的开发工作。JDBC中提供的与事务相关的方法如下: Connection.setAutoCommit(boolean); Connection.commit(); Conne...
阅读全文

浙公网安备 33010602011771号