位置: 编程技术 - 正文

PostgreSQL教程(二):模式Schema详解

编辑:rootadmin

推荐整理分享PostgreSQL教程(二):模式Schema详解,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

一个数据库包含一个或多个命名的模式,模式又包含表。模式还包含其它命名的对象,包括数据类型、函数,以及操作符。同一个对象名可以在不同的模式里使用而不会导致冲突; 比如,schema1和myschema都可以包含叫做mytable的表。和数据库不同,模式不是严格分离的:一个用户可以访问他所连接的数据库中的任意模式中的对象,只要他有权限。

我们需要模式有以下几个主要原因:

PostgreSQL教程(二):模式Schema详解

1). 允许多个用户使用一个数据库而不会干扰其它用户。 2). 把数据库对象组织成逻辑组,让它们更便于管理。 3). 第三方的应用可以放在不同的模式中,这样它们就不会和其它对象的名字冲突。 1. 创建模式: 通过以上命令可以创建名字为myschema的模式,在该模式被创建后,其便可拥有自己的一组逻辑对象,如表、视图和函数等。 2. public模式:

在介绍后面的内容之前,这里我们需要先解释一下public模式。每当我们创建一个新的数据库时,PostgreSQL都会为我们自动创建该模式。当登录到该数据库时,如果没有特殊的指定,我们将以该模式(public)的形式操作各种数据对象,如: 3. 权限: 缺省时,用户看不到模式中不属于他们所有的对象。为了让他们看得见,模式的所有者需要在模式上赋予USAGE权限。为了让用户使用模式中的对象,我们可能需要赋予额外的权限,只要是适合该对象的。PostgreSQL根据不同的对象提供了不同的权限类型,如: 上面的ALL关键字将包含CREATE和USAGE两种权限。如果public模式拥有了myschema模式的CREATE权限,那么登录到该模式的用户将可以在myschema模式中创建任意对象,如: 在为模式下的所有表赋予权限时,需要将权限拆分为各种不同的表操作,如: 在为模式下的所有Sequence序列对象赋予权限时,需要将权限拆分为各种不同的Sequence操作,如: 在为模式下的所有函数赋予权限时,仅考虑执行权限,如: 可以看出,通过以上方式在public模式下为myschema模式创建各种对象是极为不方便的。下面我们将要介绍另外一种方式,即通过role对象,直接登录并关联到myschema对象,之后便可以在myschema模式下直接创建各种所需的对象了。 在Linux Shell下,以myschema的角色登录到数据库MyTest,在密码输入正确后将成功登录到该数据库。 4. 删除模式: 如果要删除模式及其所有对象,请使用级联删除: 5. 模式搜索路径:

我们在使用一个数据库对象时可以使用它的全称来定位对象,然而这样做往往也是非常繁琐的,每次都不得不键入owner_name.object_name。PostgreSQL中提供了模式搜索路径,这有些类似于Linux中的$PATH环境变量,当我们执行一个Shell命令时,只有该命令位于$PATH的目录列表中,我们才可以通过命令名直接执行,否则就需要输入它的全路径名。PostgreSQL同样也通过查找一个搜索路径来判断一个表究竟是哪个表,这个路径是一个需要查找的模式列表。在搜索路径里找到的第一个表将被当作选定的表。如果在搜索路径中 没有匹配表,那么就报告一个错误,即使匹配表的名字在数据库其它的模式中存在也如此。 在搜索路径中的第一个模式叫做当前模式。除了是搜索的第一个模式之外,它还是在CREATE TABLE没有声明模式名的时候,新建表所属于的模式。要显示当前搜索路径,使用下面的命令: 可以将新模式加入到搜索路径中,如: 为搜索路径设置指定的模式,如:

PostgreSQL教程(四):数据类型详解 一、数值类型:下面是PostgreSQL所支持的数值类型的列表和简单说明:1.整数类型:类型smallint、integer和bigint存储各种范围的全部是数字的数,也就是没

