news 2026/4/15 19:21:50

PG中 template0 与 template1区别

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
PG中 template0 与 template1区别

文章目录

      • 1. 用途定位
      • 2. 内容差异
      • 3. 灵活性
      • 4. 典型使用场景
      • 5. 关键限制
      • 总结一句话:
    • 示例

1. 用途定位

特性template0template1
设计目的提供一个“原始、干净”的模板作为默认模板,支持用户自定义
是否可修改不可修改(系统保留)可以被用户修改

2. 内容差异

特性template0template1
初始状态完全干净,无任何用户对象可能包含用户自定义对象(如表、函数等)
是否可继承内容不会继承任何用户定义的内容会继承用户在其中添加的所有对象

3. 灵活性

特性template0template1
字符编码/区域设置支持自定义(可更改)固定为初始化时的值(不可更改)
适用场景创建完全独立、无依赖的数据库复用已有配置或对象的数据库

4. 典型使用场景

  • 使用template0

    • 需要创建一个全新的、干净的数据库。
    • 需要指定不同于默认的字符编码(如SQL_ASCII)或区域设置(如LC_COLLATE = 'C')。
    • 不希望继承任何用户自定义的对象或配置。
  • 使用template1

    • 希望复用template1中已有的配置、扩展或对象。
    • 创建常规数据库,无需特殊编码或区域设置要求。

5. 关键限制

  • 如果需要自定义字符编码(ENCODING)或区域设置(LC_COLLATE/LC_CTYPE),只能使用template0
  • 使用template1时,其编码和区域设置是固定的,无法更改。

总结一句话:

  • template0:干净、灵活,适合创建特殊需求的数据库。
  • template1:默认、可定制,适合复用现有配置的场景。

示例

template1=# create database xx WITH TEMPLATE = template0 ENCODING = 'UTF8' LC_COLLATE = 'C' LC_CTYPE = 'C';CREATEDATABASEtemplate1=# create database xx2 WITH TEMPLATE = template1 ENCODING = 'UTF8' LC_COLLATE = 'C' LC_CTYPE = 'C';CREATEDATABASEtemplate1=# \l xx*ListofdatabasesName|Owner|Encoding|Collate|Ctype|ICU Locale|Locale Provider|Accessprivileges------+----------+----------+---------+-------+------------+-----------------+-------------------xx|postgres|UTF8|C|C||libc|xx2|postgres|UTF8|C|C||libc|(2rows)template1=# create database xx3 WITH TEMPLATE = template1 ENCODING = 'SQL_ASCII' LC_COLLATE = 'C' LC_CTYPE = 'C';ERROR: new encoding(SQL_ASCII)isincompatiblewiththe encodingofthe templatedatabase(UTF8)HINT:Usethe same encodingasinthe templatedatabase,orusetemplate0astemplate.template1=#template1=# create database xx3 WITH TEMPLATE = template1 ENCODING = 'UTF8' LC_COLLATE = 'en_US.UTF8' LC_CTYPE = 'C';ERROR: new collation(en_US.UTF8)isincompatiblewiththe collationofthe templatedatabase(C)HINT:Usethe same collationasinthe templatedatabase,orusetemplate0astemplate.template1=#template1=#
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 10:21:48

深入解析湖北中一科技AI工程师职位:工业智能化的核心驱动力

湖北中一科技股份有限公司 ai工程师 职位信息 核心职责 1. 工业自动化与智能化 开发基于机器视觉、深度学习的产线自动化检测系统,优化生产流程(如电子铜箔缺陷识别、工艺参数实时调控)。 设计智能控制算法,提升设备OEE(综合效率)10%+。 2. 数据分析与建模 构建生产大数据…

作者头像 李华
网站建设 2026/4/16 10:18:38

OpenClaw 给了每个人“数字分身“,但企业更需要可靠的 AI 员工

GitHub星标破10万;以一己之力引发Mac mini的抢购潮;有人将其称为“迄今为止最伟大的 AI 应用”。最近,AI圈的头号C位非OpenClaw(原Clawdbot/Moltbot)莫属。和以前那些只会“说”的 Chatbot 不同,OpenClaw是…

作者头像 李华
网站建设 2026/4/16 10:16:06

小米开源2025年度报告发布 | 以开源为翼,赴技术新程

2025年度,小米开源以 “尊重、回馈、价值”为核心理念,发布了 Xiaomi MiMo 系列大模型、声音理解大模型 MiDashengLM-7B,开源了跨域具身基座模型 Xiaomi MiMo-Embodied 以及探索大模型驱动全屋智能的 Xiaomi Miloco 等核心项目,op…

作者头像 李华
网站建设 2026/4/16 11:05:50

35 岁双非本科还能进大厂?

大家好,我是R哥。今天我又来分享一个励志的辅导案例,这兄弟基本信息如下:年龄:马上快 35⼯作年限:10年学历:双非本科/非科班薪资:20k核心诉求:进大厂,薪资达到40w说实话&…

作者头像 李华
网站建设 2026/4/16 11:08:21

九元伦理原子:自指认知框架下的伦理升维与AGI内生安全范式

九元伦理原子:自指认知框架下的伦理升维与AGI内生安全范式摘要在通用人工智能(AGI)从“可用”走向“可信、可控、可持续”的进程中,传统外挂式伦理对齐方案已显现出局限性。本文提出九元伦理原子(Ninefold Ethical Ato…

作者头像 李华
网站建设 2026/4/16 12:24:24

基于STM32F103平台的示波器应用设计方案

一、系统架构设计 1. 硬件模块组成模块核心组件功能描述主控单元STM32F103C8T672MHz主频,内置12位ADC(1Msps)、DMA、定时器,支持双通道同步采样信号调理AD827运放可编程增益放大器输入阻抗1MΩ,增益0-40dB可调&#xf…

作者头像 李华