Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vmvW7-000FTP-1V for pgsql-docs@arkaria.postgresql.org; Mon, 02 Feb 2026 15:07:07 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vmvV6-0000Ko-0S for pgsql-docs@arkaria.postgresql.org; Mon, 02 Feb 2026 15:06:03 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vmvV5-0000KG-1N for pgsql-docs@lists.postgresql.org; Mon, 02 Feb 2026 15:06:03 +0000 Received: from mail-lj1-x229.google.com ([2a00:1450:4864:20::229]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1vmvUO-00000000Cja-0A7H for pgsql-docs@lists.postgresql.org; Mon, 02 Feb 2026 15:05:20 +0000 Received: by mail-lj1-x229.google.com with SMTP id 38308e7fff4ca-382fceabddfso36314641fa.1 for ; Mon, 02 Feb 2026 07:05:19 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1770044717; cv=none; d=google.com; s=arc-20240605; b=IABmVy6/zFL80nsxdjtxkCZxHDVPZLVBc8YYriI7RscgZhVh4flQBexFLctBzYB/OW TkBnEWPvjSnq6JCPNqa0poQKospaSl7SvsD0AgY4Z+GoO0RmZnqikF41qaTbJ6kQcRPn Tk4tvDQWQszuEFIhy6XrxoexbkgM5YVu/WnzpctBFnCY/qeJcfvkQyfD2jhQN+oIBRCE TZx913lnqE9YNta9OOswU2bmE32d3BN2inBTgxrHQ7BPiWkIhehpRHfXFb93qGRyz0gy LhgikiZZIHuq4e1DTk+G44+AuZKhOitClOI25//EEiQgJeaY253At9IJiBStIgBvBvZG JGKg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=to:subject:message-id:date:from:mime-version:dkim-signature; bh=937YNWrt3uaaYBhti+LBtrkDTGOALEEZB7OLaGNnkR0=; fh=eitnFYqiGz5Qd9tP4ETN4LQj8BMqIm+FgmdzoPwQKYs=; b=B65VtLp2vNM5e29ZEwNcARhCg8WZ/hW0qpUBHsncdIQqIuKEqN5oAWS79S2MlBdsLR oQMpTAkRGUwpCcvImJF7QKHyxnlskBaCPAZ9VZ3JDXiH4O+/21H7cZqo+e8dwMXGp+E0 qJ2i64VZ24BXmQUABMbnn7MN5LjHFG2JqYPld0gqzDVqOtbMhr4hhfUXv0R3rdeQkoKa rJffJ6DAuOiLHyPwH9P0yjBYxjTYgKftXXN3oLu66yIEPvMcxjzTIbKhWq3gwje6vPf/ CDSpwFRfGyfRvhgEIisByij0YKMqA51EAoHLjh29jEoAsXpchGcgC0EbJBXbxGYnReT8 5nXw==; darn=lists.postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1770044716; x=1770649516; darn=lists.postgresql.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=937YNWrt3uaaYBhti+LBtrkDTGOALEEZB7OLaGNnkR0=; b=ZzH335B12kmEniyNmoPN6OEkxiDfmqfHjeVIMuskjfaK28iNPg5jyHvctirQ6YPCjg XcD4uvZ94gn+2om0Ez71oj7khgQnqzvsAis5aC6cs4VcdRH+sO9SfkKZePl4jy3puXvC 1nSBJsuTRtWl9XWk5uTv3nvwmlfRZ7PaTQWDrDqqxEna7oUJRbjnsVfXLh3qdhkyMzm3 PrpaQYzJEMiDcuyxh2845SzPiABnTiDY5z80RdZEot4bJ19DhjNU2pS7QjxMXna9//X1 Btj2bT5+yOwOaP9cZGVHEFjKzofFnjr0XwQFYTuvHOb7BYA2gQueCtrK04uNrlJ6dzpB LzDw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770044716; x=1770649516; h=to:subject:message-id:date:from:mime-version:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=937YNWrt3uaaYBhti+LBtrkDTGOALEEZB7OLaGNnkR0=; b=VoiE8l9sXcC7ndS/ZIEmA8wbq3zlnwZb9b/NdAUA73egTsygpGP/pQSXMx6JqwMjYv uI5S8WG9nLcErpDGOD29tW6k7ob0NsdVXXzsXljLrHvuFFtU85ggotrB3hd+lMyAfCrx RmVUCPUxdBxUl9btaYcJumwu47dpsQNunVMT1Y1RMCRicBwvwDuCtQY/eQBhDhhwCPsX 3yzyZhH3knn9zKsF3hQPqx9F8o32GXkM45ugK7cJSc7khxaTJKcWrg5lpYO9jHfholNp ssdgSS2qvFolZm4UdAnVVhzRoJXiGTELn87dwLhe+PiVrqZ+mleqrg0gBp3sheNQuRPT fJlg== X-Gm-Message-State: AOJu0Yy96socDy5C/1cRcAOy9WwukAVtaLIDJtCtZTYASDYVSuCJF3d3 7RDlyhYwMszRPxf5pbzN6IOLJ8foXl9jDrLjRgkVhO9sVZYIWSLGp/Cu2LqsVOHAoBGy9W9ehhY Rrn1NNPPSfxLOfSGK9LuEENW+GOPgYRz3w/37xq4= X-Gm-Gg: AZuq6aJt9Pnxh99OLr8RDajwlUurNmyWZOjR/u0vqFWmIoJPm6AqKsWA6j8N9Y68y4D KEd+BZOIJh5guRylhyBmW6uX49zxFFk6F6Jje0uQ7FYcNUZRyEL7KSLHMF20RdOXg26R4rqo89B FKf1og5sjki/rim68HdTTMp8MS9vHS5LfdheVgk+k6+vLvtn6sJZh/2s8iMVUz9LQMZFUPF7rZJ ZPgNG0giLSPLCq88UHEJQ7o4QJigv0JreMHtXCWhF0d5bx/YZsj5zrJfIzCoeKT1veqU4D+ X-Received: by 2002:a05:651c:198e:b0:385:bab3:5ba7 with SMTP id 38308e7fff4ca-3864657c8b1mr39519111fa.19.1770044716380; Mon, 02 Feb 2026 07:05:16 -0800 (PST) MIME-Version: 1.0 From: Hoda Salim Date: Mon, 2 Feb 2026 17:05:03 +0200 X-Gm-Features: AZwV_Qh4JPJVexXwrsgZ5pADaujNssKbhqmgpiRLeSk0LSGpWgcVNa6OHLqo7Y4 Message-ID: Subject: [PATCH] docs: document N'...' national character string literal syntax To: pgsql-docs@lists.postgresql.org Content-Type: multipart/mixed; boundary="0000000000008e93a80649d8a609" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --0000000000008e93a80649d8a609 Content-Type: text/plain; charset="UTF-8" Hi, This patch documents the N'...' national character string literal syntax, which has been supported by PostgreSQL but was previously undocumented. The documentation explains: - What the syntax is (N'hello') - What the SQL standard specifies (implementation-defined national character set) - What PostgreSQL actually does (treats it as a cast to character type) - Why it exists (compatibility with SQL migrated from other databases) I verified the documentation builds without errors. -- Hoda Salim --0000000000008e93a80649d8a609 Content-Type: application/octet-stream; name="0001-docs-document-N-national-character-string-literal.patch" Content-Disposition: attachment; filename="0001-docs-document-N-national-character-string-literal.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_ml5arot90 RnJvbSBhZWNiOWU2ZmRhY2I5MmNjOTYwOTlhZmQ4OWFkMGE2MjhiOTdlOTE2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBIb2RhU2FsaW0gPGhvZGEucy5zYWxpbUBnbWFpbC5jb20+CkRh dGU6IE1vbiwgMiBGZWIgMjAyNiAxNDo1NDozNyArMDAwMApTdWJqZWN0OiBbUEFUQ0hdIGRvY3M6 IGRvY3VtZW50IE4nLi4uJyBuYXRpb25hbCBjaGFyYWN0ZXIgc3RyaW5nIGxpdGVyYWwKIHN5bnRh eAoKRG9jdW1lbnQgdGhlIE4nLi4uJyBzdHJpbmcgbGl0ZXJhbCBzeW50YXggaW4gdGhlIExleGlj YWwgU3RydWN0dXJlCnNlY3Rpb24gb2YgdGhlIGRvY3VtZW50YXRpb24uIFRoaXMgU1FMLXN0YW5k YXJkIHN5bnRheCBmb3IgbmF0aW9uYWwKY2hhcmFjdGVyIHN0cmluZyBsaXRlcmFscyBoYXMgYmVl biBzdXBwb3J0ZWQgYnkgUG9zdGdyZVNRTCBidXQgd2FzCnByZXZpb3VzbHkgdW5kb2N1bWVudGVk LgoKVGhlIGRvY3VtZW50YXRpb24gZXhwbGFpbnMgdGhhdCB3aGlsZSB0aGUgU1FMIHN0YW5kYXJk IHNwZWNpZmllcyB0aGlzCnN5bnRheCBmb3IgYW4gaW1wbGVtZW50YXRpb24tZGVmaW5lZCBuYXRp b25hbCBjaGFyYWN0ZXIgc2V0LCBQb3N0Z3JlU1FMCnRyZWF0cyBOJy4uLicgYXMgZXF1aXZhbGVu dCB0byBhIGNhc3QgdG8gdGhlIGNoYXJhY3RlciB0eXBlIHVzaW5nIHRoZQpkYXRhYmFzZSdzIGVu Y29kaW5nLCBzaW5jZSBQb3N0Z3JlU1FMIHVzZXMgYSBzaW5nbGUgY2hhcmFjdGVyIHNldCBmb3IK YWxsIHN0cmluZyB0eXBlcy4KLS0tCiBkb2Mvc3JjL3NnbWwvc3ludGF4LnNnbWwgfCA0MyArKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiAxIGZpbGUgY2hhbmdlZCwgNDMg aW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9zeW50YXguc2dtbCBiL2Rv Yy9zcmMvc2dtbC9zeW50YXguc2dtbAppbmRleCA2NzQ4Mjk5Njg2MS4uODVlMWY5YzQzNmYgMTAw NjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9zeW50YXguc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvc3lu dGF4LnNnbWwKQEAgLTU5MCw2ICs1OTAsNDkgQEAgJGZ1bmN0aW9uJAogICAgIDwvcGFyYT4KICAg IDwvc2VjdDM+CgorICAgPHNlY3QzIGlkPSJzcWwtc3ludGF4LXN0cmluZ3MtbmF0aW9uYWwiPgor ICAgIDx0aXRsZT5OYXRpb25hbCBDaGFyYWN0ZXIgU3RyaW5nIENvbnN0YW50czwvdGl0bGU+CisK KyAgICA8aW5kZXh0ZXJtIHpvbmU9InNxbC1zeW50YXgtc3RyaW5ncy1uYXRpb25hbCI+CisgICAg IDxwcmltYXJ5Pm5hdGlvbmFsIGNoYXJhY3RlcjwvcHJpbWFyeT4KKyAgICAgPHNlY29uZGFyeT5z dHJpbmcgY29uc3RhbnQ8L3NlY29uZGFyeT4KKyAgICA8L2luZGV4dGVybT4KKworICAgIDxwYXJh PgorICAgICA8cHJvZHVjdG5hbWU+UG9zdGdyZVNRTDwvcHJvZHVjdG5hbWU+IGFjY2VwdHMgc3Ry aW5nIGNvbnN0YW50cworICAgICB3aXRoIGEgbGVhZGluZyA8bGl0ZXJhbD5OPC9saXRlcmFsPiAo dXBwZXIgb3IgbG93ZXIgY2FzZSkKKyAgICAgaW1tZWRpYXRlbHkgYmVmb3JlIHRoZSBvcGVuaW5n IHNpbmdsZSBxdW90ZSwgZm9yCisgICAgIGV4YW1wbGUgPGxpdGVyYWw+TidoZWxsbyc8L2xpdGVy YWw+LiAgVGhpcyBzeW50YXggaXMgc3BlY2lmaWVkIGJ5CisgICAgIHRoZSA8YWNyb255bT5TUUw8 L2Fjcm9ueW0+IHN0YW5kYXJkIGZvciBpZGVudGlmeWluZyBzdHJpbmcKKyAgICAgbGl0ZXJhbHMg b2YgPHF1b3RlPm5hdGlvbmFsIGNoYXJhY3RlcjwvcXVvdGU+IHR5cGVzCisgICAgICg8dHlwZT5O Q0hBUjwvdHlwZT4gYW5kIDx0eXBlPk5DSEFSIFZBUllJTkc8L3R5cGU+KS4KKyAgICA8L3BhcmE+ CisKKyAgICA8cGFyYT4KKyAgICAgVGhlIDxhY3JvbnltPlNRTDwvYWNyb255bT4gc3RhbmRhcmQg c3BlY2lmaWVzIHRoYXQgc3RyaW5ncyB3cml0dGVuCisgICAgIHdpdGggdGhpcyBzeW50YXggc2hv dWxkIHVzZSBhbiA8cXVvdGU+aW1wbGVtZW50YXRpb24tZGVmaW5lZAorICAgICBuYXRpb25hbCBj aGFyYWN0ZXIgc2V0PC9xdW90ZT4uCisgICAgIDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9k dWN0bmFtZT4gZG9lcyBub3QgaW1wbGVtZW50IGEgc2VwYXJhdGUKKyAgICAgbmF0aW9uYWwgY2hh cmFjdGVyIHNldDsgaXQgdHJlYXRzIDxsaXRlcmFsPk4nLi4uJzwvbGl0ZXJhbD4gYXMKKyAgICAg ZXF1aXZhbGVudCB0byBhIHJlZ3VsYXIgc3RyaW5nIGNvbnN0YW50IGNhc3QgdG8gdGhlCisgICAg IDx0eXBlPmNoYXJhY3RlcjwvdHlwZT4gdHlwZSwgdGhhdCBpcywgPGxpdGVyYWw+Jy4uLic6OmNo YXJhY3RlcjwvbGl0ZXJhbD4sCisgICAgIHVzaW5nIHRoZSBkYXRhYmFzZSdzIGNoYXJhY3RlciBz ZXQuCisgICAgIFNpbmNlIDx0eXBlPmNoYXJhY3RlcjwvdHlwZT4gd2l0aG91dCBhIGxlbmd0aCBz cGVjaWZpZXIgYWNjZXB0cyBzdHJpbmdzCisgICAgIG9mIGFueSBzaXplLCB0aGUgcmVzdWx0IGlz IGEgdmFsdWUgb2YgdHlwZSA8dHlwZT5jaGFyYWN0ZXI8L3R5cGU+CisgICAgIHdpdGggdGhlIGxl bmd0aCBvZiB0aGUgZ2l2ZW4gc3RyaW5nLiAgTm90ZSB0aGF0IHRyYWlsaW5nIHNwYWNlcworICAg ICBhcmUgc2VtYW50aWNhbGx5IGluc2lnbmlmaWNhbnQgaW4gPHR5cGU+Y2hhcmFjdGVyPC90eXBl PiB2YWx1ZXMuCisgICAgPC9wYXJhPgorCisgICAgPHBhcmE+CisgICAgIFRoaXMgc3ludGF4IGlz IGFjY2VwdGVkIHByaW1hcmlseSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIFNRTAorICAgICBtaWdy YXRlZCBmcm9tIG90aGVyIGRhdGFiYXNlIHN5c3RlbXMuICBTaW5jZQorICAgICA8cHJvZHVjdG5h bWU+UG9zdGdyZVNRTDwvcHJvZHVjdG5hbWU+IHVzZXMgYSBzaW5nbGUgY2hhcmFjdGVyIHNldAor ICAgICBmb3IgYWxsIHN0cmluZyB0eXBlcyAoZGV0ZXJtaW5lZCBieSB0aGUgZGF0YWJhc2UgZW5j b2RpbmcpLAorICAgICB0aGVyZSBpcyB0eXBpY2FsbHkgbm8gYWR2YW50YWdlIHRvIHVzaW5nCisg ICAgIDxsaXRlcmFsPk4nLi4uJzwvbGl0ZXJhbD4gb3ZlciByZWd1bGFyIHN0cmluZyBjb25zdGFu dHMuCisgICAgPC9wYXJhPgorICAgPC9zZWN0Mz4KKwogICAgPHNlY3QzIGlkPSJzcWwtc3ludGF4 LWJpdC1zdHJpbmdzIj4KICAgICA8dGl0bGU+Qml0LVN0cmluZyBDb25zdGFudHM8L3RpdGxlPgoK LS0KMi40My4wCg== --0000000000008e93a80649d8a609--