PostgreSQL教程(五):函数和操作符详解(1) 一、逻辑操作符:常用的逻辑操作符有:AND、OR和NOT。其语义与其它编程语言中的逻辑操作符完全相同。二、比较操作符:下面是PostgreSQL中提供的比较

PostgreSQL教程(六):函数和操作符详解(2) 六、模式匹配:PostgreSQL中提供了三种实现模式匹配的方法:SQLLIKE操作符,更近一些的SIMILARTO操作符,和POSIX-风格正则表达式。1.LIKE:stringLIKEpattern[ESCAPE

标签: PostgreSQL教程(二):模式Schema详解

本文链接地址:https://www.jiuchutong.com/biancheng/312239.html 转载请保留说明!

上一篇:PostgreSQL教程(三):表的继承和分区表详解

下一篇:DB2中REVERSE函数的实现方法(db2replace函数用法)

  • 礼品进项怎么做进项转出
  • 主营业务收入科目按其所反映的经济内容不同
  • 生产车间的办公用品费计入
  • 出口报关金额要考虑银行手续费吗
  • 自然人股权转让涉税信息怎么填
  • 个人开具工程款发票所得税怎么算
  • 处理固定资产需要交企业所得税吗
  • 小规模纳税人金额
  • 上报汇总是什么时候
  • 小规模纳税人免征增值税怎么记账
  • 消耗性生物资产的账务处理
  • 小规模纳税人核定征收标准
  • 公司资金周转困难怎么办
  • u盘中装系统
  • 余款退回会计分录
  • 企业存款利息收入要交哪些税
  • php中url什么意思
  • 定额备用金制度
  • thinkphp5 分页
  • 矿业财务好做吗
  • 第三方代付如何开票
  • html导航栏边框
  • ps如何打圈内环形文字怎么调间距
  • 商品流通的企业
  • 广告系统源码
  • 应付票据核算的内容
  • 应付职工薪酬包括哪些二级科目
  • 增值税在纳税申报表中怎么得出
  • 折扣店商场
  • 出口货物不予免、抵和退税为什么是按外销离岸价计算
  • 企业之间借款有利息要开票吗
  • 关于sqlserver2000中的sql账号,角色
  • 差旅费包括内容
  • 物业代收代缴是什么意思
  • 企业与债权人进行债务重组
  • 借款人和还款人不一致,收据打给谁
  • 外贸出口企业申报年月怎么填
  • 记账凭证错误的更正方法
  • 将购进的材料用于自制生产用设备
  • 个人所得税多计算了一个月工资怎么办
  • 报销运输费用
  • 预付卡充值入什么科目
  • 内控制度包括哪几方面
  • 公司缴纳社保如何转为个人缴纳
  • 在保险中,保险利益的载体是
  • 企业进口外汇额度限制
  • 员工福利费怎么做账
  • 私营公司预收账款怎么算
  • sql2000删除
  • sql server错误和使用情况报告
  • 利用MySQL统计一列中不同值的数量方法示例
  • win8 start menu
  • linux中python命令
  • 如何用u盘安装win8操作系统
  • 苹果知识大全
  • MAC OS X 10.8通知中心无法访问、停止更新怎么重启
  • 文件夹底部显示
  • win10系统如何关闭
  • 常见的场景切换效果有哪些
  • ubuntu系统怎么安装
  • Nodejs Express4.x开发框架随手笔记
  • Unity3D游戏开发基础
  • async/await与promise(nodejs中的异步操作问题)
  • python多进程编程
  • 分享一下相亲时碰见过哪些奇葩事
  • javascript的描述
  • jquery中什么方法用于模拟光标悬停事件
  • python遍历列表判断相同元素
  • javascript web开发
  • unity3d移动代码
  • js类继承的几种方式
  • 如何查询发票代码和发票号码
  • 国家税务总局关于进一步优化营改增纳税服务工作的通知
  • 投诉政府平台在哪里投诉
  • 芜湖买房退契税在哪里退
  • 税控盘离线开票时间怎么查
  • 收到税务局税收返还
  • 单位车辆购置税怎么申报缴纳
  • 360浏览器hi真不巧
  • 国际税务师证书
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设