Linux中国  设为主页
 收藏本站
 
当前位置: > 首页 ->数据库应用 ->Oracle ->八个学习点帮助你全面认识Oracle数据库
  相关分类: 
Access
DB2
Mysql
Oracle
PostgreSQL
SQL Server
Sybase
其他数据库
  站内搜索: 
热门文章排行
热门文章排行 Oracle 10gR2 RAC + RHEL AS4U2 (04-22)
深刻理解Oracle数据库的启动和关闭(04-17)
设计和实施Oracle RAC项目 (04-23)
Oracle XQuery查询、构建和转换XML (04-23)
分享:我的oracle9i学习笔记 (04-23)
精采文章排行
精采文章排行 怎样保持Oracle数据优良性能的若干诀(06-29)
讲解基于Oracle高性能动态SQL程序开(06-29)
如何恢复只有完好数据文件的Oracle数(06-29)
八个学习点帮助你全面认识Oracle数据(06-29)
轻松六步使你的Oracle存储过程迅速加(06-29)
  ·浅析Oracle数据库的最大可用性体系结构 ·在Oracle 9i中Form Builder使用树心得 ·Oracle 9i应用COMPOSE和UNISTR创建沉音 ·Oracle巧取指定记录以及巧用外关联查询 ·快速掌握Oracle数据库游标的使用方法 ·你对Oracle数据库字符集究竟认识多少? ·讲解Oracle数据库之中数据安全完全分析 ·讲解Oracle数据库中LONG类型字段的存取 ·Oracle数据库中创建表时怎样考虑列顺序

八个学习点帮助你全面认识Oracle数据库

作者:Webmaster   来源:   点击:   日期:2007-06-29 [收藏] [投稿]

  IE是否经常中毒?推荐您











TableSpace

表空间:

一个表空间对应多个数据文件(物理的dbf文件)

用语法方式创建tablespace,用sysdba登陆:

--创建表空间mytabs,大小为10MB:

create tablespace mytabs datafile 
'C:\oracle\oradata\mydb\mytabs1.dbf' size 10M;
alter user zgl default tablespace mytabs;
--把tabs做为zgl的默认表空间。
grant unlimited tablespace to zgl;
--将操作表空间的权限给zgl。

Exception

示例:

create or replace procedure
pro_test_exception(vid in varchar2) is
userName varchar2(30);
begin
select name into userName from t_user where id=vid;
dbms_output.put_line(userName);
exception
when no_data_found then
dbms_output.put_line('没有查到数据!');
when too_many_rows then
dbms_output.put_line('返回了多行数据!');
end pro_test_exception;

安全管理

以下语句以sysdba登陆:

用户授权:

alter user zgl account lock;--锁定帐号。

alter user zgl identified by zgl11;--修改用户密码。

alter user zgl account unlock;--解除帐号锁定。

alter user zgl default tablespace tt;--修改用户zgl的默认表空间为tt。

create user qqq identified by qqq123 default tablespace tt;--创建用户。

grant connect to qqq;--给qqq授予connect权限。

grant execute on zgl.proc01 to test;--将过程zgl.proc01授予用户test。

grant create user to zgl;--给zgl授予创建用户的权限。

revoke create user from zgl;--解除zgl创建用户的权限。

角色授权:

create role myrole;--创建角色myrole

grant connect to myrole;--给myrole授予connect权限

grant select on zgl.t_user to myrole;--把查询zgl.t_user的权限授予myrole

grant myrole to test;--把角色myrole授予test用户

概要文件(配置文件):

全局设置,可以在概要文件中设置登陆次数,如超过这次数就锁定用户。

Synonym

创建同义词示例:

create public synonym xxx for myuser.t_user
create synonym t_user for myuser.t_user
select * from dba_synonyms where table_name='T_USER'

跨数据库查询

create database link dblinkzgl 
connect to myuser identified by a using 'mydb'
Select * From t_user@dblinkzgl

course示例

示例1:

create or replace procedure pro_test_cursor is
userRow t_user%rowtype;
cursor userRows is
select * from t_user;
begin
for userRow in userRows loop
dbms_output.put_line
(userRow.Id||','||userRow.Name||','||userRows%rowcount);
end loop;
end pro_test_cursor;

示例2:

create or replace procedure 
pro_test_cursor_oneRow(vid in number) is
userRow t_user%rowtype;
cursor userCur is
select * from t_user where id=vid;
begin
open userCur;
fetch userCur into userRow;
if userCur%FOUND then
dbms_output.put_line
(userRow.id||','||userRow.Name);
end if;
close userCur;
end pro_test_cursor_oneRow;

record示例

create or replace 
procedure pro_test_record(vid in varchar2) is
type userRow is record(
id t_user.id%type,
name t_user.name%type
);
realRow userRow;
begin
select id,name into 
realRow from t_user where id=vid;
dbms_output.put_line
(realRow.id||','||realRow.name);
end pro_test_record;

rowtype示例

create or replace procedure 
pro_test_rowType(vid in varchar2) is
userRow t_user%Rowtype;
begin
select * into userRow from t_user where id=vid;
dbms_output.put_line
(userRow.id||','||userRow.name);
end pro_test_rowType;

相关文章:

将Oracle的数据倒入EXCEL中的方法

Java连接Oracle数据库的各种方法



 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:轻松六步使你的Oracle存储过程迅速加密   下一篇:如何恢复只有完好数据文件的Oracle数据
文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论

   相关文章:
·迅速安装Linux与Oracle数据库步骤精讲

   文章评论:(1条)
  
 请留名: 匿名评论   点击查看所有评论 论坛讨论
 

 声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。