随笔分类 -  Oracle

摘要:因为使用System.Data.OracleClient会提示过时,推荐使用oracle自己提供的.net类库Oracle.DataAccess.Client在oracle C:\oracle\product\10.2.0\client_1\BIN安装目录中找到Oracle.DataAccess.dll添加引用代码如下:using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Data;using Oracle.DataAccess.Client;namespac 阅读全文
posted @ 2013-12-29 13:27 学亮 阅读(347) 评论(0) 推荐(0) 编辑
摘要:真实使用场景:数据备份1. 触发器的 helloworld: 编写一个触发器, 在向 emp 表中插入记录时, 打印 'helloworld'create or replace trigger emp_trigger after insert on emp for each rowbegin dbms_output.put_line('helloworld');end;2. 行级触发器: 每更新 employees 表中的一条记录, 都会导致触发器执行create or replace trigger employees_trigger after update 阅读全文
posted @ 2013-12-11 22:19 学亮 阅读(346) 评论(0) 推荐(0) 编辑
摘要:一、函数1. 函数的 helloworld: 返回一个 "helloworld--!" 的字符串create or replace function helloworldreturn varchar2isbegin return 'helloworld--!';end;执行函数begin dbms_output.put_line(helloworld());end;2. 定义带参数的函数: 两个数相加create or replace function add_func(a number, b number)return numberisbegin retu 阅读全文
posted @ 2013-12-11 20:05 学亮 阅读(446) 评论(0) 推荐(0) 编辑
摘要:一、游标1. 使用游标要求: 打印出 80 部门的所有的员工的工资: salary: xxxdeclare --1. 定义游标 cursor salary_cursor is select salary from employees where department_id = 80; v_salary employees.salary%type;begin--2. 打开游标open salary_cursor;--3. 提取游标fetch salary_cursor into v_salary;--4. 对游标进行循环操作: 判断游标中是否有下一条记录while salary_cursor%f 阅读全文
posted @ 2013-12-10 23:08 学亮 阅读(529) 评论(0) 推荐(0) 编辑
摘要:PL /SQL是一种高级数据库程序设计语言,该语言专门用于在各种环境下对ORACLE数据库进行访问。由于该语言集成于数据库服务器中,所以PL/SQL代码可以对数据进行快速高效的处理。PL/SQL是 Procedure Language & Structured Query Language 的缩写。ORACLE的SQL是支持ANSI(American national Standards Institute)和ISO92 (International Standards Organization)标准的产品。PL/SQL是对SQL语言存储过程语言的扩展。从ORACLE6以后,ORACL 阅读全文
posted @ 2013-12-08 21:00 学亮 阅读(1235) 评论(0) 推荐(0) 编辑
摘要:目标通过本章学习,您将可以:l 描述视图l 创建和修改视图的定义,删除视图l 从视图中查询数据l 通过视图插入, 修改和删除数据l 使用“Top-N” 分析l 创建, 维护, 和使用序列l 创建和维护索引l 创建同义词视图描述l 视图是一种虚表.l 视图建立在已有表的基础上, 视图赖以建立的这些表称为基表。l 向视图提供数据内容的语句为 SELECT 语句, 可以将视图理解为存储起来的 SELECT 语句.l 视图向用户提供基表数据的另一种表现形式为什么使用视图l 控制数据访问l 简化查询l 避免重复访问相同的数据创建视图CREATE VIEW empvu80AS SELECT employ. 阅读全文
posted @ 2013-12-08 15:07 学亮 阅读(561) 评论(1) 推荐(1) 编辑
摘要:目标通过本章学习,您将可以:l 使用 DML 语句l 向表中插入数据l 更新表中数据l 从表中删除数据l 控制事务l 描述约束l 创建和维护约束数据控制语言l DML(Data Manipulation Language – 数据操作语言) 可以在下列条件下执行:向表中插入数据修改现存数据删除现存数据l 事务是由完成若干项工作的DML语句组成的从其它表中拷贝数据 INSERT INTO sales_reps(id, name, salary, commission_pct) SELECT employee_id, last_name, salary, commission_pct FROM . 阅读全文
posted @ 2013-12-07 16:07 学亮 阅读(305) 评论(0) 推荐(0) 编辑
摘要:目标通过本章学习,您将可以:l 描述主要的数据库对象。l 创建表。l 描述各种数据类型。l 修改表的定义。l 删除,重命名和清空表。常见的数据库对象表、视图、序列、索引、同义词序列:提供有规律的数值同义词:给对象起别名查询数据字典查看用户定义的表SELECT table_name from user_tables;查看用户定义的各种数据库对象SELECT DISTINCT object_typeFROM user_objects ;查看用户定义的表, 视图, 同义词和序列SELECT *FROM user_catalog;命名规则 表名和列名:l 必须以字母开头l 必须在 1–30 个字符之. 阅读全文
posted @ 2013-12-07 10:13 学亮 阅读(566) 评论(0) 推荐(1) 编辑
摘要:笛卡尔集l 笛卡尔集会在下面条件下产生:省略连接条件连接条件无效所有表中的所有行互相连接l 为了避免笛卡尔集, 可以在 WHERE 加入有效的连接条件。自连接select m.last_name,m.email,m.salary from employees e,employees m where e.employee_id = m.manager_id and m.last_name='Chen';自己和自己连接,将一张表分为两张表查询使用非等值连接SELECT e.last_name, e.salary, j.grade_levelFROM employees e, job 阅读全文
posted @ 2013-12-04 22:39 学亮 阅读(323) 评论(0) 推荐(0) 编辑
摘要:目标通过本章学习,您将可以:l SQL中不同类型的函数。l 在 SELECT 语句中使用字符,数字和日期函数。l 描述转换型函数的用途。字符函数字符函数分为大小写控制函数和字符控制函数(1) 大小写控制函数LOWER将字符串转换为小写UPPER 将字符串转换为大写INITCAP 将字符串第一个首字母大写select LOWER('ABC'),UPPER('abc'),INITCAP('abc') from dual;DUAL 是一个‘伪表’,可以用来测试函数和表达式,结果为:LOWER('ABC') UPPER('ABC& 阅读全文
posted @ 2013-12-01 15:29 学亮 阅读(661) 评论(0) 推荐(2) 编辑
摘要:本篇文章中,对于有的和MSSQL Server相同的语法我就没有再写了,这里我只写Oracle和MSSQL Server有点不同的定义空值l 空值是无效的,未指定的,未知的或不可预知的值l 空值不是空格或者0。SELECT last_name, job_id, salary, commission_pct FROM employees;空值在数学运算中的使用包含空值的数学表达式的值都为空值SELECT last_name, 12*salary*commission_pctFROM employees;连接符l 把列与列,列与字符连接在一起。l 用 ‘||’表示。l 可以用来‘合成’列。SELE 阅读全文
posted @ 2013-11-29 22:21 学亮 阅读(698) 评论(0) 推荐(0) 编辑
摘要:怎样将预先写好的sql脚本执行?select * from employees;→107条记录利用 Oracle 企业管理器连接数据库服务器点击打开以下界面:此时已经连接成功了用 Oracle 企业管理器进行数据库安全管理用户管理创建之后就可以使用该用户进行客户端登录了当使用该账号进行对数据库某种操作的时候是需要权限的,比如,我们创建一张表需要创建表的权限,所以我们分配给该用户创建表的权限但是创建表需要空间,我们创建用户默认使用USERS表空间,所以我们分配表空间Oracle 的(资源限制)概要文件l 为了控制系统资源的使用, 可以利用资源限制概要文件.l 资源限制概要文件是 Oracle 安 阅读全文
posted @ 2013-11-27 23:18 学亮 阅读(1647) 评论(1) 推荐(2) 编辑
摘要:概述Oracle 数据库是一种网络上的数据库, 它在网络上支持多用户, 支持服务器/客户机等部署(或配置)服务器与客户机是软件概念, 它们与计算机硬件不存在一一对应的关系. 即: 同一台计算机既可以充当服务器又可以充当客户机, 或者, 一台计算机只充当服务器或只充当充当客户机.Oracle 数据库体系结构简介平常所说的 Oracle 或 Oracle 数据库指的是 Oracle 数据库管理系统. Oracle 数据库管理系统是管理数据库访问的计算机软件(Oracle database manager system). 它由 Oracle 数据库和 Oracle 实例(instance)构成.O 阅读全文
posted @ 2013-11-23 20:41 学亮 阅读(16644) 评论(8) 推荐(2) 编辑
摘要:Oracle 简介lOracle 是殷墟出土的甲骨文(oracle bone inscriptions)的英文翻译的第一个单词lOracle 公司是全球最大的信息管理软件及服务供应商,成立于1977年,总部位于美国加州 Redwood shorelOracle 公司因其复杂的关系数据库产品而闻名。Oracle的关系数据库是世界第一个支持SQL语言的数据库Oracle 10g 数据库服务器企业版的安装要求lCPU: Pentium 1.6G Hz 以上l内存: 512MB 以上l可用硬盘空间:•系统盘: 500 MB 以上•安装盘: 1.6G 以上接下来就来安装oracle 10g 服务器端软件 阅读全文
posted @ 2013-11-23 18:30 学亮 阅读(827) 评论(0) 推荐(1) 编辑
摘要:情况一:使用sqlplus登录正常输入用户名的口令,就会报错,因为SYS是在数据库之外的超级管理员,所以我们在登录的时候要在输入口令:口令+as sysdba(比如:123456 as sysdba)情况二:使用PL/SQL登录这是我们平时的登录数据库很常规的操作,但是用SYS作为用户名登录的时候就会报ORA-28009:connection as SYS should be as SYSDBA OR SYSOPER这样的错解决方法是:将“连接为”选项框的Normal改为SYSDBA或SYSOPER,即可登录成功 阅读全文
posted @ 2013-08-04 13:40 学亮 阅读(941) 评论(0) 推荐(0) 编辑
摘要:1.关闭oracle所有的服务。可以在windows的服务管理器中关闭; 2.打开注册表:regedit 打开路径: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ 删除该路径下的所有以oracle开始的服务名称,这个键是标识Oracle在windows下注册的各种服务! 3.打开注册表,找到路径: HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE 删除该oracle目录,该目录下注册着Oracle数据库的软件安装信息。 4.删除注册的oracle事件日志,打开注册表 HKEY_LOCAL_MACHINE\... 阅读全文
posted @ 2013-06-16 20:38 学亮 阅读(343) 评论(0) 推荐(0) 编辑
摘要:呵呵,花了一个多小时,左右把11g安装折腾好了。其中折腾SQL Developer 花了好长时间,总算搞定了。好了,先总结下安装步骤,希望给后面的童鞋提高安装效率。呵呵。一、Oracle下载注意Oracle分成两个文件,下载完后,将两个文件解压到同一目录下即可。 路径名称中,最好不要出现中文,也不要出现空格等不规则字符。官方下地址:http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html以下两网址来源此官方下载页网。win 32位操作系统 下载地址:http://download.ora 阅读全文
posted @ 2013-06-16 12:10 学亮 阅读(396) 评论(2) 推荐(1) 编辑