oracle对象类型

Today we will learn how to create Oracle Type Object. If you are working on a large project with lots of tables and data, you might have seen the usage of Packages and DB Objects to perform database specific operations.

今天,我们将学习如何创建Oracle类型对象。 如果您正在处理具有大量表和数据的大型项目,则可能已经看到使用数据库对象来执行特定于数据库的操作。

Oracle类型对象 (Oracle Type Object)

Here we will see how to create a database object in Oracle DB.

在这里,我们将看到如何在Oracle DB中创建数据库对象。

CREATE OR REPLACE TYPE "MY_DBA"."EMP_OBJ" AS OBJECT
(empFirstName           VARCHAR2(80),
empLastName         VARCHAR2(80),
empId               NUMBER,
);GRANT EXECUTE on EMP_OBJ to MY_USER;

Notice that you need to be logged in with MY_DBA user to create the object and MY_USER is the application user that I am providing privilege to execute this package.

请注意,您需要以MY_DBA用户身份登录才能创建对象,而MY_USER是我提供执行该程序包特权的应用程序用户。

From Security point of view, it’s always better to have a DBA user for DDL changes and an application specific user that will have only the required privileges to perform the database operations.

从安全性的角度来看,最好是让DBA用户进行DDL更改,而让特定于应用程序的用户仅具有执行数据库操作所需的特权。

If I don’t separate these accesses, then the application user will have full access to the DB Object/Packages and they can drop it also, mistakenly or may be by a hacker.

如果我不分开这些访问权限,那么应用程序用户将具有对数据库对象/软件包的完全访问权限,他们也可能错误地或由黑客将其删除。

翻译自: https://www.journaldev.com/1413/oracle-type-object

oracle对象类型

oracle对象类型_如何创建Oracle类型对象相关推荐

  1. 在 Java 中,为什么需要创建内部类对象之前需要先创建外部类对象

    在 Java 中,为什么需要创建内部类对象之前需要先创建外部类对象   我们知道,在 Java 中,创建一个内部类对象之前,需要它的一个外部类对象.这是因为内部类可能使用外部类的数据.   在内部类中 ...

  2. python判断对象类型_如何查看一个Python对象的类型

    怎么查看一个对象的类型 在Python中有两种类型判断函数,type()和isinstance(). 使用type() 首先,我们来判断对象类型,使用type()函数: 基本类型都可以用type()判 ...

  3. c 结构体 不允许使用不完整的类型_.NET Core 基础类型介绍

    本节内容是对于C#基础类型的存储方式以及C#基础类型的理论介绍 基础数据类型介绍 例如以下这句话:"张三是一名程序员,今年15岁重50.3kg,他的代号是'A',他家的经纬度是(N30,E1 ...

  4. unity创建和销毁对象_如何创建和销毁对象

    unity创建和销毁对象 本文是我们名为" 高级Java "的学院课程的一部分. 本课程旨在帮助您最有效地使用Java. 它讨论了高级主题,包括对象创建,并发,序列化,反射等. 它 ...

  5. python可变类型和不可变深浅拷贝类型_理解python可变类型vs不可变类型,深拷贝vs浅拷贝...

    核心提示: 可变类型 Vs 不可变类型 可变类型(mutable):列表,字典 不可变类型(unmutable):数字,字符串,元组 这里的可变不可变,是指内存中的那块内容(value)是否可以被改变 ...

  6. oracle监听_保存在,oracle 监听 lsnrctl 命令 (推荐)

    oracle 监听 lsnrctl 命令 (推荐) listener control 监听控制 因为你在键入 lsnrctl 回车之后,就进入到监听控制界面. 在启动.关闭或者重启oracle监听器之 ...

  7. golang 获取struct类型_聊聊golang的类型断言

    序 本文主要研究一下golang的类型断言 类型断言 x.(T) 断言x不为nil且x为T类型 如果T不是接口类型,则该断言x为T类型 如果T类接口类型,则该断言x实现了T接口 实例1 func ma ...

  8. oracle ajax储存过程分页,创建 Oracle 分页存储过程

    1.创建Oracle包的定义.使用 REF CURSOR 数据类型来处理 Oracle 结果集.REF CURSOR 是一个指向 PL/SQL 查询所返回的结果集的指针.与普通的游标不同,REF CU ...

  9. java如何创建枚举类型_Java如何创建枚举类型?

    枚举是命名常量的列表.每种最常用的编程语言都支持此功能.但是在Java中,从5.0版开始正式支持它.在Java编程语言中,枚举定义了一个类类型.因为枚举是一个类,所以它可以具有构造函数,方法和实例变量 ...

最新文章

  1. 零开始学python_从零开始学Python
  2. 文件描述符fd、文件指针fp和vfork()
  3. 为什么深度学习几乎成了计算机视觉研究的标配?
  4. PHP浏览器中的data类型的Url格式,data:image/png
  5. 微信小程序学习目录推荐
  6. [转载] Java基础知识面试题(2020最新版)
  7. c++ 智能指针auto_ptr (c++98)、shared_ptr(c++ 11)、unique_ptr(c++ 11)、weak_ptr(c++ 11)
  8. google浏览器安装gliffy 安装方法及插件
  9. MySQL 8 + Navicat for MySQL安装步骤
  10. android l x64,64位 Android L有9大亮点
  11. quora ios_企业家的Quora指南
  12. 计算机网络拓扑结构特点详解
  13. w10桌面计算机图标箭头去除,win10专业版电脑桌面图标箭头快速去掉技巧
  14. 程序猿之国庆有空吗?
  15. 【渝粤题库】广东开放大学 金融经济学 形成性考核
  16. 概率论的学习和整理8: 几何分布
  17. GetLastError函数封装显示具体错误信息
  18. java枚举类型季节实例_Java之枚举类
  19. Vim插件之vim-autoformat
  20. iOS - Xcode提高编译速度,增量编译,ccache

热门文章

  1. 【bzoj5072】[Lydsy十月月赛]小A的树 树形背包dp
  2. JWT—JSON Web Token - 理解JWT网络间应用用户安全认证交互设计
  3. Scrum Meeting---Ten(2015-11-5)
  4. [转载] python中union函数_如何掌握Python union()方法及怎么用?
  5. [转载] numpy用法(logical_and, nonzero,arange, reshape)
  6. [转载] numpy.take()从数组中取指定的行或列
  7. [转载] python自带sqlite库_Python内置库SQlite3使用指南
  8. [转载] Python类属性、类方法和静态方法
  9. JSPs only permit GET POST or HEAD的解决方案(REST风格)
  10. 【BZOJ4660】Crazy Rabbit 结论+DP