数据库实用技术全面教程及PPT分享

需积分: 5 0 下载量 55 浏览量 更新于2024-11-17 收藏 2.83MB ZIP 举报
资源摘要信息:"数据库实用技术上课PPT.zip" 该压缩包包含了多份关于数据库实用技术的教学PPT文件,涵盖了数据库系统的多个核心知识点。以下是各文件的具体知识点详细说明: 1. 数据库系统概论.ppt 在这份PPT中,首先介绍了数据库系统的概念、特点以及组成结构,包括数据库、数据库管理系统(DBMS)、数据库管理员(DBA)和用户等关键元素。随后可能会展开介绍数据库系统的分类,如关系型数据库、非关系型数据库等,并且对数据库系统的发展历史、发展动因和应用场景进行阐述。此外,还可能涉及到数据库系统的设计原则、数据库系统的技术趋势等内容。 2. SQLServer2008系统基础.ppt 这份PPT会介绍SQL Server 2008的基础知识。内容可能包括SQL Server 2008的安装与配置、基本的数据库结构如表、视图、索引等,以及SQL Server的管理工具,例如SQL Server Management Studio(SSMS)。还会讲解SQL Server的核心组件和服务,数据类型、数据操作语言(DML)、数据定义语言(DDL)和数据控制语言(DCL)等SQL基础语法。 3. 表的管理.ppt 在这部分,将探讨如何管理数据库中的表结构。涉及主题可能包括创建表、修改表结构(如添加、删除字段)、重命名表、以及删除表等操作。此外,还可能包括对表数据进行查询、更新、插入和删除(CRUD)操作的方法,以及如何通过SQL语句管理表之间的关系,例如外键约束。 4. 数据库的管理.ppt 这部分可能讲解了数据库的日常管理任务,包括但不限于数据库的备份、恢复、性能监控、故障诊断和优化。同时,还可能涉及事务管理,包括事务的ACID属性(原子性、一致性、隔离性、持久性)以及如何通过锁机制来保证事务的完整性。 5. 数据查询.ppt 在这份PPT中,重点是介绍如何使用SQL进行数据查询,包括基本的SELECT语句和一些高级查询技术,如联结查询(JOIN)、子查询、聚合函数、分组和排序等。也会介绍如何使用WHERE子句进行条件查询,以及利用GROUP BY和HAVING子句对查询结果进行分组和过滤。 6. T-SQL程序设计.ppt T-SQL是SQL Server使用的专有SQL语言。这份PPT可能详细介绍了T-SQL语言的语法和特性,包括变量声明、运算符、控制流语句(IF、ELSE、WHILE、CASE等)、错误处理(TRY...CATCH)、游标以及存储过程和函数的定义和使用。 7. 存储过程与触发器.ppt 在这一部分,将深入探讨存储过程和触发器的概念和用途。存储过程是一种为了实现特定功能而封装的SQL语句集合,可以通过给定的参数来执行。触发器则是数据库中自动执行的存储过程,与表上的数据操作(如INSERT、UPDATE、DELETE)相关联。PPT中可能包含创建和管理存储过程与触发器的方法,以及如何在实际应用中高效使用它们。 8. 数据完整性.ppt 这部分内容涉及保证数据库数据准确性和一致性的各种技术。介绍数据完整性约束(如主键约束、唯一约束、检查约束、非空约束)的定义和应用,以及如何通过触发器和约束来维护数据的完整性。 9. 数据库的安全管理.ppt 在这一PPT中,将讨论数据库的安全性问题,包括用户认证和授权、角色管理、权限的分配和收回、审计与监控等。内容可能还会涉及到数据加密技术和数据库在不同安全威胁下的防护措施,如防止SQL注入、跨站脚本攻击等。 10. 数据库的备份与还原.ppt 最后一份PPT将详细讲述数据库备份与还原的概念、策略、方法和最佳实践。内容可能包括全备份、差异备份、日志备份以及它们之间的区别和适用场景。同时,还会介绍如何恢复备份,包括对不同备份类型的恢复步骤和可能遇到的问题解决方法。 通过这些PPT文件,学生和数据库管理员可以全面学习和掌握数据库系统的基本原理和实践技能,为数据库管理、设计和开发打下坚实的基础。

