关联数组, 嵌套表, varray 个人并不推荐使用集合, 因为操作有别于普通字段. 集合中每一个元素的数据类型都是相同的, 因此这些元素都是同质的(同质元素) 这一章的内容先忽略吧, 因为个人感觉用不到…
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/sl1992/article/details/80489413 1.下载安装PL/SQL Developer 2.下载Oracle Instant Client 3.配置PL/SQL Developer首选项 4.配置Oracle Instant Client 5.PL/SQL Developer登录Oracle 6.PL/SQL Developer显示SQL行号 7.PL/SQL Develope…
PLSQL Developer 12 注册码product code: 4vkjwhfeh3ufnqnmpr9brvcuyujrx3n3le serial Number:226959 password: xs374ca 亲测有效…
这一章的内容, 只完成了一部分, 剩下的用到再补充吧 由于依赖关系, 而编译失败, 需要重新编译. ( 所谓依赖, 是指存储过程, 函数等在运行中调用的对象, 比如table 等, 比如你删除了过程中调用的table, 然后又创建了一个一模一样的, 这个过程就需要重新编译) alter package bookworm compile body reuse settings; alter procedure add_book compile reuse settings; 1. 数据字典帮助 U…
我们可以把多个SQL语句集中在一起, 在逻辑上组成一个事务, 从而保证这些操作或者全部被保存到数据库(用sql的说法就是”提交”), 或者被整体驳回(用sql的说法是“回滚”). 事务: ACID 原子性: 改变或者全部发生, 或者全部不发生. 一致性: 正确的状态转换, 不能违反任何完整性约束, 例如 银行汇款 隔离: 从任何一个事务的角度来看, 其他事务看起来都是在它之前或之后发生的. 持久性: 一旦一个事务成功结束, 状态的改变就是永久的了. DML 语句, insert, update,…
挂起语句, 是指数据库 Hang 到那不能动了, 触发的. 1. DML 触发器 这种类型的触发器对于开发人员都很常见, 其他类型的触发器主要是给DBA使用的. 配置触发器,我们需要回答以下问题: 触发器应该是对整个DML语句触发一次, 还是要为语句涉及的每一行都触发一次 ? 触发器是应该在整个语句开始之前或者结束之后, 或者是在对每一行记录处理之前或者之后触发 ? 触发器到底是由插入, 更新, 删除或者是某种组合触发的 ? (oracle 11g 开始支持多个操作组合触发器) 如果我在 boo…
bolean 类型 raw 类型, 用来保存和操作少量的二进制数据. urowid 和 rowid 类型, 这两种数据类型表示数据库的 rowid. 所谓 rowid 就是一个标识符-用来表示数据库中一行记录的物理地址的二进制值. 一个rowid值可以唯一的标识出数据库表中的一行数据, 即便这个表没有唯一键. 两行记录就算是所有列的值都完全相同, 但是会有不同的 rowid 或者 urowid. 从历史上说, rowid 类型要比 urowid 出现的早, 伴随着 Oracle 增加的新功能,…
代码模块化, 即将一大块代码拆成若干小块(过程), 然后就可以在其他模块调用这些模块了, 这样, 重用性更好, 也方便管理. 过程: 过程是一个可以像执行 PL/SQL 语句一样调用的程序, 一个过程可以执行一个或多个动作. 我们可以通过参数列表向过程传递或者从过程传出信息. 函数: 函数是一个通过RETURN 语句返回数据的程序, 使用起来就像是一个 PL/SQL 表达式. 我们可以通过参数列表传入参数, 也可以通过参数列表传出参数, 不过通常情况下这么做并不好. 数据库触发器: 触发器是当数…
动态SQL 是指在执行时才构建 SQL 语句, 相对于静态 sql 的编译时就已经构建. 动态PLSQL 是指整个PL/SQL代码块都是动态构建, 然后再编译执行的. 作用: 1. 可以支持 DDL 语句, 静态 sql 只能支持 DML 语句. 2. 支持web 引用程序的查询意愿( 一个网络应用程序的常见需求是用户可以指定他们想看到的列, 以及改变数据的排序方式 ) 2. 可以将业务逻辑先放在表中, 然后再动态编译. NDS 是我们首选的动态解决方案. NDS 执行动态语句的办法就是 exe…
记录类型非常类似数据库表中的行. 记录作为一个整体本身并没有值, 不过每个单独成员或字段都有值, 记录提供了一种把这些值当做一组进行操作的方法. 例如: 1: -- create a table 2: -- chap11_01.sql 3: create table books ( 4: book_id integer; 5: isbn varchar2(13), 6: title varchar2(200), 7: summary varchar2(2000), 8: author varch…
年 月 日 时 分 秒 时区 用小时表示的相对于 UTC 的时差 用分钟表示的相对于 UTC 的时差 date 存储日期和时间, 不带时区, 精确到秒 timestamp 存储日期和时间, 不带时区, 时间精度可以达到10亿分之一秒, 小数点后9位. 除了精度这一点之外, TIMESTAMP 和 DATE 相同 timestamp with timezone 存储时区, 日期和时间, 精度达到小数点后 9 位 timestamp with local timezone 保存日期和精确到小数点后…
所谓包, 就是把一组PL/SQL 的代码元素组织在一个命名空间下. 另外, 包的用法就类似java中的类.( 有封装, 有重载, 没有继承和多肽) create or replace procedure process_employee( employee_id_in IN employees.employee_id%type) is l_full_name ); begin select last_name || ' , ' || first_name into l_full_name fro…
1. 条件语句 if salary > 40000 or salary is NULL then give_bonus(employee_id, 500); end if; if condition then --- else --- end if; if condition then statement1 elsif condition then statement2 else statement3 end if; 例如: IF salary >= 10000 AND salary <…
一.List<E>接口(超级接口Collection,List比Collection多重载了一些索引作为形参的方法)1.实现类ArrayList\LinkedListArrayList顺序存储,易读取,难增删LinkedList链式存储,易增删,难读取2.List的一些方法void add(int index, E element) 将指定元素插入(其后元素顺延一个位置)到指定位置,注意index不能超过列表的size() E get(int index) 返回列表指定索引位置的元素(Coll…
一.总体分类 Collection(包括方法add,remove,contains,clear,size) List(接口) LinkedList ArrayList Vector---Stack 2. Set HashSet TreeSet Map Hashtable---properties HashMap TreeMap 二.Map接口:元素以键值对的方式存放(无序) HashMap:键不能重复,当添加重复的时候,会将原来的值覆盖掉 键和值都可为空 HashTable:线程安全 键不能空,…
一.总体分类 Collection(包括方法add,remove,contains,clear,size) List(接口) LinkedList ArrayList Vector---Stack 2. Set HashSet TreeSet Map Hashtable---properties HashMap TreeMap 二.集合------Set(无序,不可重复) 无法获取索引位置,所以遍历时不能用for的普通方法,只能用增强for循环和迭代器. HashSet hs=new HashS…
一.总体分类 Collection(包括方法add,remove,contains,clear,size) List(接口) LinkedList ArrayList Vector---Stack 2. Set HashSet TreeSet Map Hashtable---properties HashMap TreeMap 二.集合------List(有序,可重复) 1.ArrayList 这里有个包装类的概念:每一个基本类型都有一个对应的数据类型的包装类 特点就是包装类和String类一…
集合Set +无序不重复元素(键)集 +和字典类似,但是无"值" 创建 x = set() x = {key1,key2,...} 添加和删除 x.add('body') x.remove('body') 集合的运算符 运算符 含义 差集 & 交集 | 并集 != 不等于 == 等于 in 成员 for key in set 枚举 +中文分词 如:我爱北京天安门.->我/爱/北京/天安门/. 算法:正向最大匹配 从左到右扫描取尽可能长的词 如:研究生命的起源->研究…
授权 从 oracle 8i 开始, oracle 用通过提供 authid 子句为 pl/sql 的执行授权模型, 这样我们可以选择使用 authid current_user(调用者权限)来执行这个plsql语句, 这时这个程序是用调用者(当前)模式的授权运行的. 与 SQL 整合 pl/sql 于 sql 紧密整合, plsql 无需任何 odbc, jdbc declare l_book_count INTEGER; begin select count(*) into l_book_c…
number 类型, 十进制数据类型(平台无关的) pls_integer 和 binary_integer 这两种数据类型和你底层硬件表示整数的方法完全一致, 这两种类型的运算是利用硬件原生, 机器指令执行的, 你不能再数据库中保存这些类型的值. binary_float 和 binary_double 一般用于浮点数计算 number 类型, number(9,2)  // 注意, 这里的9是9位精度, 表示有效数字要包含2位小数, 所以这个数的最大值是 9 999 999.99 numbe…
一般, char 和 nchar 类型很少使用. 建议使用 varchar2 和 nvarchar2, 其中( n 开头的是国家字符集, 没有n开头的是数据库字符集 ) 一般也不怎么使用国家字符集 variable_name VARCHAR2(max_length [char | byte]);  其中 char 说明以字符为单位, byte说明以字节为单位. 如果忽略了char或 byte( 我们一般都这样做, 定义时直接 varchar2(10) 类似这种), 这时, 要看初始化参数NLS_…
数据类型 char, Nchar varchar2, Nvarchar2 clob, Nclob number number(9, 2);  -- 定点小数, 小数点左边7位, 右边2位 number, 浮点小数 number(2) 整数 pls_integer: 由硬件实现算法的整数类型, 顾名思义, 效率高, 但是兼容性... for 循环计数器的类型是 PLS_INTEGER ROWID 和 UROWID 用来代表某个表中某条记录的地址, ROWID 代表了表中一行记录的唯一物理地址, U…
1. 登录 PLSQL Developer PLSQL Developer > Preferences 2. Preferences > Logon History > Definition > 打勾 Store History 和 Store with password 3. 退出PLSQL后重新登录,在用户列表中选择用户名,自动登录.…
ArrayList和HashTable集合 1.ArrayList集合 ***添加元素 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Collections; namespace ConsoleApplication1 { class Program { static void Main…
CREATE OR REPLACE PACKAGE BODY temp_package_demo is FUNCTION f_demo(userid NUMBER) RETURN BOOLEAN IS v_temp ); BEGIN INTO v_temp FROM scott.emp WHERE empno = userid; RETURN TRUE; EXCEPTION WHEN NO_DATA_FOUND THEN RETURN FALSE; END; PROCEDURE p_demo_1…
下载地址: https://www.allroundautomations.com/plsqldevlang/120/index.html…
点击下载PLSQL,本次安装的PLSQL版本为12.0.7,建议安装64位. 下载PLSQL时,版本旁边会有个“Language pack”的链接,点击后左侧选择“Chinese”即可下载汉化包. 注册码 PLSQL Developer 12.0.7 注册码 product code: 4vkjwhfeh3ufnqnmpr9brvcuyujrx3n3le serial Number:226959 password: xs374c 注意 PLSQL 位数要和 Oracle 客户端一致 安装 ora…
前言 新版PLSQL连接Oracle时,不需要Oracle客户端为32位了,安装完Oracle后也不需要在单独安装客户端. 一.准备工作 1.点击下载PLSQL,本次安装的PLSQL版本为12.0.7,建议安装64位. 2.下载PLSQL时,版本旁边会有个“Language pack”的链接,点击后左侧选择“Chinese”即可下载汉化包. 3.注册码 PLSQL Developer 注册码 product code: 4vkjwhfeh3ufnqnmpr9brvcuyujrx3n3le ser…
界面模板的配置: 方便用户快速点击需要的功能.如打开SQL Window 1.打开customize,用户自定义Toolbars对话框. 2.在Commands命令标签页,选中要添加的命令,拖动到工具栏即可. 3.添加的command如下: Preferences配置 SQL Window编写sql语句窗口 Comment注释,注释掉选中代码 Uncomment反注释,反注释选中代码 Beautifuer 代码美化,格式化 Sort排序选中 Indent 向右缩进 Unindent 反右缩进 R…
客户机中PLSQL DEV访问虚拟机中的ORCLE11g,错误百出! 创建时间: 2017/10/14 18:44 作者: CNSIMO 标签: ORACLE 忙了一下午,只有两个字形容:麻烦!   安装ORACLE1g   首先,我已经提前在虚拟机上配置了windows2008+oracle11g,为什么用server2008呢?我没有别的,win10做虚拟机觉得不太好,win7镜像还得下载,你懂的. 然后就是oracle11g是去某电脑上拷过来的,我是一个十分爱惜流量的人,嘿嘿. 我们老师为…