日期:2014-05-16  浏览次数:20513 次

Oracle学习笔记(1) Oracle数据库编程基础
    这段时间出差,一直在搞需求分析和设计,每天都是写文档画UML,都有好几个月没有写代码了,只怕都快忘记了!
     这是我用Oracle时学习的Oracle编程做的笔记,今天也发上来与大家分享一下,一共有八章。
    现在在有时间就学一下EJB3,因为在项目中会用到,等学完了把EJB3的笔记也发上来和大家分享!

通过SqlPlus登录Oracle ,sqlplus 用户名/密码@数据库名

建表
create table demo(
       id number(8),
       name varchar2(20)
)


插入数据
insert into demo values(1,'zhangshang');
insert into demo values(2,'lishi');

提交
commit;

查询数据字典(table_name='这里的值要大写')
select * from dba_tab_cols a where a.table_name='DEMO';

创建视图
create or replace:如果该视图存在就替换,如果不存在就创建
create or replace view myView as select id 编号,name 姓名 from demo;
select * from myView;

创建同义词(同义词相当于表的别名或逻辑名,可以通过该名称来操作相对应的物理表)
在分布式Oracle数据库中,标识一个对象需要四部分:主机名、实例名、模式名、对象名。例如SYSTEM.auths@PX.orcl,其中模式名是SYSTEM,对象名是auths,PX.orcl是一个数据库链,它指向服务器PX上的实例orcl,我们可以为其指定一个同义词,使所有的用户都可以通过简单的同义词来访问表SYSTEM.auths@PX.orcl
创建公有的同义词
create public synonym syn1 for demo;

创建私有的同义词
create synonym syn2 for demo;

创建并使用序列
创建序列的完整语法:
create sequence 序列名 increment by 增量种子数 start with 起始数字 maxvalue 最大值;
我们可以使用序列的两个属性nextval和currval,其中nextval是返回下一个可用的序列值,而currval用于获得当前序列的值
创建序列的简单方法
create sequence mySeq;

使用创建的序列
insert into demo values(mySeq.nextval,'ddd');

获得当前序列的值
select mySeq.currval from dual;


删除一条记录
delete from demo where id=2;

查询所有记录
select * from demo;

格式化日期时间
select to_char(sysdate,'yyyy-MM-dd hh24:mm:ss') 格式化日期 from dual; 



1 楼 光辉岁月 2011-12-15