热门搜索 :
考研考公
您的当前位置:首页正文

oracle 操作积累

2023-11-11 来源:东饰资讯网

--cmd导入导出数据库bmp文件 

1.执行查询结果中的语句( select ‘alter table ‘||table_name||‘ allocate extent;‘ from user_tables where num_rows=0 )

   2.然后再执行 cmd  ==》 导入:imp admin/123456@luxisrmdb file=E:DBsrm.dmp ignore=y full=y

            导出: exp 用户名/密码@数据库名 file=D:dmpexp_sms20110224.dmp log=D:dmpexp_smsrun.log 

参考:http://www.cnblogs.com/Jingkunliu/p/3298597.html

--创建表空间1.create tablespace luxisrm datafile ‘E:DBOrcleTbSpeceLuXiSrm.ora‘ size 100m

2.二、通过PL/SQL Developer工具创建表空间

通过pl/sql登录到Oracle数据库上,然后执行菜单:文件/新建/命令窗口 ,打开一个命令窗口然后在该命令窗口中执行脚本创建和删除表空间

create tablespace TestDBdatafile ‘D:oracleAdministratororadataorclTestDB.dbf‘ size 10Mautoextend on next 1M maxsize unlimited loggingextent management local autoallocatesegment space management auto;解释:

1) DATAFILE: 表空间数据文件存放路径

2) SIZE: 起初设置为10M

3) UNIFORM: 指定区尺寸为128k,如不指定,区尺寸默认为64k

4) 空间名称TestDB与 数据文件名称 TestDB.dbf 不要求相同,可随意命名.

5) AUTOEXTEND ON/OFF表示启动/停止自动扩展表空间

6) ALTER DATABSAE DATAFILE ‘D:oracleAdministratororadataorclTestDB.dbf ‘ resize 5M; //手动修改数据文件大小为5M

7) DROP TABLESPACE MOF_TEMP INCLUDING CONTENTS AND DATAFILES; //删除表空间

 

 

--删除表空间alter tablespace luxisrm offline;drop tablespace luxisrm including contents and datafiles;

-- 快速删除所有表数据http://www.cnblogs.com/chinhr/archive/2011/11/14/2248221.html

-- 表空间不足处理select b.file_name 物理文件名, b.tablespace_name 表空间, b.bytes / 1024 / 1024 大小M, (b.bytes - sum(nvl(a.bytes, 0))) / 1024 / 1024 已使用M, substr((b.bytes - sum(nvl(a.bytes, 0))) / (b.bytes) * 100, 1, 5) 利用率 from dba_free_space a, dba_data_files b where a.file_id = b.file_id group by b.tablespace_name, b.file_name, b.bytes order by b.tablespace_name;

--更改表空间大小SQL: alter tablespace srm add datafile ‘D:ORACLEORADATAORCLSYSTEM01.DBF‘ size 1000m; --可用 alter database datafile ‘E:DBOrcleTbSpeceSRM.ORA‘ resize 500M;

--- --查看连接数 select count(*) from v$process --查看充许链接数 select value from v$parameter where name=‘processes‘ --查看最大并发数 select * from v$license

--锁表查询SQLSELECT object_name, machine, s.sid, s.serial# FROM gv$locked_object l, dba_objects o, gv$session s WHERE l.object_id = o.object_id AND l.session_id = s.sid;

--释放SESSION SQL: --alter system kill session ‘sid, serial#‘; ALTER system kill session ‘23, 31054‘;

 

----------修改表空间

alter table spaceOne.tablename move tablespace spaceTwo;

--1.修改表的空间alter table a123 move tablespace BEIWEISRMTESTSPACES

--查询当前用户下的所有表select ‘alter table ‘|| table_name ||‘ move tablespace tablespacename;‘ from user_tables;

--2.修改表的索引的空间alter index SYS_C0046485 rebuild tablespace BEIWEISRMTESTSPACES

--查询当前用户下的所有索引select ‘alter index ‘|| index_name ||‘ rebuild tablespace tablespacename;‘ from user_indexes;

 

oracle 操作积累

标签:strong   offline   spec   建表   hive   developer   扩展   www   登录   

小编还为您整理了以下内容,可能对您也有帮助:

oracle 数据库中 某一组数据在原来的基础增加百分之二十 该怎么写

UPDATE 表名 SET 字段名 = 字段名 * 1.2 WHERE 条件(假设有)

oracle 如何取表中所有数据的20%

select t.*,t.rid from (select * ,rownum as rid from table) t

where rid<= (select round(count(*)*0.2) as count from table);

oracle 11g错误代码20怎么解决

在$ORACLE_HOME/NETWORK/ADMIN目录下,存放着*的配置文件,其中,那个叫做SAMPLE的文件夹是*配置的举例,虽然是英文,但花点时间的话还是能基本看懂的。回到正题,SAMPLE文件夹旁边还有两个扩展名为.ora的文件,可以用记事本之类的软件打开。里面存放着*的各种配置。
回到这个故障的话题,网上看到一个方法,说是主机名可能设置的不对,就是那两个.ora文件中的HOST选项,于是查看了一下详细情况:
listener.ora文件中HOST的值为180.111.140.106,看上去是个*地址;
tnsnames.ora文件中的HOST值为localhost,很显然是本机地址;
既然这两个HOST值不一样,那估计问题就出在这了,因为要连接的是本机上的数据库,所以就把两个HOST的值都改成127.0.0.1,然后找到Windows服务中的OracleDb11g_homeTNSListener这条,先停止它,然后再启动。如下图:


然后回到SQL Developer,重新连接数据库,OK~

oracle 11g错误代码20怎么解决

在$ORACLE_HOME/NETWORK/ADMIN目录下,存放着*的配置文件,其中,那个叫做SAMPLE的文件夹是*配置的举例,虽然是英文,但花点时间的话还是能基本看懂的。回到正题,SAMPLE文件夹旁边还有两个扩展名为.ora的文件,可以用记事本之类的软件打开。里面存放着*的各种配置。
回到这个故障的话题,网上看到一个方法,说是主机名可能设置的不对,就是那两个.ora文件中的HOST选项,于是查看了一下详细情况:
listener.ora文件中HOST的值为180.111.140.106,看上去是个*地址;
tnsnames.ora文件中的HOST值为localhost,很显然是本机地址;
既然这两个HOST值不一样,那估计问题就出在这了,因为要连接的是本机上的数据库,所以就把两个HOST的值都改成127.0.0.1,然后找到Windows服务中的OracleDb11g_homeTNSListener这条,先停止它,然后再启动。如下图:


然后回到SQL Developer,重新连接数据库,OK~

Oracle数据库中建表带比如20%的字段为什么类型

如果要存20%,则只能是字符串了。

一般是存数字,比如是0.2,或是20,都可以,然后通过编程实现显示成20%。一般存0.2比较多。这样和其他数字进行计算的时候,也好计算。只是在客户端显示的时候,要处理一下。

怎么使用oracle语句查找一张表中在平均值上下20%范围内的数据拿出来?

一条语句太长了,写两条吧!

select avg([字段]) from [表名]

先求出平均值,然后算出来*1.2,*0.8

第二条语句select * from [表名] where ([字段]<1.2*平均值 and [字段]>0.8*平均值)

Top