@@ -58,7 +58,7 @@ JDBC 连接器不是二进制发行版的一部分,请查阅[这里]({{< ref "
5858| CrateDB | ` io.crate ` | ` crate-jdbc ` | [ 下载] ( https://repo1.maven.org/maven2/io/crate/crate-jdbc/ ) |
5959| Db2 | ` com.ibm.db2.jcc ` | ` db2jcc ` | [ 下载] ( https://www.ibm.com/support/pages/download-db2-fix-packs-version-db2-linux-unix-and-windows ) |
6060| Trino | ` io.trino ` | ` trino-jdbc ` | [ 下载] ( https://repo1.maven.org/maven2/io/trino/trino-jdbc/ ) |
61-
61+ | OceanBase | ` com.oceanbase ` | ` oceanbase-client ` | [ 下载 ] ( https://repo1.maven.org/maven2/com/oceanbase/oceanbase-client/ ) |
6262
6363当前,JDBC 连接器和驱动不在 Flink 二进制发布包中,请参阅[ 这里] ({{< ref "docs/dev/configuration/overview" >}})了解在集群上执行时如何连接它们。
6464
@@ -141,6 +141,13 @@ ON myTopic.key = MyUserTable.id;
141141 <td>String</td>
142142 <td>用于连接到此 URL 的 JDBC 驱动类名,如果不设置,将自动从 URL 中推导。</td>
143143 </tr>
144+ <tr>
145+ <td><h5>compatible-mode</h5></td>
146+ <td>可选</td>
147+ <td style="word-wrap: break-word;">(none)</td>
148+ <td>String</td>
149+ <td>数据库的兼容模式。</td>
150+ </tr>
144151 <tr>
145152 <td><h5>username</h5></td>
146153 <td>可选</td>
@@ -654,7 +661,7 @@ SELECT * FROM `custom_schema.test_table2`;
654661
655662数据类型映射
656663----------------
657- Flink 支持连接到多个使用方言(dialect)的数据库,如 MySQL、Oracle、PostgreSQL、CrateDB, Derby、Db2、 SQL Server 等。其中,Derby 通常是用于测试目的。下表列出了从关系数据库数据类型到 Flink SQL 数据类型的类型映射,映射表可以使得在 Flink 中定义 JDBC 表更加简单。
664+ Flink 支持连接到多个使用方言(dialect)的数据库,如 MySQL、Oracle、PostgreSQL、CrateDB, Derby、Db2、 SQL Server、OceanBase 等。其中,Derby 通常是用于测试目的。下表列出了从关系数据库数据类型到 Flink SQL 数据类型的类型映射,映射表可以使得在 Flink 中定义 JDBC 表更加简单。
658665
659666<table class =" table table-bordered " >
660667 <thead>
@@ -666,6 +673,8 @@ Flink 支持连接到多个使用方言(dialect)的数据库,如 MySQL、O
666673 <th class="text-left"><a href="https://docs.microsoft.com/en-us/sql/t-sql/data-types/data-types-transact-sql?view=sql-server-ver16">SQL Server type</a></th>
667674 <th class="text-left"><a href="https://www.ibm.com/docs/en/db2-for-zos/12?topic=columns-data-types">Db2</a></th>
668675 <th class="text-left"><a href="https://trino.io/docs/current/language/types.html">Trino type</a></th>
676+ <th class="text-left"><a href="https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000222199">OceanBase MySQL mode type</a></th>
677+ <th class="text-left"><a href="https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000222012">OceanBase Oracle mode type</a></th>
669678 <th class="text-left"><a href="{{< ref "docs/dev/table/types" >}}">Flink SQL type</a></th>
670679 </tr>
671680 </thead>
@@ -679,6 +688,8 @@ Flink 支持连接到多个使用方言(dialect)的数据库,如 MySQL、O
679688 <td></td>
680689 <td><code>TINYINT</code></td>
681690 <td><code>TINYINT</code></td>
691+ <td></td>
692+ <td><code>TINYINT</code></td>
682693 </tr>
683694 <tr>
684695 <td>
@@ -696,6 +707,11 @@ Flink 支持连接到多个使用方言(dialect)的数据库,如 MySQL、O
696707 <td><code>SMALLINT</code></td>
697708 <td><code>SMALLINT</code></td>
698709 <td><code>SMALLINT</code></td>
710+ <td>
711+ <code>SMALLINT</code><br>
712+ <code>TINYINT UNSIGNED</code></td>
713+ <td></td>
714+ <td><code>SMALLINT</code></td>
699715 </tr>
700716 <tr>
701717 <td>
@@ -711,6 +727,12 @@ Flink 支持连接到多个使用方言(dialect)的数据库,如 MySQL、O
711727 <code>INT</code></td>
712728 <td><code>INT</code></td>
713729 <td><code>INTEGER</code></td>
730+ <td><code>INTEGER</code></td>
731+ <td>
732+ <code>INT</code><br>
733+ <code>MEDIUMINT</code><br>
734+ <code>SMALLINT UNSIGNED</code></td>
735+ <td></td>
714736 <td><code>INT</code></td>
715737 </tr>
716738 <tr>
@@ -727,24 +749,23 @@ Flink 支持连接到多个使用方言(dialect)的数据库,如 MySQL、O
727749 <td><code>BIGINT</code></td>
728750 <td></td>
729751 <td><code>BIGINT</code></td>
752+ <td>
753+ <code>BIGINT</code><br>
754+ <code>INT UNSIGNED</code></td>
755+ <td></td>
730756 <td><code>BIGINT</code></td>
731757 </tr>
732758 <tr >
733759 <td><code>BIGINT UNSIGNED</code></td>
734760 <td></td>
735761 <td></td>
736762 <td></td>
763+ <td></td>
737764 <td></td>
738765 <td></td>
739- <td><code>DECIMAL(20, 0)</code></td>
740- </tr>
741- <tr>
742- <td><code>BIGINT</code></td>
743- <td></td>
744- <td><code>BIGINT</code></td>
766+ <td><code>BIGINT UNSIGNED</code></td>
745767 <td></td>
746- <td><code>BIGINT</code></td>
747- <td><code>BIGINT</code></td>
768+ <td><code>DECIMAL(20, 0)</code></td>
748769 </tr>
749770 <tr>
750771 <td><code>FLOAT</code></td>
@@ -760,6 +781,9 @@ Flink 支持连接到多个使用方言(dialect)的数据库,如 MySQL、O
760781 <td><code>REAL</code></td>
761782 <td><code>FLOAT</code></td>
762783 <td><code>FLOAT</code></td>
784+ <td>
785+ <code>BINARY_FLOAT</code></td>
786+ <td><code>FLOAT</code></td>
763787 </tr>
764788 <tr>
765789 <td>
@@ -775,6 +799,9 @@ Flink 支持连接到多个使用方言(dialect)的数据库,如 MySQL、O
775799 <td><code>FLOAT</code></td>
776800 <td><code>DOUBLE</code></td>
777801 <td><code>DOUBLE</code></td>
802+ <td><code>DOUBLE</code></td>
803+ <td><code>BINARY_DOUBLE</code></td>
804+ <td><code>DOUBLE</code></td>
778805 </tr>
779806 <tr>
780807 <td>
@@ -796,6 +823,12 @@ Flink 支持连接到多个使用方言(dialect)的数据库,如 MySQL、O
796823 <code>DECIMAL(p, s)</code>
797824 </td>
798825 <td><code>DECIMAL(p, s)</code></td>
826+ <td>
827+ <code>NUMERIC(p, s)</code><br>
828+ <code>DECIMAL(p, s)</code></td>
829+ <td>
830+ <code>FLOAT(s)</code><br>
831+ <code>NUMBER(p, s)</code></td>
799832 <td><code>DECIMAL(p, s)</code></td>
800833 </tr>
801834 <tr>
@@ -807,6 +840,11 @@ Flink 支持连接到多个使用方言(dialect)的数据库,如 MySQL、O
807840 <td><code>BOOLEAN</code></td>
808841 <td><code>BIT</code></td>
809842 <td><code>BOOLEAN</code></td>
843+ <td></td>
844+ <td>
845+ <code>BOOLEAN</code><br>
846+ <code>TINYINT(1)</code></td>
847+ <td></td>
810848 <td><code>BOOLEAN</code></td>
811849 </tr>
812850 <tr>
@@ -817,6 +855,9 @@ Flink 支持连接到多个使用方言(dialect)的数据库,如 MySQL、O
817855 <td><code>DATE</code></td>
818856 <td><code>DATE</code></td>
819857 <td><code>DATE</code></td>
858+ <td><code>DATE</code></td>
859+ <td><code>DATE</code></td>
860+ <td><code>DATE</code></td>
820861 </tr>
821862 <tr>
822863 <td><code>TIME [(p)]</code></td>
@@ -826,6 +867,8 @@ Flink 支持连接到多个使用方言(dialect)的数据库,如 MySQL、O
826867 <td><code>TIME(0)</code></td>
827868 <td><code>TIME</code></td>
828869 <td><code>TIME_WITHOUT_TIME_ZONE</code></td>
870+ <td><code>TIME [(p)]</code></td>
871+ <td><code>DATE</code></td>
829872 <td><code>TIME [(p)] [WITHOUT TIMEZONE]</code></td>
830873 </tr>
831874 <tr>
@@ -839,6 +882,8 @@ Flink 支持连接到多个使用方言(dialect)的数据库,如 MySQL、O
839882 </td>
840883 <td><code>TIMESTAMP [(p)]</code></td>
841884 <td><code>TIMESTAMP_WITHOUT_TIME_ZONE</code></td>
885+ <td><code>DATETIME [(p)]</code></td>
886+ <td><code>TIMESTAMP [(p)] [WITHOUT TIMEZONE]</code></td>
842887 <td><code>TIMESTAMP [(p)] [WITHOUT TIMEZONE]</code></td>
843888 </tr>
844889 <tr>
@@ -878,6 +923,15 @@ Flink 支持连接到多个使用方言(dialect)的数据库,如 MySQL、O
878923 <code>CHAR</code>
879924 <code>VARCHAR</code>
880925 </td>
926+ <td>
927+ <code>CHAR(n)</code><br>
928+ <code>VARCHAR(n)</code><br>
929+ <code>TEXT</code></td>
930+ <td>
931+ <code>CHAR(n)</code><br>
932+ <code>NCHAR(n)</code><br>
933+ <code>VARCHAR2(n)</code><br>
934+ <code>CLOB</code></td>
881935 <td><code>STRING</code></td>
882936 </tr>
883937 <tr>
@@ -896,6 +950,13 @@ Flink 支持连接到多个使用方言(dialect)的数据库,如 MySQL、O
896950 </td>
897951 <td></td>
898952 <td><code>VARBINARY</code></td>
953+ <td>
954+ <code>BINARY</code><br>
955+ <code>VARBINARY</code><br>
956+ <code>BLOB</code></td>
957+ <td>
958+ <code>RAW(s)</code><br>
959+ <code>BLOB</code></td>
899960 <td><code>BYTES</code></td>
900961 </tr>
901962 <tr>
@@ -906,6 +967,8 @@ Flink 支持连接到多个使用方言(dialect)的数据库,如 MySQL、O
906967 <td></td>
907968 <td></td>
908969 <td><code>ARRAY</code></td>
970+ <td></td>
971+ <td></td>
909972 <td><code>ARRAY</code></td>
910973 </tr>
911974 </tbody>
0 commit comments