从上周开始计划学习Orcle到现在差不多一周时间,一直钻在蒙昭良老师的书里面,从第1页看到了153页,总共有八章内容,主要是Oracle11gR2在win7 64位系统下的安装、SQL表基本操作、PL/SQL Developer安装及使用、创建表约束约束条件、增、改、删用户及授权操作、Oracle对象学习、Oracle启动状态,由于之前对SQL Server有一定了解,所以这八章内容感觉不是太难啃,基本上看一遍就知道什么意思了,因此觉得Oracle并不是那么难学,觉得既增长了知识又充实了自己,随觉兴趣见长,由此也开始关注IT Pub上的一些论坛和博客,但基本上感觉都看不懂,而且始终找不到使用Oracle处理100GTXT的方法,现在感觉自己知道了Oracle是怎么回事,具体有哪些用途,该怎么用还是一头雾水。下一步不知道该继续啃前八章的内容,还是接下去开始接触Oracle在linux中的应用。
大概总结记录下这段时间比较有用的一些SQL操作命令:
登陆SYS账户:sqlplus "/as sysdba",切换到scott:conn scott/cat,切换回SYS:conn /as sysdba,查看数据库状态:select instance_name,status from v$instance,关闭数据库:shutdown immediate,启动数据库:startup,查看当前数据库名称:show parameter db_name,查看scott权限:select * from session_privs,
查看scott状态:select username,account_status from dba_users where username='SCOTT', 对scott解锁:alter user scott account unlock,查看当前用户:show ueser,查看表结构:desc 表名,插入一行:insert into table values() commit,更新数据:update table set 列名=‘’ where 条件 commit, 删除一行数据 delete from,删除表:drop table 表名,Oracle连接符:||,过滤重复:distinct,主键:primary,外键:foreign,非空:not null,唯一:unique,约束条件:constraint......check(条件),表复制:as,增加一列:alter table 表名 add(列名 varchar(8)),修改一列:
alter table 表名 modify(列名 varchar(8)),新增用户:create user lisi identified by 123123,数据库授权:grant connect,dba,resource to lisi,修改用户密码:alter user lisi identified by 321321,查看CONNECT/RESOURCE/DBA权限:select * from dba_sys_privs where grantee='CONNECT',创建表:create table 表名,创建视图;create view 视图名,创建序列:create sequence 序列名,nextval表示下一个序列值,currval表示当前序列值,dual虚拟表,创建函数:create or replace function 函数名(返回值),创建过程:Create
or replace procedure 过程名,执行过程的关键字:execute,创建索引:create index 索引名 on 表名(列名),查看当前用户是否有创建同义词权限:select * from session_privs where privilege like '%SYNONYM%',
授予scott创建同义词权限;grant create any synonym to scott,授权公共同义词权限:
grant create public synonym to scott。
Oracle中函数和过程的区别,可以将比较复杂的查询写成函数,然后嵌入到过程中执行:
1、 函数必须要有返回值,过程则无需返回值;
2、 函数可以单独执行,而过程必须通过execute关键字执行
3、 函数可以嵌入SQL中执行,而过程不可以。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29753231/viewspace-1224419/
,如需转载,请注明出处,否则将追究法律责任。