SELECT PIS.SHOW_FLT_DETAIL AS SHOW_FLT_DETAIL -- new , PIS.SHOW_AWB_DETAIL AS SHOW_AWB_DETAIL -- new , PIS.DISPLAY_AIRLINE_CODE AS CARRIER_CODE , DECODE(PIS.REVERT_FLOW,'N',PIS.FLOW_TYPE,DECODE(PIS.FLOW_TYPE,'I','E','I')) AS FLOW_TYPE , PIS.SHIP_TO_LOCATION AS SHIP_TO_LOCATION , PIS.INVOICE_SEQUENCE AS INVOICE_SEQUENCE , PFT.FLIGHT_DATE AS FLIGHT_DATE , PFT.FLIGHT_CARRIER_CODE AS FLIGHT_CARRIER_CODE , PFT.FLIGHT_SERIAL_NUMBER AS FLIGHT_SERIAL_NUMBER , PFT.FLOW_TYPE AS AIRCRAFT_FLOW , FAST.AIRCRAFT_SERVICE_TYPE AS AIRCRAFT_SERVICE_TYPE , PPT.AWB_NUMBER AS AWB_NUMBER , PPT.WEIGHT AS WEIGHT , PPT.CARGO_HANDLING_OPERATOR AS CARGO_HANDLING_OPERATOR , PPT.SHIPMENT_PACKING_TYPE AS SHIPMENT_PACKING_TYPE , PPT.SHIPMENT_FLOW_TYPE AS SHIPMENT_FLOW_TYPE , PPT.SHIPMENT_BUILD_TYPE AS SHIPMENT_BUILD_TYPE , PPT.SHIPMENT_CARGO_TYPE AS SHIPMENT_CARGO_TYPE , PPT.REVENUE_TYPE AS REVENUE_TYPE , PFT.JV_FLIGHT_CARRIER_CODE AS JV_FLIGHT_CARRIER_CODE , PPT.PORT_TONNAGE_UID AS PORT_TONNAGE_UID , PPT.AWB_UID AS AWB_UID , PIS.INVOICE_SEPARATION_UID AS INVOICE_SEPARATION_UID , PFT.FLIGHT_TONNAGE_UID AS FLIGHT_TONNAGE_UID FROM PN_FLT_TONNAGES PFT , FZ_AIRLINES FA , PN_TONNAGE_FLT_PORTS PTFP , PN_PORT_TONNAGES PPT , FF_AIRCRAFT_SERVICE_TYPES FAST , SR_PN_INVOICE_SEPARATIONS PIS --new , SR_PN_INVOICE_SEP_DETAILS PISD--new , SR_PN_INV_SEP_PORT_TONNAGES PISPT --new WHERE PFT.FLIGHT_OPERATION_DATE >= trunc( CASE :rundate WHEN TO_DATE('01/01/1900', 'DD/MM/YYYY') THEN ADD_MONTHS(SYSDATE,-1) ELSE ADD_MONTHS(:rundate,-1) END, 'MON') AND PFT.FLIGHT_OPERATION_DATE < trunc( CASE :rundate WHEN TO_DATE('01/01/1900', 'DD/MM/YYYY') THEN TRUNC(SYSDATE) ELSE TRUNC(:rundate) END, 'MON') AND PFT.TYPE IN ('C', 'F') AND PFT.RECORD_TYPE = 'M' AND (PFT.TERMINAL_OPERATOR NOT IN ('X', 'A') OR (PFT.TERMINAL_OPERATOR <> 'X' AND FA.CARRIER_CODE IN (SELECT * FROM SPECIAL_HANDLING_AIRLINE) AND PPT.REVENUE_TYPE IN (SELECT * FROM SPECIAL_REVENUE_TYPE) AND PPT.SHIPMENT_FLOW_TYPE IN (SELECT * FROM SPECIAL_SHIPMENT_FLOW_TYPE) AND PFT.FLIGHT_OPERATION_DATE >= (select EFF_DATE from SPECIAL_HANDLING_EFF_DATE) )) AND PFT.DELETING_DATETIME IS NULL AND FA.AIRLINE_UID = PFT.AIRLINE_UID AND FA.DELETING_DATETIME IS NULL AND PTFP.FLIGHT_TONNAGE_UID = PFT.FLIGHT_TONNAGE_UID AND PTFP.RECORD_TYPE = 'M' AND PTFP.DELETING_DATETIME IS NULL AND PPT.TONNAGE_FLIGHT_PORT_UID (+)= PTFP.TONNAGE_FLIGHT_PORT_UID AND PPT.RECORD_TYPE (+)= 'M' AND PPT.DISCREPANCY_TYPE (+)= 'NONE' AND PPT.ADJUSTMENT_INC_FLAG (+)= 'Y' AND PPT.DELETING_DATETIME (+) IS NULL AND FAST.AIRCRAFT_SERVICE_TYPE_UID = PFT.AIRCRAFT_SERVICE_TYPE_UID AND FAST.DELETING_DATETIME IS NULL AND PIS.TEMPORAL_NAME = TO_CHAR((CASE :rundate --new WHEN TO_DATE('01/01/1900', 'DD/MM/YYYY') THEN TRUNC(SYSDATE) ELSE TRUNC(:rundate) END ), 'YYYYMM') || '00' AND PIS.INVOICE_SEPARATION_UID = PISD.INVOICE_SEPARATION_UID --new AND PISD.INVOICE_SEP_DETAIL_UID = PISPT.INVOICE_SEP_DETAIL_UID --new AND PISPT.PORT_TONNAGE_UID = PPT.PORT_TONNAGE_UID --new AND PIS.PRINT_SUPPORTING_DOC = 'Y';上面是oracle的写法,请转成spark SQL的写法。

2023-06-02 上传