select t.table_name,t.num_rows from user_tables t select sum(num_rows) from user_tables t…
--测试环境,20远端,30本地: --准备1,20远端建立表的同义词,用户信息: 1.11 ---------------------------------------------------准备阶段,有表有用户可以忽略此步骤------------------------------------------------------------------- SQL> conn yang/y ERROR: ORA-01017: invalid username/password; logon…
一.禁止所有的外键约束 在pl/sql developer下执行如下语句:SELECT 'ALTER TABLE ' || table_name || ' disable CONSTRAINT ' || constraint_name || ';' FROM user_constraints where CONSTRAINT_TYPE = 'R';把查询出来的结果拷出来在pl/sql developer时执行. 先看看user_constraints是什么 user_constraints是表约…
①EMP(雇员表): ②DEPT(部门表): ③BONUS(奖金表): ④SALGRADE(工资等级表):…
-- 大概 这个样子,如果没有 FK 的话,一下子就都删掉了. begin for x in (select table_name from user_tables) loop execute immediate 'delete ' || x.table_name ;  end loop ;  end ;…
SQL> select count(*) from employees; COUNT(*) ---------- Execution Plan ---------------------------------------------------------- ------------------------------------------------------------------------- | Id | Operation | Name | Rows | Cost (%CPU)|…
SQL; SAL ---------- Execution Plan ---------------------------------------------------------- -------------------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | --------…
oracle查询当前用户下所有的表,包括所有的字段 背景: ​ 前两天接到一个需求,做一个展示所有表名,表备注,表数据,表字段数,点击查看按钮查看字段名和注释,支持导出. 在Oracle中,可用使用视图USER_TABLES查看当前用户有哪些表,都有多少数据: table_name:表名,field_num:表字段数,comments:表注释,count_rows(table_name):统计表数据 SELECT * FROM USER_TABLES; USER_TAB_COLUMNS:表中的所…
TESTUSERB 仅能对TESTUSERA 用户下的某些表增删改查.有些表仅能对某些列update,查询TESTUSERB 用户权限,获取批量赋予语句. select 'grant '|| PRIVILEGE ||' to TESTUSERB;' from dba_sys_privs where GRANTEE='TESTUSERB' ;select 'grant '|| PRIVILEGE ||' on TESTUSERA.'||TABLE_NAME||' to TESTUSERB;' fr…
转载自:http://blog.itpub.net/29485627/viewspace-1246317/ Oracle查询当前用户和当前用户下的所有表 (1)查询当前用户 SQL> show user USER is "SCOTT" (2)查询当前用户下的所有表,有三种方法 第一种: SQL> select table_name from tabs; TABLE_NAME --------------------------------------------------…
1.执行Sql语句: select 'drop table '||table_name||';' from cat where table_type='TABLE' 可查询到当前用户下所有的表,如图: 2.执行这些删除语句…
需要创建这些删除语句,通过oracle的数据字典找到该用户下的所有表.视图等对象,拼接成语句.如下select 'drop table '||table_name|| ' cascade constraints;'from user_tablesselect 'drop table ' || table_name ||';'||chr(13)||chr(10) from user_tables; --delete tablesselect 'drop view ' || view_name||'…
查看Oracle当前用户下的信息(用户,表视图,索引,表空间,同义词,存储过程函数,约束条件) 0.表空间 SQL>select username,default_tablespace from user_users; 查看当前用户的角色 SQL>select * from user_role_privs; 查看当前用户的系统权限和表级权限 SQL>select * from user_sys_privs; SQL>select * from user_tab_privs; 查看用…
一. 问题: 如何实现在Oracle数据库中访问其他用户的表时不需加表所属的用户名 二. 举例: Oracle里面的用户A,要访问用户B的表需要带用户B的前缀,如访问用户B的 TEST表,需要这样访问 select * from B.TEST;现在就是问如何才能无需添加用户名的前缀. 三. 原因: 方便访问常用表 隐藏表的用户 四. 解决方案: 1. 创建同义词(最好的方式) 语法: CREATE [PUBLIC] SYNONYM synonym_name FOR [schema.] objec…
上一文章 oracle11g数据库--创建表空间,创建用户,用户授权并指定表空间.我们已经建好了指定的新用户pdmis. 接下来我们需要将备份好的数据库,还原至新用户pdmis下. 想要还原,我们需要将备份好的dmp文件.拷贝至目标服务器下(此处为D:\oraclebf\PDMIS\PDMIS.DMP) 出现上面问题是因为要传的文件太大造成的,我可以将本分文件通过压缩文件压缩后再传压缩文件(5.15g的备份文件被压缩为515m) 传到目标服务器后,再进行文件解压缩.保存至对应的路径下(此处为D:…
如果oracle服务器中装有多个数据库实例,则在用户名处输入:用户名/密码@数据库名称.如果数据库服务器不在本机上,还需要加上数据库服务器的地址:用户名/密码@IP地址/数据库名称. [oracle@node130 ~]$ sqlplus scott/123456@192.168.8.145/prod SQL*Plus: Release 11.2.0.3.0 Production on Thu Apr 13 19:49:57 2017 Copyright (c) 1982, 2011, Orac…
1:如果要导入的用户下有空表,需要执行下面语句 select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0 查询出的数据拷出来,再次执行 2:cmd进入命令,导出   导出用户所有的表到D盘:exp aa/1234 file=D:\biao.dmp owner=aa;       导出用户aa中的表dept到D盘:exp aa/1234 file=d:\dept.dmp tabl…
一开始在所数据库表导入,导出的时候,经常发现含有BLOB等大数据类型文件无法简单正常的导入导出(imp/dmp),然后在网上得知oracle 10以后有了(impdp/dmpdp)命令,数据导入导出的速度是(imp/dmp)命令的10倍以上,所以来学习总结一下impdp/dmpdp命令. 一.背景环境: 希望导出数据库表所在用户/密码:mhweixin/mhweixin; 希望导入数据库表所在用户/密码:zbtj/zbtj; 二.步骤: 1.建立导出文件所在目录:dir为directory 的名…
根据需求的不同,也分为好几种方法,且看下文. 先构造基本的环境:创建两个用户AA,BB,基本需求为用户AA能够访问用户BB下所有的表,即用户AA有对BB下所有的表有"select on"权限. SYS@zkm> create user aa identified by oracle account unlock; User created. SYS@zkm> create user bb identified by oracle account unlock; User c…
环境:Solaris 10 + Oracle 10.2.0.4 1.导出实例 2.参考内容 Reference 1.导出实例 导出sys用户下的HIST_HEAD$和WRI$_OPTSTAT_HISTHEAD_HISTORY两张表: 由于expdp尝试导出失败,改用传统exp导出,导出命令如下: % nohup exp system/****** file=/tmp/jy/system_exp_2tables.dmp log=/tmp/jy/exp_system_exp_2tables.log…
互联网应用会频繁加功能,修改需求.那么表结构也会经常修改,加字段,加索引.在线直接在生产环境的表中修改表结构,对用户使用网站是有影响. 以前我一直为这个问题头痛.当然那个时候不需要我来考虑,虽然我们没专门的dba,他们数据量比我们更大,那这种问题也会存在.所以我很想看看业界是怎么做的,我想寻找有没有更高级的方案,呵呵,让我觉得每次开发一个新功能,我在线加字段都比较纠结.后来只知道,不清楚在什么时候,无意中看到一个资料介绍online-schema-change这个工具,于是顺便搜出了不少东西.后…
方法一:SELECT * FROM FTCE_ACCS.INFORMATION_SCHEMA.TABLES Where TABLE_TYPE='BASE TABLE'------------------------------------------------------------------------------------------------------方法二:SELECT Name FROM sysobjects WHERE TYPE='U'…
select table_name from all_tables where owner_name=upper('scott'); 用户名一定要大写//…
select table_name from user_tables;…
一般的方法:先使用sql查询: SELECT 'DELETE FROM '|| table_name || ';' FROM USER_TABLES ORDER BY TABLE_NAME; 将查询结果复制一下,在sql命令窗口里再执行一次就删除了所有的表. 还有一种更全面的删除:和上一中类似,先使用sql查询: select 'drop table '||table_name||';' from cat where table_type='TABLE' ORDER BY TABLE_NAME;…
1.如果有删除用户的权限,则可以: drop user user_name cascade; 加了cascade就可以把用户连带的数据全部删掉. 删除后再创建该用户. --创建管理员用户 create user 用户名 identified by 密码 default tablespace space_data(表空间名称) temporary tablespace space_temp(临时表空间名称); --授权 grant connect,dba to 用户名; 2.如果没有删除用户的权限…
查询含clob,blob的表select distinct ('TABLE "' || a.OWNER || '"."' || a.TABLE_NAME || '"') from sys.all_tab_columns a where a.OWNER = 'EHL_TOS'--用户名 and a.TABLE_NAME in (select t.TABLE_NAME from sys.all_tab_columns t where t.OWNER = 'EHL_TOS…
打开sql developer,输入如下语句,把USERNAME替换为需要删除的的用户名 然后把查询出来的结果复制出来执行一遍就行了. SELECT 'DROP table '||table_name||';' FROM all_tables WHERE owner='USERNAME';…
1.查询包含某字段的所有表 select object_name(id) objName,Name as colName from syscolumns where (name like'%你要查询的字段名%') and id in(select id from sysobjects where xtype='u') order by objname ; 2.查询包含某字段的所有存储过程 SELECT obj.Name 存储过程名, sc.TEXT 存储过程内容 FROM syscomments…
脚本如下: [oracle@ycr python]$ more t_del.py #/usr/bin/python#coding:utf8 import sysimport cx_Oracle i=0conn=cx_Oracle.connect('%s/%s@%s' % (sys.argv[1],sys.argv[2],sys.argv[3]))cursor=conn.cursor()cursor.execute('select table_name from user_tables')rows…