前期,我参与了公司开发的数据库数据迁移工具的工作,以及之前的对Page的分析记录,在此进一步将数据库的数据类型做一下分析记录。 一、数据库系统表pg_type PostgreSQL的所有数据类型都存储在系统表pg_type中。 pg_type的表结构如下(这里是从源码中
,可以通过查询系统目录表pg_type来获取。pg_type表存储了数据库中所有类型的定义信息,包括类型名称、类型分类、类型的输入输出函数、类型的比较函数等。 要查找某个类型的定义,可以使用以下SQL查询语句: 代码语言:txt 复制 SELECT typname, typtype, typcategory, typinput, typoutput, typreceive, typsend, typmodi...
relnamespace oid pg_namespace.oid 包含这个对象的名字空间(模式)的OI。 reltype oid pg_type.oid 对应这个表的行类型的数据类型。 relowner oid pg_authid.oid 对象的所有者。 relam oid pg_am.oid 对于索引对象,表示该索引的类型(B-tree,hash)。 relfilenode oid 对象存储在磁盘上的文件名,如果没有则为...
PostgreSQL的所有数据类型都存储在系统表pg_type中。 pg_type的表结构如下(这里是从源码中进行介绍的,源码可以点击pg_type.h): CATALOG(pg_type,1247)BKI_BOOTSTRAPBKI_ROWTYPE_OID(71)BKI_SCHEMA_MACRO{ NameData typname;/* type name */Oid typnamespace;/* OID of namespace containing this type */Oid...
regoperatorpg_operator带参数类型的操作符*(integer,integer) 或 -(NONE,integer) regclasspg_class关系名pg_type regtypepg_type数据类型名integer regconfigpg_ts_config文本搜索配置english regdictionarypg_ts_dict文本搜索字典simple 伪类型 PostgreSQL类型系统包含一系列特殊用途的条目, 它们按照类别来说叫做伪类型...
-relnamespace:relation所属的namespace。 -reltype:relation对应的type。当创建一个 table 时,PG会隐式的为这个表创建一个类型来描述表的行类型,这种类型称为row type。行类型主要用于处理表中的数据。在PL/pgSQL等过程语言中,可以使用行类型来声明变量,这些变量可以存储表中的一行数据。比如: ...
在系统表pg_proc中注册相关以上4个函数 2. 定义基础类型: 在系统表pg_type中注册类型newtype 在bootstrap注册基础类型[2] 3. 实验效果: shawn@B-D53RLVDL-1650bin%./psqlpostgrespsql(13devel)Type"help"forhelp.postgres=#createtabletestnewtype(t1newtype);CREATETABLEpostgres=#insertintotestnewtypevalues(...
PostgreSQL has a rich set of native data types available to users. Users can add new types to PostgreSQL using the CREATE TYPE command. PostgreSQL有一组丰富的本地数据类型可供用户使用。用户可以使用CREATE TYPE命令向PostgreSQL添加新类型。Each data type has an external representation determined by its...
pg_depend 是 postgres 的一张系统表,用来记录数据库对象之间的依赖关系,除了常见的主外键,还有其他一些内部依赖关系,可以通过这个系统表呈现出来。 postgres=# \d+ pg_depend Table "pg_catalog.pg_depend" Column | Type | Modifiers | Storage | Stats target | Description ...
pg_catalog.array_to_string ( ARRAY( SELECT e.enumlabel FROM pg_catalog.pg_enum e WHERE e.enumtypid = t.oid ORDER BY e.oid ), E'\n' ) AS elements, pg_catalog.obj_description ( t.oid, 'pg_type' ) AS description FROM pg_catalog.pg_type t ...