创建一个和a表一样的空表----create table newtable as select * from a where 1=2;
创建一个和a表一样的表-----create table newtable as select * from a;
创建一个表---主键约束
CREATETABLE stu(
                  sid        CHAR(6) PRIMARY KEY,
                  sname      VARCHAR(20),
                  age            INT,
                  gender     VARCHAR(10)
);
创建一个表---主键自增长
CREATE TABLE stu(
         sid INT PRIMARY KEY AUTO_INCREMENT,
                  sname      VARCHAR(20),
                  age            INT,
                  gender     VARCHAR(10)
);
----非空约束
CREATE TABLE stu(
         sid INT PRIMARY KEY AUTO_INCREMENT,
         sname VARCHAR(10) NOT NULL,
                  age            INT,
                  gender     VARCHAR(10)
);
------------唯一约束 类似主键
CREATE TABLE tab_ab(
         sidINT PRIMARY KEY AUTO_INCREMENT,
         snameVARCHAR(10) UNIQUE
);
------------指定外键约束
CREATE TABLE t_section(
         sid    INTPRIMARY KEY AUTO_INCREMENT,
         sname      VARCHAR(30),
         u_id INT,
         CONSTRAINT t_user FOREIGN KEY(u_id) REFERENCES t_user(uid)
); ------授权语句
grant connect ,resource to  user1;  ---授予用户权限
grant connect, resource to user1 with admin option;  //可以传递所获权限。
grant select, update on product to user02 with grant option; 
grant create any table,create procedure to role1;
grant role1 to user1;
grant select on table1 to user1;
grant select any table to user1;
给用户精确赋予权限
GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW ,
   DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,
      DBA,CONNECT,RESOURCE,CREATE SESSION TO 用户名字
----- 回收权限
Revoke connect, resource from user50;
Revoke select, update on product from user02;----插入
insert into newTable select * from oldTable;
insert into Table1(Table1.c1,Table1.c2) select Table2.c1,Table2.c2 from Table2.
----数据库完全导出
exp system/manager@TEST file=d:daochu.dmp full=y
将数据库中system用户与sys用户的表导出
exp system/manager@TEST file=d:daochu.dmp owner=(system,sys)
将数据库中的表inner_notify、notify_staff_relat导出
exp aichannel/aichannel@TESTDB2 file= d:datanewsmgnt.dmp tables=(inner_notify,notify_staff_relat)
将数据库中的表table1中的字段filed1以"00"打头的数据导出
exp system/manager@TEST file=d:daochu.dmp tables=(table1) query="""where filed1 like '00%'"""    ---注意 双引号 不能少。
在上面的命令加上 compress=y 来实现压缩。
imp aichannel/aichannel@HUST full=y file=d:datanewsmgnt.dmp ignore=y
   上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。
   在后面加上 ignore=y 就可以了。
将d:daochu.dmp中的表table1 导入
imp system/manager@TEST file=d:daochu.dmp tables=(table1)
------测试数据库是否可以连接
tnsping  orcl    查看用户表空间使用情况
select 
b.file_id 文件ID号, 
b.tablespace_name 表空间名, 
b.bytes/1024/1024||'M'字节数, 
(b.bytes-sum(nvl(a.bytes,0)))/1024/1024||'M' 已使用, 
sum(nvl(a.bytes,0))/1024/1024||'M' 剩余空间, 
100 - sum(nvl(a.bytes,0))/(b.bytes)*100 占用百分比 
from dba_free_space a,dba_data_files b 
where a.file_id=b.file_id 
group by b.tablespace_name,b.file_id,b.bytes 
order by b.file_id; 查看临时表空间 (dba_temp_files视图)(v_$tempfile视图)
select tablespace_name,file_name,bytes/1024/1024 file_size,autoextensible from dba_temp_files;
select status,enabled, name, bytes/1024/1024 file_size from v$tempfile;--sys用户查看
查看空间地址
select file_name , tablespace_name from dba_data_files;查看表空间是否为自动增长
select tablespace_name,file_name,autoextensible from dba_data_files where tablespace_name = 'USERS';将空间设置为自动增长
alter database datafile '/home/oracle/ts01.dbf' autoextend on next 5m maxsize unlimited;
将临时数据文件设为自动扩展:
alter database tempfile ‘/u01/app/oracle/oradata/orcl/temp01.dbf’ autoextend on next 5m maxsize unlimited;增大临时文件大小:
alter database tempfile ‘/u01/app/oracle/oradata/orcl/temp01.dbf’ resize 100m;
增加文件大小
alter database datafile '\oracle\oradata\anita_2008.dbf' resize 4000m。创建临时表空间  
SQL> create temporary tablespace test1temp   
tempfile '/home/u01/app/oracle/oradata/ytzx/test1temp01.dbf'   
size 10240m   
autoextend on next 1024m  
 maxsize 20480m  
extent management local  ;  创建数据表空间  
create tablespace test1  
logging  
datafile '/home/u01/app/oracle/oradata/ytzx/test1.dbf'  
size 10240M --50-100G  
autoextend on next 2000M   
maxsize unlimited  
extent management local autoallocate   
segment space management auto ;  同一空间新增存储文件
ALTER TABLESPACE  表空间名
ADD DATAFILE '数据文件路径'
SIZE 500M
AUTOEXTEND 
ON  NEXT 1M 
MAXSIZE UNLIMITED;为用户重新指定表空间 (设置为自动增长)
alter user username  default tablespace userspace;

解决方案 »

  1.   

    不错,鼓励一下。ps:有些知识(语法)是mysql的,建议分开写。
      

  2.   

    你确定这是oracle的?我怎么感觉是mysql的?毕竟  oracle你不创建序列能自增长????
      

  3.   

    Thank you for your sharing !
      

  4.   


    我要是不创建序列实现自增长了你又如何? 
    还请大神指教~ 自己写程序,无论是PL/SQL,还是其他语言,Java啊,C啊,我想程序员实现这种东西都是分分钟的事情吧 另外,12c支持自增字段。