创建表的同时插入数据:
create table zhang3 as select * from zhang1;
create table zhang3(id,name) as select * from zhang1;

将查询数据插入到某个表中:
insert into zhang3 select * from zhang1;
insert into zhang3(id,name) select * from zhang1;

有关完整性约束,表名,列名的两个视图:
user_constraints, user_cons_columns

创建用户并为用户授权(在命令行中进行操作):
sqlplus / as sysdba
create user zfs identified by zfs;
grant dba to zfs;

oracle数据库进行定制安装,安装成功之后没有数据库,这时需要手动创建数据库(使用 database configuration assistant)。
创建数据库的过程中需要指定密码(是指定 SYS, SYSTEM, DBSNMP, SYSMAN 这几个用户的密码)。实际使用时发现随便输入密码就可以登录SYSDBA这个用户,可能这是一个特殊的用户,是用系统的身份登录的。但是 使用任意密码也可以登录 SYS 这个用户。

创建完数据库之后还未完成,现在还没有LISTENER,使用 Net configuration assistant 创建好 LISTENER。
现在还需要有 tnsnames.ora 这个文件来描述我们刚刚创建的数据库。若创建数据库之前已经创建了 LISTENER, tnsnames.ora 文件应该会自动生成。
由于数据库先于 LISTENER 创建,现在需要手动配置 tnsnames.ora。仍然使用 Net configuration assistant,选择 本地Net服务名配置,输入创建的数据库的名称,配置完成之后 tnsnames.ora 会自动生成。

关于oracle数据库对用户的管理:
不同数据库的用户应该是无法通用的,例如在一个数据库里创建了用户,该用户不能登录另一个数据库。
数据库的用户是保存在该数据库中的一个名为 user$ 的表中。该表对dba这个角色的用户是不可见的,

tnsnames.ora 描述的信息:
该文件中的每个条目应该描述的是连接一个数据库所需的信息(ip地址,端口号,所要连接的数据库的服务名,该名称由LISTENER在服务端映射到对应的数据库),连接数据库所需的用户名和密码并没有放到 tnsnames.ora 这个文件中,而是要在登录时进行输入。
所以每一次的登录会话对应的是一个数据库,若想切换到另一个数据库,则要使用 tnsnames.ora 中的另外的条目。

由于在informatica powercenter中要用到oracle的odbc驱动,所以安装oracle数据库的过程中,若以定制的方式安装,则应该选择 Oracle ODBC Driver。

查询数据库中的表:
select * from tab;
select * from user_tables;
select * from all_tables;
select * from dba_tables;

sys和system的区别:
sys是最大权限的用户,是数据库集群里面的最高管理员。 system是单个oracle实例的最高管理员.

Compares a value to each value in a list or returned by a query. Must be preceded by =,!=,>,<,<=,>=. Can be followed by any expression or subquery that returns on or more values.例子中的any可以是some
eg. SELECT * FROM employees
WHERE salary = ANY
(SELECT salary
FROM employees
WHERE department_id = 30)
ORDER BY employee_id;

关于oracle的正则表达式:
在正则表达式中,可以使用类似与 \s 这样的操作符来匹配空白字符,但是 oracle的正则表达式中不支持 \n \r \t 这类的c语言风格的转义字符,若想在正则表达式中匹配这类字符,可以直接从键盘进行输入。

Oracle Database interprets the empty string as null.

plsql的输出语句示例:
DBMS_OUTPUT.PUT_LINE('surname=' || surname);

The %TYPE attribute is particularly useful when declaring variables to hold database
values. The syntax for declaring a variable of the same type as a column is:
variable_name table_name.column_name%TYPE;

Assigning Values to Variables with the SELECT INTO Statement
A simple form of the SELECT INTO statement is:
SELECT select_item [, select_item ]...
INTO variable_name [, variable_name ]...
FROM table_name;

Oracle 中的between and 是闭区间的。

