oracle

Posted 随情

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle相关的知识,希望对你有一定的参考价值。

SQL 是用于访问和处理数据库的标准的计算机语言。

SQL 面向数据库执行查询
SQL 可从数据库取回数据
SQL 可在数据库中插入新的记录
SQL 可更新数据库中的数据
SQL 可从数据库删除记录
SQL 可创建新数据库
SQL 可在数据库中创建新表
SQL 可在数据库中创建存储过程
SQL 可在数据库中创建视图
SQL 可以设置表、存储过程和视图的权限

DML
SELECT - 从数据库表中获取数据
UPDATE - 更新数据库表中的数据
DELETE - 从数据库表中删除数据
INSERT INTO - 向数据库表中插入数据

DDL
CREATE DATABASE - 创建新数据库
ALTER DATABASE - 修改数据库
CREATE TABLE - 创建新表
ALTER TABLE - 变更(改变)数据库表
DROP TABLE - 删除表
CREATE INDEX - 创建索引(搜索键)
DROP INDEX - 删除索引

如果第一个条件和第二个条件都成立,则 AND 运算符显示一条记录。
如果第一个条件和第二个条件中只要有一个成立,则 OR 运算符显示一条记录。

ORDER BY 语句用于根据指定的列对结果集进行排序。
ORDER BY 语句默认按照升序对记录进行排序。
如果您希望按照降序对记录进行排序,可以使用 DESC 关键字。
ASC 升序 DESC 降序

INSERT INTO Persons (LastName, Address) VALUES (‘Wilson‘, ‘Champs-Elysees‘)
UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值
DELETE FROM 表名称 WHERE 列名称 = 值

sqlserver:
SELECT TOP number|percent column_name(s)
FROM table_name
oracle:
SELECT column_name(s)
FROM table_name
WHERE ROWNUM <= number

 

 

cd /home/kdsj/
解压 一天的日志
unzip hw_20170813.zip
2
执行
/home/kettle/data-integration/pan.sh -file /home/kettle/kettle_res/iptv_import_oracle/iptv_input_single.ktr -param:"IN_MDAY=20170917" -param:"IN_MON=201709"


3
SELECT COUNT(*) FROM iptv_ContentViewlog_201708 WHERE TRUNC(to_date(starttime,‘yyyy-mm-dd hh24:mi:ss‘))=to_date(‘20170803‘,‘yyyymmdd‘);
SELECT COUNT(*) FROM iptv_Orderlog WHERE TRUNC(to_date(validtime,‘yyyymmddhh24miss‘))=to_date(‘20170803‘,‘yyyymmdd‘);
SELECT COUNT(*) FROM iptv_Schedule WHERE TRUNC(to_date(starttime,‘yyyymmddhh24miss‘))=to_date(‘20170803‘,‘yyyymmdd‘);
SELECT COUNT(*) FROM iptv_Userinfo WHERE TRUNC(to_date(datecreated,‘yyyymmddhh24miss‘))=to_date(‘20170803‘,‘yyyymmdd‘);


4 删除当前目录下的入库文件 /home/kdsj/
rm -rf *.log
rm zte_20170917.zip


zte_20170901

rm hw_20170802.zip
rm hw_20170803.zip
rm hw_20170804.zip
rm hw_20170805.zip

 

 

 

 

--查看数据库的版本select * from v$version;SELECT * FROM product_component_version;SELECT VERSION FROM product_component_versionWHERE SUBSTR(product ,1,6)=‘Oracle‘;


--查看表空间的名称及大小
SELECT * FROM dba_tablespaces;
SELECT * FROM dba_data_files;
select t.tablespace_name, round(sum(bytes / (1024 * 1024)), 0) ts_size
from dba_tablespaces t, dba_data_files d
where t.tablespace_name = d.tablespace_name
group by t.tablespace_name;


--查看数据库对象SELECT * FROM all_objects;SELECT owner,object_type,status,COUNT(*) COUNT#FROM all_objectsGROUP BY owner,object_type,status;
--查看控制文件SELECT * FROM v$controlfile;SELECT NAME FROM v$controlfile;

--查看日志文件SELECT * FROM v$logfile;SELECT MEMBER FROM v$logfile;

--查看表空间使用的情况SELECT * FROM dba_free_space;SELECT * FROM dba_data_files;
select a.TABLESPACE_NAME "表空间名",
total "表空间大小",
free "表空间剩余大小",
(total - free) "表空间使用大小",
total / (1024*1024*1024) "表空间大小(G)",
free / (1024*1024*1024) "表空间剩余大小(G)",
(total - free) / (1024*1024*1024) "表空间使用大小(G)",
round((total - free) / total , 4 ) *100"使用率%"
from (select tablespace_name,sum(bytes) free
from dba_free_space
group by tablespace_name) a,
(select tablespace_name,sum(bytes) total
from dba_data_files
group by tablespace_name) b
where a.TABLESPACE_NAME = b.tablespace_name;


--Oracle递归查询
select * form start with name=‘系统‘ connect by prior t.parentid= id

 

 

 

 

--查看表空间物理文件的名称及大小
SELECT * FROM dba_data_files;

select tablespace_name,
file_id,
file_name,
round(bytes / (1024 * 1024), 0) total_space
from dba_data_files
order by tablespace_name;


--查看表空间是否具有自动扩展能力SELECT * FROM DBA_TABLESPACES;SELECT * FROM DBA_DATA_FILES;SELECT T.TABLESPACE_NAME,D.FILE_NAME,D.AUTOEXTENSIBLE,D.BYTES,D.MAXBYTES,D.STATUSFROM DBA_TABLESPACES T, DBA_DATA_FILES DWHERE T.TABLESPACE_NAME = D.TABLESPACE_NAMEORDER BY TABLESPACE_NAME, FILE_NAME;

 

 

 

 

锁表查询
select p.spid, a.serial#, c.object_name, b.session_id, b.oracle_username, b.os_user_name from v$process p, v$session a, v$locked_object b, all_objects c where p.addr = a.paddr and a.process = b.process and c.object_id = b.object_id;

 

 

Oracle 11g之前的版本默认profile是没有密码过期的限制的,
在Oracle 11g中默认的profile启用了密码过期时间是180天,
查询默认的profile的密码过期的设置
select * from dba_profiles
where profile=‘DEFAULT‘ and resource_name=‘PASSWORD_LIFE_TIME‘;

设置default profile密码永不过期,立即生效,不需重启
alter profile default limit password_life_time unlimited;

已经过期的密码就需要改了,可以该成一样
可以sqlplus 登录会提示你改密码
也可以alter user username identified by password;

 

 

 

 

 

--查看数据库对象
SELECT * FROM all_objects;

SELECT owner,object_type,status,COUNT(*) COUNT#
FROM all_objects
GROUP BY owner,object_type,status;

--查看数据库的版本
select * from v$version;
SELECT * FROM product_component_version;
SELECT VERSION FROM product_component_version
WHERE SUBSTR(product ,1,6)=‘Oracle‘;


--

select t.tablespace_name, round(sum(bytes / (1024 * 1024)), 0) ts_size
from dba_tablespaces t, dba_data_files d
where t.tablespace_name = d.tablespace_name
group by t.tablespace_name

 












































































































以上是关于oracle的主要内容,如果未能解决你的问题,请参考以下文章

OracleOracle中使用转义字符

OracleOracle中的常用操作

OracleOracle的内外连接

oracleoracle的基础入门

OracleOracle版本导入导出问题

OracleOracle索引