Remove some ancient and unmaintained encoding-conversion test cruft.
In commit 921191912c
I claimed that we weren't testing encoding
conversion functions, but further poking around reveals that we did
have an equivalent though hard-wired set of tests in conversion.sql.
AFAICS there is no advantage to doing it like that as compared to letting
the catalog contents drive the test, so let the opr_sanity addition stand
and remove the now-redundant tests in conversion.sql.
Also, remove some infrastructure in src/backend/utils/mb/conversion_procs
for building conversion.sql's list of tests. That was unmaintained, and
had not corresponded to the actual contents of conversion.sql since 2007
or perhaps even further back.
This commit is contained in:
parent
3343ea9e8e
commit
419400c5da
|
@ -14,9 +14,6 @@ include $(top_builddir)/src/Makefile.global
|
||||||
|
|
||||||
SQLSCRIPT = conversion_create.sql
|
SQLSCRIPT = conversion_create.sql
|
||||||
|
|
||||||
# This file can be placed as src/test/regress/sql/conversion.sql
|
|
||||||
REGRESSION_SCRIPT = conversion.sql
|
|
||||||
|
|
||||||
SUBDIRS = \
|
SUBDIRS = \
|
||||||
ascii_and_mic cyrillic_and_mic euc_cn_and_mic euc_jp_and_sjis \
|
ascii_and_mic cyrillic_and_mic euc_cn_and_mic euc_jp_and_sjis \
|
||||||
euc_kr_and_mic euc_tw_and_big5 latin2_and_win1250 latin_and_mic \
|
euc_kr_and_mic euc_tw_and_big5 latin2_and_win1250 latin_and_mic \
|
||||||
|
@ -184,23 +181,6 @@ $(SQLSCRIPT): Makefile
|
||||||
echo; \
|
echo; \
|
||||||
done > $@
|
done > $@
|
||||||
|
|
||||||
$(REGRESSION_SCRIPT): Makefile
|
|
||||||
@set -e; \
|
|
||||||
cp regress_prolog $@; \
|
|
||||||
set $(CONVERSIONS) ; \
|
|
||||||
while [ "$$#" -gt 0 ] ; \
|
|
||||||
do \
|
|
||||||
name=$$1;shift; \
|
|
||||||
se=$$1;shift; \
|
|
||||||
de=$$1; shift; \
|
|
||||||
func=$$1; shift; \
|
|
||||||
obj=$$1; shift; \
|
|
||||||
echo "-- $$se --> $$de"; \
|
|
||||||
echo "SELECT CONVERT('foo' USING $$name);"; \
|
|
||||||
echo "SELECT CONVERT('foo', '$$se', '$$de');"; \
|
|
||||||
done >> $@; \
|
|
||||||
cat regress_epilogue >> $@;
|
|
||||||
|
|
||||||
install: $(SQLSCRIPT) installdirs
|
install: $(SQLSCRIPT) installdirs
|
||||||
$(INSTALL_DATA) $(SQLSCRIPT) '$(DESTDIR)$(datadir)'
|
$(INSTALL_DATA) $(SQLSCRIPT) '$(DESTDIR)$(datadir)'
|
||||||
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
--
|
|
||||||
-- return to the super user
|
|
||||||
--
|
|
||||||
RESET SESSION AUTHORIZATION;
|
|
||||||
DROP USER conversion_test_user;
|
|
|
@ -1,25 +0,0 @@
|
||||||
--
|
|
||||||
-- create user defined conversion
|
|
||||||
--
|
|
||||||
CREATE USER conversion_test_user WITH NOCREATEDB NOCREATEROLE;
|
|
||||||
SET SESSION AUTHORIZATION conversion_test_user;
|
|
||||||
CREATE CONVERSION myconv FOR 'LATIN1' TO 'UTF8' FROM iso8859_1_to_utf8;
|
|
||||||
--
|
|
||||||
-- cannot make same name conversion in same schema
|
|
||||||
--
|
|
||||||
CREATE CONVERSION myconv FOR 'LATIN1' TO 'UTF8' FROM iso8859_1_to_utf8;
|
|
||||||
--
|
|
||||||
-- create default conversion with qualified name
|
|
||||||
--
|
|
||||||
CREATE DEFAULT CONVERSION public.mydef FOR 'LATIN1' TO 'UTF8' FROM iso8859_1_to_utf8;
|
|
||||||
--
|
|
||||||
-- cannot make default conversion with same shcema/for_encoding/to_encoding
|
|
||||||
--
|
|
||||||
CREATE DEFAULT CONVERSION public.mydef2 FOR 'LATIN1' TO 'UTF8' FROM iso8859_1_to_utf8;
|
|
||||||
--
|
|
||||||
-- drop user defined conversion
|
|
||||||
--
|
|
||||||
DROP CONVERSION myconv;
|
|
||||||
DROP CONVERSION mydef;
|
|
||||||
--
|
|
||||||
-- make sure all pre-defined conversions are fine.
|
|
|
@ -1,5 +1,3 @@
|
||||||
-- ensure consistent test output regardless of the default bytea format
|
|
||||||
SET bytea_output TO escape;
|
|
||||||
--
|
--
|
||||||
-- create user defined conversion
|
-- create user defined conversion
|
||||||
--
|
--
|
||||||
|
@ -16,7 +14,7 @@ ERROR: conversion "myconv" already exists
|
||||||
--
|
--
|
||||||
CREATE DEFAULT CONVERSION public.mydef FOR 'LATIN1' TO 'UTF8' FROM iso8859_1_to_utf8;
|
CREATE DEFAULT CONVERSION public.mydef FOR 'LATIN1' TO 'UTF8' FROM iso8859_1_to_utf8;
|
||||||
--
|
--
|
||||||
-- cannot make default conversion with same shcema/for_encoding/to_encoding
|
-- cannot make default conversion with same schema/for_encoding/to_encoding
|
||||||
--
|
--
|
||||||
CREATE DEFAULT CONVERSION public.mydef2 FOR 'LATIN1' TO 'UTF8' FROM iso8859_1_to_utf8;
|
CREATE DEFAULT CONVERSION public.mydef2 FOR 'LATIN1' TO 'UTF8' FROM iso8859_1_to_utf8;
|
||||||
ERROR: default conversion for LATIN1 to UTF8 already exists
|
ERROR: default conversion for LATIN1 to UTF8 already exists
|
||||||
|
@ -31,917 +29,9 @@ COMMENT ON CONVERSION myconv IS NULL;
|
||||||
DROP CONVERSION myconv;
|
DROP CONVERSION myconv;
|
||||||
DROP CONVERSION mydef;
|
DROP CONVERSION mydef;
|
||||||
--
|
--
|
||||||
-- make sure all pre-defined conversions are fine.
|
-- Note: the built-in conversions are exercised in opr_sanity.sql,
|
||||||
-- SQL_ASCII --> MULE_INTERNAL
|
-- so there's no need to do that here.
|
||||||
SELECT CONVERT('foo', 'SQL_ASCII', 'MULE_INTERNAL');
|
--
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- MULE_INTERNAL --> SQL_ASCII
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'SQL_ASCII');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- KOI8R --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'KOI8R', 'MULE_INTERNAL');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- MULE_INTERNAL --> KOI8R
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'KOI8R');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- ISO-8859-5 --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'ISO-8859-5', 'MULE_INTERNAL');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- MULE_INTERNAL --> ISO-8859-5
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'ISO-8859-5');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- WIN1251 --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'WIN1251', 'MULE_INTERNAL');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- MULE_INTERNAL --> WIN1251
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'WIN1251');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- WIN866 --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'WIN866', 'MULE_INTERNAL');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- MULE_INTERNAL --> WIN866
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'WIN866');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- KOI8R --> WIN1251
|
|
||||||
SELECT CONVERT('foo', 'KOI8R', 'WIN1251');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- WIN1251 --> KOI8R
|
|
||||||
SELECT CONVERT('foo', 'WIN1251', 'KOI8R');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- KOI8R --> WIN866
|
|
||||||
SELECT CONVERT('foo', 'KOI8R', 'WIN866');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- WIN866 --> KOI8R
|
|
||||||
SELECT CONVERT('foo', 'WIN866', 'KOI8R');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- WIN866 --> WIN1251
|
|
||||||
SELECT CONVERT('foo', 'WIN866', 'WIN1251');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- WIN1251 --> WIN866
|
|
||||||
SELECT CONVERT('foo', 'WIN1251', 'WIN866');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- ISO-8859-5 --> KOI8R
|
|
||||||
SELECT CONVERT('foo', 'ISO-8859-5', 'KOI8R');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- KOI8R --> ISO-8859-5
|
|
||||||
SELECT CONVERT('foo', 'KOI8R', 'ISO-8859-5');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- ISO-8859-5 --> WIN1251
|
|
||||||
SELECT CONVERT('foo', 'ISO-8859-5', 'WIN1251');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- WIN1251 --> ISO-8859-5
|
|
||||||
SELECT CONVERT('foo', 'WIN1251', 'ISO-8859-5');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- ISO-8859-5 --> WIN866
|
|
||||||
SELECT CONVERT('foo', 'ISO-8859-5', 'WIN866');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- WIN866 --> ISO-8859-5
|
|
||||||
SELECT CONVERT('foo', 'WIN866', 'ISO-8859-5');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- EUC_CN --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'EUC_CN', 'MULE_INTERNAL');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- MULE_INTERNAL --> EUC_CN
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'EUC_CN');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- EUC_JP --> SJIS
|
|
||||||
SELECT CONVERT('foo', 'EUC_JP', 'SJIS');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- SJIS --> EUC_JP
|
|
||||||
SELECT CONVERT('foo', 'SJIS', 'EUC_JP');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- EUC_JP --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'EUC_JP', 'MULE_INTERNAL');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- SJIS --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'SJIS', 'MULE_INTERNAL');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- MULE_INTERNAL --> EUC_JP
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'EUC_JP');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- MULE_INTERNAL --> SJIS
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'SJIS');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- EUC_KR --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'EUC_KR', 'MULE_INTERNAL');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- MULE_INTERNAL --> EUC_KR
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'EUC_KR');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- EUC_TW --> BIG5
|
|
||||||
SELECT CONVERT('foo', 'EUC_TW', 'BIG5');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- BIG5 --> EUC_TW
|
|
||||||
SELECT CONVERT('foo', 'BIG5', 'EUC_TW');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- EUC_TW --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'EUC_TW', 'MULE_INTERNAL');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- BIG5 --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'BIG5', 'MULE_INTERNAL');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- MULE_INTERNAL --> EUC_TW
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'EUC_TW');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- MULE_INTERNAL --> BIG5
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'BIG5');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- LATIN2 --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'LATIN2', 'MULE_INTERNAL');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- MULE_INTERNAL --> LATIN2
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'LATIN2');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- WIN1250 --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'WIN1250', 'MULE_INTERNAL');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- MULE_INTERNAL --> WIN1250
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'WIN1250');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- LATIN2 --> WIN1250
|
|
||||||
SELECT CONVERT('foo', 'LATIN2', 'WIN1250');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- WIN1250 --> LATIN2
|
|
||||||
SELECT CONVERT('foo', 'WIN1250', 'LATIN2');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- LATIN1 --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'LATIN1', 'MULE_INTERNAL');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- MULE_INTERNAL --> LATIN1
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'LATIN1');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- LATIN3 --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'LATIN3', 'MULE_INTERNAL');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- MULE_INTERNAL --> LATIN3
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'LATIN3');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- LATIN4 --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'LATIN4', 'MULE_INTERNAL');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- MULE_INTERNAL --> LATIN4
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'LATIN4');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- SQL_ASCII --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'SQL_ASCII', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> SQL_ASCII
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'SQL_ASCII');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- BIG5 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'BIG5', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> BIG5
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'BIG5');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> KOI8R
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'KOI8R');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- KOI8R --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'KOI8R', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> WIN1251
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'WIN1251');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- WIN1251 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'WIN1251', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> WIN1252
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'WIN1252');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- WIN1252 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'WIN1252', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> WIN866
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'WIN866');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- WIN866 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'WIN866', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- EUC_CN --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'EUC_CN', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> EUC_CN
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'EUC_CN');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- EUC_JP --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'EUC_JP', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> EUC_JP
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'EUC_JP');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- EUC_KR --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'EUC_KR', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> EUC_KR
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'EUC_KR');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- EUC_TW --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'EUC_TW', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> EUC_TW
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'EUC_TW');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- GB18030 --> UTF8
|
|
||||||
SELECT CONVERT('Postgres \247\343\247\335\247\340\247\337 \2249\3138 \317\363 \250\246le\2010\2747phant', 'GB18030', 'UTF8');
|
|
||||||
convert
|
|
||||||
-------------------------------------------------------------------------------------------------
|
|
||||||
Postgres \321\201\320\273\320\276\320\275 \360\237\220\230 \350\261\241 \303\251le\314\201phant
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> GB18030
|
|
||||||
SELECT CONVERT('Postgres \321\201\320\273\320\276\320\275 \360\237\220\230 \350\261\241 \303\251le\314\201phant', 'UTF-8', 'GB18030');
|
|
||||||
convert
|
|
||||||
-----------------------------------------------------------------------------------------
|
|
||||||
Postgres \247\343\247\335\247\340\247\337 \2249\3138 \317\363 \250\246le\2010\2747phant
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- GBK --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'GBK', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> GBK
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'GBK');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> LATIN2
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'LATIN2');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- LATIN2 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'LATIN2', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> LATIN3
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'LATIN3');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- LATIN3 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'LATIN3', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> LATIN4
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'LATIN4');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- LATIN4 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'LATIN4', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> LATIN5
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'LATIN5');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- LATIN5 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'LATIN5', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> LATIN6
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'LATIN6');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- LATIN6 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'LATIN6', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> LATIN7
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'LATIN7');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- LATIN7 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'LATIN7', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> LATIN8
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'LATIN8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- LATIN8 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'LATIN8', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> LATIN9
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'LATIN9');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- LATIN9 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'LATIN9', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> LATIN10
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'LATIN10');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- LATIN10 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'LATIN10', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> ISO-8859-5
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'ISO-8859-5');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- ISO-8859-5 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'ISO-8859-5', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> ISO-8859-6
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'ISO-8859-6');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- ISO-8859-6 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'ISO-8859-6', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> ISO-8859-7
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'ISO-8859-7');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- ISO-8859-7 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'ISO-8859-7', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> ISO-8859-8
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'ISO-8859-8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- ISO-8859-8 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'ISO-8859-8', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- LATIN1 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'LATIN1', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> LATIN1
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'LATIN1');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- JOHAB --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'JOHAB', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> JOHAB
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'JOHAB');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- SJIS --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'SJIS', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> SJIS
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'SJIS');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- WIN1258 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'WIN1258', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> WIN1258
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'WIN1258');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UHC --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'UHC', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> UHC
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'UHC');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> WIN1250
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'WIN1250');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- WIN1250 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'WIN1250', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> WIN1256
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'WIN1256');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- WIN1256 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'WIN1256', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> WIN874
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'WIN874');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- WIN874 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'WIN874', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> WIN1253
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'WIN1253');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- WIN1253 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'WIN1253', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> WIN1254
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'WIN1254');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- WIN1254 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'WIN1254', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> WIN1255
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'WIN1255');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- WIN1255 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'WIN1255', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> WIN1257
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'WIN1257');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- WIN1257 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'WIN1257', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> EUC_JIS_2004
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'EUC_JIS_2004');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- EUC_JIS_2004 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'EUC_JIS_2004', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- UTF8 --> SHIFT_JIS_2004
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'SHIFT_JIS_2004');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- SHIFT_JIS_2004 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'SHIFT_JIS_2004', 'UTF8');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- EUC_JIS_2004 --> SHIFT_JIS_2004
|
|
||||||
SELECT CONVERT('foo', 'EUC_JIS_2004', 'SHIFT_JIS_2004');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
-- SHIFT_JIS_2004 --> EUC_JIS_2004
|
|
||||||
SELECT CONVERT('foo', 'SHIFT_JIS_2004', 'EUC_JIS_2004');
|
|
||||||
convert
|
|
||||||
---------
|
|
||||||
foo
|
|
||||||
(1 row)
|
|
||||||
|
|
||||||
--
|
--
|
||||||
-- return to the super user
|
-- return to the super user
|
||||||
--
|
--
|
||||||
|
|
|
@ -1,6 +1,3 @@
|
||||||
-- ensure consistent test output regardless of the default bytea format
|
|
||||||
SET bytea_output TO escape;
|
|
||||||
|
|
||||||
--
|
--
|
||||||
-- create user defined conversion
|
-- create user defined conversion
|
||||||
--
|
--
|
||||||
|
@ -16,7 +13,7 @@ CREATE CONVERSION myconv FOR 'LATIN1' TO 'UTF8' FROM iso8859_1_to_utf8;
|
||||||
--
|
--
|
||||||
CREATE DEFAULT CONVERSION public.mydef FOR 'LATIN1' TO 'UTF8' FROM iso8859_1_to_utf8;
|
CREATE DEFAULT CONVERSION public.mydef FOR 'LATIN1' TO 'UTF8' FROM iso8859_1_to_utf8;
|
||||||
--
|
--
|
||||||
-- cannot make default conversion with same shcema/for_encoding/to_encoding
|
-- cannot make default conversion with same schema/for_encoding/to_encoding
|
||||||
--
|
--
|
||||||
CREATE DEFAULT CONVERSION public.mydef2 FOR 'LATIN1' TO 'UTF8' FROM iso8859_1_to_utf8;
|
CREATE DEFAULT CONVERSION public.mydef2 FOR 'LATIN1' TO 'UTF8' FROM iso8859_1_to_utf8;
|
||||||
-- test comments
|
-- test comments
|
||||||
|
@ -29,267 +26,9 @@ COMMENT ON CONVERSION myconv IS NULL;
|
||||||
DROP CONVERSION myconv;
|
DROP CONVERSION myconv;
|
||||||
DROP CONVERSION mydef;
|
DROP CONVERSION mydef;
|
||||||
--
|
--
|
||||||
-- make sure all pre-defined conversions are fine.
|
-- Note: the built-in conversions are exercised in opr_sanity.sql,
|
||||||
-- SQL_ASCII --> MULE_INTERNAL
|
-- so there's no need to do that here.
|
||||||
SELECT CONVERT('foo', 'SQL_ASCII', 'MULE_INTERNAL');
|
--
|
||||||
-- MULE_INTERNAL --> SQL_ASCII
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'SQL_ASCII');
|
|
||||||
-- KOI8R --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'KOI8R', 'MULE_INTERNAL');
|
|
||||||
-- MULE_INTERNAL --> KOI8R
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'KOI8R');
|
|
||||||
-- ISO-8859-5 --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'ISO-8859-5', 'MULE_INTERNAL');
|
|
||||||
-- MULE_INTERNAL --> ISO-8859-5
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'ISO-8859-5');
|
|
||||||
-- WIN1251 --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'WIN1251', 'MULE_INTERNAL');
|
|
||||||
-- MULE_INTERNAL --> WIN1251
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'WIN1251');
|
|
||||||
-- WIN866 --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'WIN866', 'MULE_INTERNAL');
|
|
||||||
-- MULE_INTERNAL --> WIN866
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'WIN866');
|
|
||||||
-- KOI8R --> WIN1251
|
|
||||||
SELECT CONVERT('foo', 'KOI8R', 'WIN1251');
|
|
||||||
-- WIN1251 --> KOI8R
|
|
||||||
SELECT CONVERT('foo', 'WIN1251', 'KOI8R');
|
|
||||||
-- KOI8R --> WIN866
|
|
||||||
SELECT CONVERT('foo', 'KOI8R', 'WIN866');
|
|
||||||
-- WIN866 --> KOI8R
|
|
||||||
SELECT CONVERT('foo', 'WIN866', 'KOI8R');
|
|
||||||
-- WIN866 --> WIN1251
|
|
||||||
SELECT CONVERT('foo', 'WIN866', 'WIN1251');
|
|
||||||
-- WIN1251 --> WIN866
|
|
||||||
SELECT CONVERT('foo', 'WIN1251', 'WIN866');
|
|
||||||
-- ISO-8859-5 --> KOI8R
|
|
||||||
SELECT CONVERT('foo', 'ISO-8859-5', 'KOI8R');
|
|
||||||
-- KOI8R --> ISO-8859-5
|
|
||||||
SELECT CONVERT('foo', 'KOI8R', 'ISO-8859-5');
|
|
||||||
-- ISO-8859-5 --> WIN1251
|
|
||||||
SELECT CONVERT('foo', 'ISO-8859-5', 'WIN1251');
|
|
||||||
-- WIN1251 --> ISO-8859-5
|
|
||||||
SELECT CONVERT('foo', 'WIN1251', 'ISO-8859-5');
|
|
||||||
-- ISO-8859-5 --> WIN866
|
|
||||||
SELECT CONVERT('foo', 'ISO-8859-5', 'WIN866');
|
|
||||||
-- WIN866 --> ISO-8859-5
|
|
||||||
SELECT CONVERT('foo', 'WIN866', 'ISO-8859-5');
|
|
||||||
-- EUC_CN --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'EUC_CN', 'MULE_INTERNAL');
|
|
||||||
-- MULE_INTERNAL --> EUC_CN
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'EUC_CN');
|
|
||||||
-- EUC_JP --> SJIS
|
|
||||||
SELECT CONVERT('foo', 'EUC_JP', 'SJIS');
|
|
||||||
-- SJIS --> EUC_JP
|
|
||||||
SELECT CONVERT('foo', 'SJIS', 'EUC_JP');
|
|
||||||
-- EUC_JP --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'EUC_JP', 'MULE_INTERNAL');
|
|
||||||
-- SJIS --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'SJIS', 'MULE_INTERNAL');
|
|
||||||
-- MULE_INTERNAL --> EUC_JP
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'EUC_JP');
|
|
||||||
-- MULE_INTERNAL --> SJIS
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'SJIS');
|
|
||||||
-- EUC_KR --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'EUC_KR', 'MULE_INTERNAL');
|
|
||||||
-- MULE_INTERNAL --> EUC_KR
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'EUC_KR');
|
|
||||||
-- EUC_TW --> BIG5
|
|
||||||
SELECT CONVERT('foo', 'EUC_TW', 'BIG5');
|
|
||||||
-- BIG5 --> EUC_TW
|
|
||||||
SELECT CONVERT('foo', 'BIG5', 'EUC_TW');
|
|
||||||
-- EUC_TW --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'EUC_TW', 'MULE_INTERNAL');
|
|
||||||
-- BIG5 --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'BIG5', 'MULE_INTERNAL');
|
|
||||||
-- MULE_INTERNAL --> EUC_TW
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'EUC_TW');
|
|
||||||
-- MULE_INTERNAL --> BIG5
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'BIG5');
|
|
||||||
-- LATIN2 --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'LATIN2', 'MULE_INTERNAL');
|
|
||||||
-- MULE_INTERNAL --> LATIN2
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'LATIN2');
|
|
||||||
-- WIN1250 --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'WIN1250', 'MULE_INTERNAL');
|
|
||||||
-- MULE_INTERNAL --> WIN1250
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'WIN1250');
|
|
||||||
-- LATIN2 --> WIN1250
|
|
||||||
SELECT CONVERT('foo', 'LATIN2', 'WIN1250');
|
|
||||||
-- WIN1250 --> LATIN2
|
|
||||||
SELECT CONVERT('foo', 'WIN1250', 'LATIN2');
|
|
||||||
-- LATIN1 --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'LATIN1', 'MULE_INTERNAL');
|
|
||||||
-- MULE_INTERNAL --> LATIN1
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'LATIN1');
|
|
||||||
-- LATIN3 --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'LATIN3', 'MULE_INTERNAL');
|
|
||||||
-- MULE_INTERNAL --> LATIN3
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'LATIN3');
|
|
||||||
-- LATIN4 --> MULE_INTERNAL
|
|
||||||
SELECT CONVERT('foo', 'LATIN4', 'MULE_INTERNAL');
|
|
||||||
-- MULE_INTERNAL --> LATIN4
|
|
||||||
SELECT CONVERT('foo', 'MULE_INTERNAL', 'LATIN4');
|
|
||||||
-- SQL_ASCII --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'SQL_ASCII', 'UTF8');
|
|
||||||
-- UTF8 --> SQL_ASCII
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'SQL_ASCII');
|
|
||||||
-- BIG5 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'BIG5', 'UTF8');
|
|
||||||
-- UTF8 --> BIG5
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'BIG5');
|
|
||||||
-- UTF8 --> KOI8R
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'KOI8R');
|
|
||||||
-- KOI8R --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'KOI8R', 'UTF8');
|
|
||||||
-- UTF8 --> WIN1251
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'WIN1251');
|
|
||||||
-- WIN1251 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'WIN1251', 'UTF8');
|
|
||||||
-- UTF8 --> WIN1252
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'WIN1252');
|
|
||||||
-- WIN1252 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'WIN1252', 'UTF8');
|
|
||||||
-- UTF8 --> WIN866
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'WIN866');
|
|
||||||
-- WIN866 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'WIN866', 'UTF8');
|
|
||||||
-- EUC_CN --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'EUC_CN', 'UTF8');
|
|
||||||
-- UTF8 --> EUC_CN
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'EUC_CN');
|
|
||||||
-- EUC_JP --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'EUC_JP', 'UTF8');
|
|
||||||
-- UTF8 --> EUC_JP
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'EUC_JP');
|
|
||||||
-- EUC_KR --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'EUC_KR', 'UTF8');
|
|
||||||
-- UTF8 --> EUC_KR
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'EUC_KR');
|
|
||||||
-- EUC_TW --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'EUC_TW', 'UTF8');
|
|
||||||
-- UTF8 --> EUC_TW
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'EUC_TW');
|
|
||||||
-- GB18030 --> UTF8
|
|
||||||
SELECT CONVERT('Postgres \247\343\247\335\247\340\247\337 \2249\3138 \317\363 \250\246le\2010\2747phant', 'GB18030', 'UTF8');
|
|
||||||
-- UTF8 --> GB18030
|
|
||||||
SELECT CONVERT('Postgres \321\201\320\273\320\276\320\275 \360\237\220\230 \350\261\241 \303\251le\314\201phant', 'UTF-8', 'GB18030');
|
|
||||||
-- GBK --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'GBK', 'UTF8');
|
|
||||||
-- UTF8 --> GBK
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'GBK');
|
|
||||||
-- UTF8 --> LATIN2
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'LATIN2');
|
|
||||||
-- LATIN2 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'LATIN2', 'UTF8');
|
|
||||||
-- UTF8 --> LATIN3
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'LATIN3');
|
|
||||||
-- LATIN3 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'LATIN3', 'UTF8');
|
|
||||||
-- UTF8 --> LATIN4
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'LATIN4');
|
|
||||||
-- LATIN4 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'LATIN4', 'UTF8');
|
|
||||||
-- UTF8 --> LATIN5
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'LATIN5');
|
|
||||||
-- LATIN5 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'LATIN5', 'UTF8');
|
|
||||||
-- UTF8 --> LATIN6
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'LATIN6');
|
|
||||||
-- LATIN6 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'LATIN6', 'UTF8');
|
|
||||||
-- UTF8 --> LATIN7
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'LATIN7');
|
|
||||||
-- LATIN7 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'LATIN7', 'UTF8');
|
|
||||||
-- UTF8 --> LATIN8
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'LATIN8');
|
|
||||||
-- LATIN8 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'LATIN8', 'UTF8');
|
|
||||||
-- UTF8 --> LATIN9
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'LATIN9');
|
|
||||||
-- LATIN9 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'LATIN9', 'UTF8');
|
|
||||||
-- UTF8 --> LATIN10
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'LATIN10');
|
|
||||||
-- LATIN10 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'LATIN10', 'UTF8');
|
|
||||||
-- UTF8 --> ISO-8859-5
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'ISO-8859-5');
|
|
||||||
-- ISO-8859-5 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'ISO-8859-5', 'UTF8');
|
|
||||||
-- UTF8 --> ISO-8859-6
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'ISO-8859-6');
|
|
||||||
-- ISO-8859-6 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'ISO-8859-6', 'UTF8');
|
|
||||||
-- UTF8 --> ISO-8859-7
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'ISO-8859-7');
|
|
||||||
-- ISO-8859-7 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'ISO-8859-7', 'UTF8');
|
|
||||||
-- UTF8 --> ISO-8859-8
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'ISO-8859-8');
|
|
||||||
-- ISO-8859-8 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'ISO-8859-8', 'UTF8');
|
|
||||||
-- LATIN1 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'LATIN1', 'UTF8');
|
|
||||||
-- UTF8 --> LATIN1
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'LATIN1');
|
|
||||||
-- JOHAB --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'JOHAB', 'UTF8');
|
|
||||||
-- UTF8 --> JOHAB
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'JOHAB');
|
|
||||||
-- SJIS --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'SJIS', 'UTF8');
|
|
||||||
-- UTF8 --> SJIS
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'SJIS');
|
|
||||||
-- WIN1258 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'WIN1258', 'UTF8');
|
|
||||||
-- UTF8 --> WIN1258
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'WIN1258');
|
|
||||||
-- UHC --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'UHC', 'UTF8');
|
|
||||||
-- UTF8 --> UHC
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'UHC');
|
|
||||||
-- UTF8 --> WIN1250
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'WIN1250');
|
|
||||||
-- WIN1250 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'WIN1250', 'UTF8');
|
|
||||||
-- UTF8 --> WIN1256
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'WIN1256');
|
|
||||||
-- WIN1256 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'WIN1256', 'UTF8');
|
|
||||||
-- UTF8 --> WIN874
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'WIN874');
|
|
||||||
-- WIN874 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'WIN874', 'UTF8');
|
|
||||||
-- UTF8 --> WIN1253
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'WIN1253');
|
|
||||||
-- WIN1253 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'WIN1253', 'UTF8');
|
|
||||||
-- UTF8 --> WIN1254
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'WIN1254');
|
|
||||||
-- WIN1254 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'WIN1254', 'UTF8');
|
|
||||||
-- UTF8 --> WIN1255
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'WIN1255');
|
|
||||||
-- WIN1255 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'WIN1255', 'UTF8');
|
|
||||||
-- UTF8 --> WIN1257
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'WIN1257');
|
|
||||||
-- WIN1257 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'WIN1257', 'UTF8');
|
|
||||||
-- UTF8 --> EUC_JIS_2004
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'EUC_JIS_2004');
|
|
||||||
-- EUC_JIS_2004 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'EUC_JIS_2004', 'UTF8');
|
|
||||||
-- UTF8 --> SHIFT_JIS_2004
|
|
||||||
SELECT CONVERT('foo', 'UTF8', 'SHIFT_JIS_2004');
|
|
||||||
-- SHIFT_JIS_2004 --> UTF8
|
|
||||||
SELECT CONVERT('foo', 'SHIFT_JIS_2004', 'UTF8');
|
|
||||||
-- EUC_JIS_2004 --> SHIFT_JIS_2004
|
|
||||||
SELECT CONVERT('foo', 'EUC_JIS_2004', 'SHIFT_JIS_2004');
|
|
||||||
-- SHIFT_JIS_2004 --> EUC_JIS_2004
|
|
||||||
SELECT CONVERT('foo', 'SHIFT_JIS_2004', 'EUC_JIS_2004');
|
|
||||||
--
|
--
|
||||||
-- return to the super user
|
-- return to the super user
|
||||||
--
|
--
|
||||||
|
|
Loading…
Reference in New Issue