Oracle数据库学习笔记的更多相关文章

  1. Oracle数据库学习笔记(一)

      Oracle的体系结构大体上分为两部分:Instance(实例)和Database(数据库). Instance(实例) :在Oracle Instance中主要包含了SGA以及一些进程(例如:P ...

  2. 吴裕雄--天生自然ORACLE数据库学习笔记:Oracle数据备份与恢复

    run{ allocate channel ch_1 device type disk format = 'd:\oraclebf\%u_%c.bak'; backup tablespace syst ...

  3. 吴裕雄--天生自然ORACLE数据库学习笔记:过程、函数、触发器和包

    create procedure pro_insertDept is begin ,'市场拓展部','JILIN'); --插入数据记录 commit; --提交数据 dbms_output.put_ ...

  4. 吴裕雄--天生自然ORACLE数据库学习笔记:PL/SQL编程

    set serveroutput on declare a ; b ; c number; begin c:=(a+b)/(a-b); dbms_output.put_line(c); excepti ...

  5. 吴裕雄--天生自然ORACLE数据库学习笔记:Oracle 11g的闪回技术

    alter system set db_recovery_file_dest_size=4g scope=both; connect system/1qaz2wsx as sysdba; archiv ...

  6. 吴裕雄--天生自然ORACLE数据库学习笔记:数据导出与导入

    create directory dump_dir as 'd:\dump'; grant read,write on directory dump_dir to scott; --在cmd下 exp ...

  7. 吴裕雄--天生自然ORACLE数据库学习笔记:优化SQL语句

    create or replace procedure trun_table(table_deleted in varchar2) as --创建一个存储过程,传入一个表示表名称的参数,实现清空指定的 ...

  8. 吴裕雄--天生自然ORACLE数据库学习笔记:Oracle系统调优

    --修改 alter system set large_pool_size=64m; --显示 show parameter large_pool_size; select sum(getmisses ...

  9. 吴裕雄--天生自然ORACLE数据库学习笔记:用户管理与权限分配

    create user mr identified by mrsoft default tablespace users temporary tablespace temp; create user ...

随机推荐

  1. svn 修改文件的二进制或文本标记

    在添加一个文件的时候,svn自动标记成了二进制文件.当时也没在意就提交了.结果修改了之后不能进行svn diff操作,说是二进制文件不能进行diff操作.在网上找了个方法,修改这个文件的标记属性,把这 ...

  2. trie字典树详解及应用

    原文链接    http://www.cnblogs.com/freewater/archive/2012/09/11/2680480.html Trie树详解及其应用   一.知识简介        ...

  3. Unity_Shader(1)

    Shader需要作用在Material中才能起作用. 例子1: (1)创建Shader 将shader替换为以下代码: Shader"MyDir/FirstShader" { Su ...

  4. 手把手教你编写Logstash插件

    使用过Logstash的朋友都知道,它强大的插件生态几乎覆盖了所有的开源框架.从基本的http.tcp.udp.file,到强大的kafa.redis.ganglia,还有丰富的解析工具,比如date ...

  5. “菜”鸟理解.NET Framework(CLI,CLR,CTS,CLS,BCL,FCL)

    既然要学.NET,就要先认识认识她,我不喜欢大段大段文字的东西,自己通过理解,画个图,来看看.NET的沉鱼落雁,闭月羞花之容. 最下层蓝色部分是.NET Framework的基础,也是所有应用软件的基 ...

  6. JAVA(IO流)文件复制

    package com.am; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOEx ...

  7. Self-Host Web API 学习笔记

    ASP.NET Web API 不需要 IIS,直接使用控制台程序可以实现. 一.创建一个新的控制台程序,项目名为 HostApi 二.设置目标框架为.NET Framework 4 三.NuGet添 ...

  8. 汇编语言标记寄存器标记位_NV UP EI NG NZ AC PE CY

    在8086CPU中,有一种标记寄存器,长度为16bit: 其中存储的信息被称为程序状态字(Program Status Word,PSW),以下将该寄存器简称为flag. 功能:1)用来存储相关指令的 ...

  9. [dpdk] 熟悉SDK与初步使用 (三)(IP Fragmentation源码分析)

    对例子IP Fragmentation的熟悉,使用,以及源码分析. 功能: 该例子的功能有二: 一: 将IP分片? 二: 根据路由表,做包转发. 路由表如下: IP_FRAG: Socket : ad ...

  10. MySQL 一些查询语句及技巧

    生成唯一随机数 # 非补0版本 SELECT FLOOR(100000 + RAND() * 899999) AS random_number FROM target_table WHERE &quo ...