Chinaunix首页 | 论坛 | 博客
  • 博客访问: 787510
  • 博文数量: 94
  • 博客积分: 1238
  • 博客等级: 少尉
  • 技术积分: 1174
  • 用 户 组: 普通用户
  • 注册时间: 2011-08-13 19:22
个人简介

走自己的路让别人说去吧!

文章分类

全部博文(94)

文章存档

2015年(4)

2014年(3)

2013年(12)

2012年(32)

2011年(43)

分类: Oracle

2012-04-17 21:34:43

一、创建、删除、修改、添加
创建表空间:
CREATE  TABLESPACE finchinafcdd
DATAFILE '\oracle\product\10.2.0\oradata\orcl\finchinafcdd.DBF'
SIZE 50M
AUTOEXTEND ON
NEXT 100M MAXSIZE 2000M(UNLIMITED)
LOGGING
EXTENT MANAGEMENT LOCAL
UNIFORM SIZE 128K       #指定区尺寸为128k,如不指定,区尺寸默认为64k
SEGMENT SPACE MANAGEMENT AUTO;
删除表空间
DROP TABLESPACE finchinafcdd INCLUDING CONTENTS AND DATAFILES;
更改表空间表名
ALTER TABLESPACE finchinafcdd RENAME to newfinchinafcdd;
创建 用户 :
CREATE USER finchina IDENTIFIED BY password
DEFAULT TABLESPACE finchinafcdd;
ACCOUNT UNLOCK
用户授予/删除权限:
GRANT CONNECT,RESOURCE,DBA,UNLIMITED TABLESPACE TO finchina;
REVOKE CONNECT,RESOURCE,DBA,UNLIMITED TABLESPACE FROM finchina;
更改用户默认表空间:
ALTER USER finchina DEFAULT TABLESPACE finchinafcdd;
删除用户:
DROP USER finchina CASCADE;
设置表空间无限配额:
ALTER USER test QUOTA UNLIMITED ON finchinafcdd;
设置用户对其他system表空间的配额为0:
ALTER USER test QUOTA 0 on system
移动表至另一表空间
ALTER TABLE tbname MOVE TABLESPACE finchinafcdd

增加数据文件
ALTER TABLESPACE TEST
ADD DATAFILE 'D:\oracle\product\10.2.0\oradataTEST02.dbf' SIZE 1000M;
手动增加数据文件尺寸
ALTER DATABASE DATAFILE 'D:\oracle\product\10.2.0\oradataTEST.dbf'
RESIZE 4000M;
设定数据文件自动扩展
ALTER DATABASE DATAFILE 'D:\oracle\product\10.2.0\oradataTEST.dbf
AUTOEXTEND ON
NEXT 100M MAXSIZE UNLIMITED;
添加单列:
ALTER TABLE 表名 ADD 列名 数据类型
添加多列:
ALTER TABLE 表名 ADD ( 列名1 数据类型1,列名2 数据类型2)
修改单列数据类型:
ALTER TABLE 表名 MODIFY 列名 数据类型
同时修改多列数据类型:
ALTER TABLE 表名 MODIFY ( 列名1 数据类型1,列名2 数据类型2)
删除单列:
ALTER TABLE 表名 DROP COLUMN 列名
删除多列:
ALTER TABLE 表名 DROP (列名1,列名2)
同时添加和修改多列:
ALTER TABLE 表名 ADD ( 列名1 数据类型1,列名2 数据类型2) MODIFY ( 列名3 数据类型3,列名4 数据类型4)
二、数据查询
desc table 表名;                                   #查看表结构
SELECT *( TABLE_NAME) FROM USER_TABLES;                 #查询当前用户所有*/表
SELECT USERNAME,DEFAULT_TABLESPACE FROM DBA_USERS;  #查询表空间
SELECT * FROM USER_USERS;                #查询当前用户默认表空间
SELECT *( TABLESPACE_NAME) FROM USER_TABLESPACES;   #查询所有用户*/表空间
SELECT * FROM ALL_USERS                                           #查询所有用户
DESCRIBE  表名                                           
SELECT * FROM V$VERSION;                                              #查询ORACLE版本
select userenv('language') from dual
select * from v$nls_parameters;                                 #查询ORACLE编码
SELECT * FROM SESSION_PRIVS;                                      #查看用户所具有的系统权限
SELECT * FROM USER_ROLE_PRIVS;                                 #查看用户所拥有的角色:
select * from role_sys_privs;                                    #查看角色所拥有的权限 
                                 
desc table 表名;                                   #查看表结构
SELECT *( TABLE_NAME) FROM USER_TABLES;                 #查询当前用户所有*/表
SELECT USERNAME,DEFAULT_TABLESPACE FROM DBA_USERS;  #查询表空间
SELECT * FROM USER_USERS;             #查询当前用户默认表空间
SELECT *( TABLESPACE_NAME) FROM USER_TABLESPACES; #查询所有用户*/表空间
SELECT * FROM ALL_USERS                                            #查询所有用户
DESCRIBE  表名                                           
SELECT * FROM V$VERSION;                                               #查询ORACLE版本
select userenv('language') from dual                       #查询ORACLE编码
select * from v$nls_parameters;                         
SELECT * FROM SESSION_PRIVS;                             #查看用户所具有的系统权限
SELECT * FROM USER_ROLE_PRIVS;                          #查看用户所拥有的角色:
select * from role_sys_privs;                            #查看角色所拥有的权限
 
GBK代码集下:一个中文占2个字节;UTF-8代码集下:一个中文占3个字节。
一个英文字符对应于一个字节,而一个中文字符则可能对应于两个字节。总之,字节与字符不是一一对应的
datalength:返回任何表达式所占用的字节数。 对 varchar、varbinary、text、image、nvarchar 和 ntext 数据类型特别有用,因为这些数据类型可以存储可变长度数据。
以下示例查找 publishers 表中 pub_name 列的长度。
USE pubs
GO
SELECT length = DATALENGTH(pub_name), pub_name
FROM publishers
ORDER BY pub_name
GO
三、数据导出、导入
数据导出:
1 将数据库TEST完全导出,用户名system 密码manager 导出到D:daochu.dmp中
   exp
file=d:daochu.dmp full=y
2 将数据库中system用户与sys用户的表导出
   exp
file=d:daochu.dmp owner=(system,sys)
3 将数据库中的表inner_notify、notify_staff_relat导出
   exp
file= d:datanewsmgnt.dmp tables=(inner_notify,notify_staff_relat)  
           -
4 将数据库中的表table1中的字段filed1以"00"打头的数据导出
   exp
file=d:daochu.dmp tables=(table1) query=\"where TDATE
注:当不导出行,不导出数据时用参数ROW=N,当导出含有多个条件的语句时用用”/  /”包含
数据导入
1:将D:daochu.dmp 中的数据导入 TEST数据库中。
   imp
file=d:daochu.dmp
   imp
full=y file=d:datanewsmgnt.dmp ignore=y
2:将d:daochu.dmp中的表table1 导入
   imp
file=d:daochu.dmp tables=(table1)
阅读(1774) | 评论(1) | 转发(1) |
给主人留下些什么吧!~~

RT123AA2012-04-18 20:56:37

比好多的都要全,可以先下下来,谢谢了