国产成人AV无码一二三区,少女1到100集,国产精品久久久久精品综合紧,巜公妇之诱感肉欲HD在线播放

文章 > PostgreSQL > PostgreSQL 数据库的数据类型详细讲解 三

PostgreSQL 数据库的数据类型详细讲解 三

postgresql 位串类型 xml类型

头像

2021-01-23 15:34:135327浏览 · 0收藏 · 0评论

PostgreSQL1.png

PostgreSQL提供了丰富的数据类型,数据类型是我们在创建表的时候为每个字段设置的。这样做的好处是用户可以使用 CREATE TYPE 命令在数据库中创建新的数据类型。PostgreSQL 的数据类型有很多种,下面我们具体来讲解。

网络地址类型

PostgreSQL 提供用于存储 IPv4 、IPv6 、MAC 地址的数据类型。

用这些数据类型存储网络地址比用纯文本类型好, 因为这些类型提供输入错误检查和特殊的操作和功能。

名字存储空间描述
cidr7 或 19 字节IPv4 或 IPv6 网络
inet7 或 19 字节IPv4 或 IPv6 主机和网络
macaddr6 字节MAC 地址

在对 inet 或 cidr 数据类型进行排序的时候, IPv4 地址总是排在 IPv6 地址前面,包括那些封装或者是映射在 IPv6 地址里的 IPv4 地址, 比如 ::10.2.3.4 或 ::ffff:10.4.3.2。


位串类型

位串就是一串 1 和 0 的字符串。它们可以用于存储和直观化位掩码。 我们有两种 SQL 位类型:bit(n) 和bit varying(n), 这里的n是一个正整数。

bit 类型的数据必须准确匹配长度 n, 试图存储短些或者长一些的数据都是错误的。bit varying 类型数据是最长 n 的变长类型;更长的串会被拒绝。 写一个没有长度的bit 等效于 bit(1), 没有长度的 bit varying 意思是没有长度限制。


文本搜索类型

全文检索即通过自然语言文档的集合来找到那些匹配一个查询的检索。

PostgreSQL 提供了两种数据类型用于支持全文检索:

序号名字 & 描述
1

tsvector

tsvector 的值是一个无重复值的 lexemes 排序列表, 即一些同一个词的不同变种的标准化。

2

tsquery

tsquery 存储用于检索的词汇,并且使用布尔操作符 &(AND),|(OR)和!(NOT) 来组合它们,括号用来强调操作符的分组。


UUID 类型

uuid 数据类型用来存储 RFC 4122,ISO/IEF 9834-8:2005 以及相关标准定义的通用唯一标识符(UUID)。 (一些系统认为这个数据类型为全球唯一标识符,或GUID。) 这个标识符是一个由算法产生的 128 位标识符,使它不可能在已知使用相同算法的模块中和其他方式产生的标识符相同。 因此,对分布式系统而言,这种标识符比序列能更好的提供唯一性保证,因为序列只能在单一数据库中保证唯一。

UUID 被写成一个小写十六进制数字的序列,由分字符分成几组, 特别是一组8位数字+3组4位数字+一组12位数字,总共 32 个数字代表 128 位, 一个这种标准的 UUID 例子如下:

a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11

XML 类型

xml 数据类型可以用于存储XML数据。 将 XML 数据存到 text 类型中的优势在于它能够为结构良好性来检查输入值, 并且还支持函数对其进行类型安全性检查。 要使用这个数据类型,编译时必须使用 configure --with-libxml。

xml 可以存储由XML标准定义的格式良好的"文档", 以及由 XML 标准中的 XMLDecl? content 定义的"内容"片段, 大致上,这意味着内容片段可以有多个顶级元素或字符节点。 xmlvalue IS DOCUMENT 表达式可以用来判断一个特定的 xml 值是一个完整的文件还是内容片段。

创建XML值

使用函数 xmlparse: 来从字符数据产生 xml 类型的值:

XMLPARSE (DOCUMENT '<?xml version="1.0"?><book><title>Manual</title><chapter>...</chapter></book>')XMLPARSE (CONTENT 'abc<foo>bar</foo><bar>foo</bar>')

JSON 类型

json 数据类型可以用来存储 JSON(JavaScript Object Notation)数据, 这样的数据也可以存储为 text,但是 json 数据类型更有利于检查每个存储的数值是可用的 JSON 值。

此外还有相关的函数来处理 json 数据:

实例实例结果
array_to_json('{{1,5},{99,100}}'::int[])[[1,5],[99,100]]
row_to_json(row(1,'foo')){"f1":1,"f2":"foo"}
关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

三飞母姐妹花女儿的小说目录| 两领导在车上吃我的奶| 成品PPT网站大片入口| 《强壮的公2做爱观看| 挺进朋友人妻张婉莹身体| 女生给男生吃小头头| 双男主做酱酱酿酿视频大全真人版| 一品国精和二品国精的文化意义| 电影《满足2》完整版在线观看 | 乖再分开点小说免费阅读| 打开网站免费进入| 成品PPT网站大片入口| 女性私处长得不漂亮的原因| 三角泳衣| 欧美人动物PPT免费模板大全| 洞洞饿了1-36集全免费| 成都私人情侣免费看电视剧的软件| 女性抹胸开襟哺乳衣的注意事项| 白丝美女| 国精产品偷偷偷拍XXXX| 医生一直揉白带湿漉漉的正常吗| 《漾出OVER FLOWER》..| 《炸裂吧!巨棒》免费阅读漫画| 女人被男人进入后的心理变化| 女性私密紧致情趣玩具| 啊轻点…大川巴太粗太长了| 妈妈がだけの心に漂う| 欧美精产国品一二三区别 | 免费B站看大片真人电视剧| 一路向西在线观看剧情电影| 无暇修女| 久久久久久久久AH毛H| 小妇人在线观看免费版电视剧 | 指尖搅动我的心弦| 《特殊游泳教练》| 金银瓶4葡萄熟了| 共享女儿小诗1~10章的背景资.. | 欧美大片PPT免费大全| 《指尖上的热情》| 日本大片又大又好看的PPT| 《炸裂吧!巨棒》免费阅读漫画