随笔-28  评论-15  文章-81  trackbacks-0
1.偶尔需要清空数据 以前一直用delete 今天发现有个好的办法:
  Truncate Table [表名]
这个可以直接清空数据(delete是逐行删除)

2.SELECT CASE THEN 的用法
  SELECT CODE,CASE SYSPAR.GETLANG WHEN 'EN' THEN LNAME ELSE NVL(CNAME,LNAME) END NAME
  FROM PRD;

3.查询服务器的字符集
     SELECT USERENV('LANGUAGE') FROM DUAL;

4.单引号也用单引号转义
   select '''' from dual  结果为 '

5.查看用户表注释
  SELECT TABLE_NAME,COMMENTS FROM USER_TAB_COMMENTS;

6.oracle 增加和删除列
add
  ALTER TABLE PRD ADD DISPLAY_CODE  VARCHAR2(30); 
delete
  删除列的2种方法

alter table qq drop column TIME

alter table qq set unused ("TIME") cascade constraints;(注意TIME为字段名,要大写)
第一个命令直接删除一个列,适合应付比较小的表,
第二个命令将一个列标识为unused
然后在系统负载比较轻的时候使用
alter table drop unused columns
删除该列占用的存储空间。
可以使用参数指定一次删除多少行
适合负载比较重,或者表比较大的情况

7.新建一个表时需要赋权限和建同义词
   GRANT ALL ON DBOWN.PROD TO APPUSER;
   GRANT SELECT,DELETE,UPDATE,INSERT ON DBOWN.ORDSTYLES TO APPUSER;
   CREATE OR REPLACE PUBLIC SYNONYM ORDSTYLES FOR ORDSTYLES;
8.物化视图
      EXEC DBMS_SNAPSHOT.refresh('GRANTEDPRIV');

posted on 2008-09-25 10:09 谭明 阅读(178) 评论(0)  编辑  收藏 所属分类: Oracle

只有注册用户登录后才能发表评论。


网站导航: