`LC_COLLATE`和`LC_CTYPE`EN最近一个干了几年的PostgreSQL同学问我一个问题,说他被嘲笑了,他们公司的老DBA说他连个数据库都不会建,我就问他,PostgreSQL也不是分布式,有新概念,他怎么说的你,怎么就连个数据库都不会建了,不过最后我看他是不大会建数据库。
这个问题很老了,但如果它可以帮助某人:默认数据库可能没有使用正确的lc_ctype和lc_collate进行初始化。
影响PostgreSQL进程和数据文件的字符编码 ## Collate:字符排序顺序,影响字符比较、order by、字符列的索...
lc_collate:在新数据库中使⽤的排序规则(LC_COLLATE)。这会影响应⽤于字符串的排序顺序,例如在使⽤ORDER BY的查询中,以及在⽂本列的索引中使⽤的顺序。...lc_ctype:在新数据库中使⽤的字符分类(LC_CTYPE)。 这会影响字符的分类,例如下,上和数字。 默认值是使⽤模板数据库的字符分类。有关其他...
你可以使用 CREATE DATABASE 语句来创建一个新的数据库。 以下是创建数据库的基本语法和示例: 基本语法 sql CREATE DATABASE database_name [ [ WITH ] [ OWNER [=] user_name ] [ TEMPLATE [=] template ] [ ENCODING [=] encoding ] [ LC_COLLATE [=] lc_collate ] [ LC_CTYPE [=] lc_ctype ...
--lc-collate=locale 指定要在这个数据库中使用的 LC_COLLATE 设置。 --lc-ctype=locale 指定要在这个数据库中使用的 LC_CTYPE 设置。 -O / --owner=owner 指定拥有这个新数据库的数据库用户 -T / --template=template 指定创建此数据库的模板。 -V / --version 打印createdb版本并退出。 3.删除数据库 ...
createuserXXXwithpassword'XXXXXX';--或者createrole XXXwithpassword'XXXXX'login; 注意:使用create role时,需要携带 login参数,否则将无法登录,如果忘记可使用命令修改: alterrole XXX login; 2、创建数据库: 1CREATEDATABASEyysg2WITHOWNER=yysg3ENCODING='UTF8'4TABLESPACE=pg_default5LC_COLLATE='en_US.UTF-...
lc_collate Shows the collation order locale. 显示排序规则区域设置。 lc_ctype Shows the character classification and case conversion locale. 显示字符分类和案例转换区域设置。 lc_messages Sets the language in which messages are displayed. 设置显示消息的语言。 lc_monetary Sets the locale for formatting ...
--lc-collate=locale --lc-ctype=locale --lc-messages=locale --lc-monetary=locale --lc-numeric=locale --lc-time=locale 和--locale相似,但是只在指定的分类中设置区域。 --no-locale 等效于--locale=C。 -N --no-sync 默认情况下,initdb将等待所有文件被安全地写到磁盘。这个选项会导致initdb不等待就...
ALTER DATABASE "tempDB" RENAME TO "myDB";'# see the result psql myDB-c"SHOW LC_COLLATE"...