This is an automated email from the ASF dual-hosted git repository.

davidzollo pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/seatunnel.git


The following commit(s) were added to refs/heads/dev by this push:
     new 7f20312c83 [Docs][Connector-V2] Improve DB2 Kingbase and Vertica docs 
(#11361)
7f20312c83 is described below

commit 7f20312c835a864771451cda4687d9ade7b4dab5
Author: Daniel Carter <[email protected]>
AuthorDate: Tue Jul 7 18:03:58 2026 +0800

    [Docs][Connector-V2] Improve DB2 Kingbase and Vertica docs (#11361)
---
 docs/en/connectors/sink/DB2.md        | 38 +++++++++++----
 docs/en/connectors/sink/Kingbase.md   | 27 +++++++++--
 docs/en/connectors/sink/Vertica.md    | 29 ++++++------
 docs/en/connectors/source/DB2.md      | 11 ++---
 docs/en/connectors/source/Kingbase.md | 20 +++++++-
 docs/zh/connectors/sink/DB2.md        | 87 ++++++++++++++++++++++-------------
 docs/zh/connectors/sink/Kingbase.md   | 29 +++++++++---
 docs/zh/connectors/sink/Vertica.md    | 25 +++++-----
 docs/zh/connectors/source/DB2.md      | 18 ++++----
 docs/zh/connectors/source/Kingbase.md | 19 +++++++-
 10 files changed, 205 insertions(+), 98 deletions(-)

diff --git a/docs/en/connectors/sink/DB2.md b/docs/en/connectors/sink/DB2.md
index 22418f6565..12b79d0f8c 100644
--- a/docs/en/connectors/sink/DB2.md
+++ b/docs/en/connectors/sink/DB2.md
@@ -32,13 +32,13 @@ semantics (using XA transaction guarantee).
 
 > Use `Xa transactions` to ensure `exactly-once`. So only support 
 > `exactly-once` for the database which is
 > support `Xa transactions`. You can set `is_exactly_once=true` to enable it.
-- [ ] [timer flush](../../introduction/concepts/connector-v2-features.md)
+- [x] [timer flush](../../introduction/concepts/connector-v2-features.md)
 
 ## Supported DataSource Info
 
 | Datasource |                    Supported Versions                    |      
       Driver             |                Url                |                 
                Maven                                 |
 
|------------|----------------------------------------------------------|--------------------------------|-----------------------------------|-----------------------------------------------------------------------|
-| DB2        | Different dependency version has different driver class. | 
com.ibm.db2.jdbc.app.DB2Driver | jdbc:db2://127.0.0.1:50000/dbname | 
[Download](https://mvnrepository.com/artifact/com.ibm.db2.jcc/db2jcc) |
+| DB2        | Different dependency version has different driver class. | 
com.ibm.db2.jcc.DB2Driver | jdbc:db2://127.0.0.1:50000/dbname | 
[Download](https://mvnrepository.com/artifact/com.ibm.db2.jcc/db2jcc) |
 
 ## Data Type Mapping
 
@@ -63,7 +63,7 @@ semantics (using XA transaction guarantee).
 |                   Name                    |  Type   | Required | Default |   
                                                                                
                               Description                                      
                                                                             |
 
|-------------------------------------------|---------|----------|---------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
 | url                                       | String  | Yes      | -       | 
The URL of the JDBC connection. Refer to a case: 
jdbc:db2://127.0.0.1:50000/dbname                                               
                                                                                
                              |
-| driver                                    | String  | Yes      | -       | 
The jdbc class name used to connect to the remote data source,<br/> if you use 
DB2 the value is `com.ibm.db2.jdbc.app.DB2Driver`.                              
                                                                                
|
+| driver                                    | String  | Yes      | -       | 
The jdbc class name used to connect to the remote data source,<br/> if you use 
DB2 the value is `com.ibm.db2.jcc.DB2Driver`.                                   
                                                                           |
 | username                                      | String  | No       | -       
| Connection instance user name                                                 
                                                                                
                                                                                
 |
 | password                                  | String  | No       | -       | 
Connection instance password                                                    
                                                                                
                                                                               |
 | query                                     | String  | No       | -       | 
Use this sql write upstream input datas to database. e.g `INSERT ...`,`query` 
have the higher priority                                                        
                                                                                
 |
@@ -73,14 +73,16 @@ semantics (using XA transaction guarantee).
 | connection_check_timeout_sec              | Int     | No       | 30      | 
The time in seconds to wait for the database operation used to validate the 
connection to complete.                                                         
                                                                                
   |
 | max_retries                               | Int     | No       | 0       | 
The number of retries to submit failed (executeBatch)                           
                                                                                
                                                                               |
 | batch_size                                | Int     | No       | 1000    | 
For batch writing, when the number of buffered records reaches the number of 
`batch_size` or the time reaches `checkpoint.interval`<br/>, the data will be 
flushed into the database                                                       
    |
+| batch_interval_ms                         | Long    | No       | 0       | 
Write-triggered flush interval in milliseconds. `0` disables interval flushing. 
When the value is greater than `0`, each write checks elapsed time and flushes 
synchronously if the interval has passed. |
 | is_exactly_once                           | Boolean | No       | false   | 
Whether to enable exactly-once semantics, which will use Xa transactions. If 
on, you need to<br/>set `xa_data_source_class_name`.                            
                                                                                
  |
 | generate_sink_sql                         | Boolean | No       | false   | 
Generate sql statements based on the database table you want to write to        
                                                                                
                                                                               |
-| xa_data_source_class_name                 | String  | No       | -       | 
The xa data source class name of the database Driver, for example, DB2 is 
`com.db2.cj.jdbc.Db2XADataSource`, and<br/>please refer to appendix for other 
data sources                                                                    
       |
+| xa_data_source_class_name                 | String  | No       | -       | 
The xa data source class name of the database Driver, for example, DB2 is 
`com.ibm.db2.jcc.DB2XADataSource`, and<br/>please refer to appendix for other 
data sources                                                                    
       |
 | max_commit_attempts                       | Int     | No       | 3       | 
The number of retries for transaction commit failures                           
                                                                                
                                                                               |
 | transaction_timeout_sec                   | Int     | No       | -1      | 
The timeout after the transaction is opened, the default is -1 (never timeout). 
Note that setting the timeout may affect<br/>exactly-once semantics             
                                                                               |
 | auto_commit                               | Boolean | No       | true    | 
Automatic transaction commit is enabled by default                              
                                                                                
                                                                               |
 | properties                                | Map     | No       | -       | 
Additional connection configuration parameters,when properties and URL have the 
same parameters, the priority is determined by the <br/>specific implementation 
of the driver. For example, in MySQL, properties take precedence over the URL. |
 | common-options                            |         | no       | -       | 
Sink plugin common parameters, please refer to [Sink Common 
Options](../common-options/sink-common-options.md) for details                  
                                                                                
                                  |
+| enable_upsert                             | Boolean | No       | true    | 
Enable upsert when `primary_keys` exists. If the input does not contain 
duplicate keys, setting this parameter to `false` can speed up data import. |
 
 ### Tips
 
@@ -124,7 +126,7 @@ transform {
 sink {
     jdbc {
         url = "jdbc:db2://127.0.0.1:50000/dbname"
-        driver = "com.ibm.db2.jdbc.app.DB2Driver"
+        driver = "com.ibm.db2.jcc.DB2Driver"
         username = "root"
         password = "123456"
         query = "insert into test_table(name,age) values(?,?)"
@@ -142,7 +144,7 @@ sink {
 sink {
     jdbc {
         url = "jdbc:db2://127.0.0.1:50000/dbname"
-        driver = "com.ibm.db2.jdbc.app.DB2Driver"
+        driver = "com.ibm.db2.jcc.DB2Driver"
         username = "root"
         password = "123456"
         # Automatically generate sql statements based on database table names
@@ -161,7 +163,7 @@ sink {
 sink {
     jdbc {
         url = "jdbc:db2://127.0.0.1:50000/dbname"
-        driver = "com.ibm.db2.jdbc.app.DB2Driver"
+        driver = "com.ibm.db2.jcc.DB2Driver"
     
         max_retries = 0
         username = "root"
@@ -170,7 +172,27 @@ sink {
     
         is_exactly_once = "true"
     
-        xa_data_source_class_name = "com.db2.cj.jdbc.Db2XADataSource"
+        xa_data_source_class_name = "com.ibm.db2.jcc.DB2XADataSource"
+    }
+}
+```
+
+### Generate Sink SQL With Upsert
+
+> When `generate_sink_sql = true` and `primary_keys` is set, DB2 uses a 
generated `MERGE` statement for upsert writes. If the input is insert-only and 
duplicate keys are impossible, set `enable_upsert = false` to use a faster 
insert path.
+
+```
+sink {
+    Jdbc {
+        url = "jdbc:db2://127.0.0.1:50000/E2E"
+        driver = "com.ibm.db2.jcc.DB2Driver"
+        username = "db2inst1"
+        password = "123456"
+        database = "E2E"
+        table = "SINK"
+        generate_sink_sql = true
+        enable_upsert = true
+        primary_keys = ["C_INT"]
     }
 }
 ```
diff --git a/docs/en/connectors/sink/Kingbase.md 
b/docs/en/connectors/sink/Kingbase.md
index 7bf440d8ad..7505637c30 100644
--- a/docs/en/connectors/sink/Kingbase.md
+++ b/docs/en/connectors/sink/Kingbase.md
@@ -18,7 +18,7 @@ import ChangeLog from '../changelog/connector-jdbc.md';
 
 - [ ] [exactly-once](../../introduction/concepts/connector-v2-features.md)
 - [ ] [cdc](../../introduction/concepts/connector-v2-features.md)
-- [ ] [timer flush](../../introduction/concepts/connector-v2-features.md)
+- [x] [timer flush](../../introduction/concepts/connector-v2-features.md)
 
 ## Description
 
@@ -58,9 +58,9 @@ import ChangeLog from '../changelog/connector-jdbc.md';
 
 |                   Name                    |  Type   | Required | Default |   
                                                                                
                              Description                                       
                                                                           |
 
|-------------------------------------------|---------|----------|---------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| url                                       | String  | Yes      | -       | 
The URL of the JDBC connection. Refer to a case: 
jdbc:db2://127.0.0.1:50000/dbname                                               
                                                                                
                            |
-| driver                                    | String  | Yes      | -       | 
The jdbc class name used to connect to the remote data source,<br/> if you use 
DB2 the value is `com.ibm.db2.jdbc.app.DB2Driver`.                              
                                                                              |
-| username                                      | String  | No       | -       
| Connection instance user name                                                 
                                                                                
                                                                               |
+| url                                       | String  | Yes      | -       | 
The URL of the JDBC connection. Refer to a case: 
jdbc:kingbase8://localhost:54321/db_test                                        
                                                                                
                                   |
+| driver                                    | String  | Yes      | -       | 
The jdbc class name used to connect to the remote data source,<br/> if you use 
Kingbase the value is `com.kingbase8.Driver`.                                   
                                                                         |
+| username                                      | String  | No       | -       
| Connection instance user name. The old key `user` is still accepted as a 
fallback.                                                                       
                                                                                
                                                         |
 | password                                  | String  | No       | -       | 
Connection instance password                                                    
                                                                                
                                                                             |
 | query                                     | String  | No       | -       | 
Use this sql write upstream input datas to database. e.g `INSERT ...`,`query` 
have the higher priority                                                        
                                                                               |
 | database                                  | String  | No       | -       | 
Use this `database` and `table-name` auto-generate sql and receive upstream 
input datas write to database.<br/>This option is mutually exclusive with 
`query` and has a higher priority.                                              
       |
@@ -69,6 +69,7 @@ import ChangeLog from '../changelog/connector-jdbc.md';
 | connection_check_timeout_sec              | Int     | No       | 30      | 
The time in seconds to wait for the database operation used to validate the 
connection to complete.                                                         
                                                                                
 |
 | max_retries                               | Int     | No       | 0       | 
The number of retries to submit failed (executeBatch)                           
                                                                                
                                                                             |
 | batch_size                                | Int     | No       | 1000    | 
For batch writing, when the number of buffered records reaches the number of 
`batch_size` or the time reaches `checkpoint.interval`<br/>, the data will be 
flushed into the database                                                       
  |
+| batch_interval_ms                         | Long    | No       | 0       | 
Write-triggered flush interval in milliseconds. `0` disables interval flushing. 
When the value is greater than `0`, each write checks elapsed time and flushes 
synchronously if the interval has passed. |
 | is_exactly_once                           | Boolean | No       | false   | 
Whether to enable exactly-once semantics, which will use Xa transactions. If 
on, you need to<br/>set `xa_data_source_class_name`. Kingbase currently does 
not support                                                                     
   |
 | generate_sink_sql                         | Boolean | No       | false   | 
Generate sql statements based on the database table you want to write to        
                                                                                
                                                                             |
 | xa_data_source_class_name                 | String  | No       | -       | 
The xa data source class name of the database Driver,Kingbase currently does 
not support                                                                     
                                                                                
|
@@ -168,6 +169,22 @@ sink {
 }
 ```
 
+### Write To A Schema Table
+
+> When writing with a custom `query`, the placeholder count must match the 
upstream fields. Kingbase schema-qualified tables can be written as 
`public.table_name`.
+
+```
+sink {
+  Jdbc {
+    driver = "com.kingbase8.Driver"
+    url = "jdbc:kingbase8://localhost:54321/test"
+    user = "SYSTEM"
+    password = "123456"
+    query = "INSERT INTO public.e2e_table_sink (c1, c2, c3) VALUES (?, ?, ?)"
+  }
+}
+```
+
 ## Changelog
 
-<ChangeLog />
\ No newline at end of file
+<ChangeLog />
diff --git a/docs/en/connectors/sink/Vertica.md 
b/docs/en/connectors/sink/Vertica.md
index 9b01de06b8..d5dee19e57 100644
--- a/docs/en/connectors/sink/Vertica.md
+++ b/docs/en/connectors/sink/Vertica.md
@@ -27,12 +27,11 @@ semantics (using XA transaction guarantee).
 
 ## Key Features
 
-- [x] [exactly-once](../../introduction/concepts/connector-v2-features.md)
+- [ ] [exactly-once](../../introduction/concepts/connector-v2-features.md)
 - [ ] [cdc](../../introduction/concepts/connector-v2-features.md)
 
-> Use `Xa transactions` to ensure `exactly-once`. So only support 
`exactly-once` for the database which is
-> support `Xa transactions`. You can set `is_exactly_once=true` to enable it.
-- [ ] [timer flush](../../introduction/concepts/connector-v2-features.md)
+> Vertica is listed without a JDBC XA data source in the shared JDBC appendix, 
so this connector should be used with the default `is_exactly_once=false`.
+- [x] [timer flush](../../introduction/concepts/connector-v2-features.md)
 
 ## Supported DataSource Info
 
@@ -70,7 +69,7 @@ semantics (using XA transaction guarantee).
 |                   Name                    |  Type   | Required | Default |   
                                                                                
                               Description                                      
                                                                             |
 
|-------------------------------------------|---------|----------|---------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
 | url                                       | String  | Yes      | -       | 
The URL of the JDBC connection. Refer to a case: 
jdbc:vertica://localhost:5433/vertica                                           
                                                                                
                              |
-| driver                                    | String  | Yes      | -       | 
The jdbc class name used to connect to the remote data source,<br/> if you use 
Vertical the value is `com.vertica.jdbc.Driver`.                                
                                                                                
|
+| driver                                    | String  | Yes      | -       | 
The jdbc class name used to connect to the remote data source,<br/> if you use 
Vertica the value is `com.vertica.jdbc.Driver`.                                 
                                                                               |
 | username                                      | String  | No       | -       
| Connection instance user name                                                 
                                                                                
                                                                                
 |
 | password                                  | String  | No       | -       | 
Connection instance password                                                    
                                                                                
                                                                               |
 | query                                     | String  | No       | -       | 
Use this sql write upstream input datas to database. e.g `INSERT ...`,`query` 
have the higher priority                                                        
                                                                                
 |
@@ -80,9 +79,10 @@ semantics (using XA transaction guarantee).
 | connection_check_timeout_sec              | Int     | No       | 30      | 
The time in seconds to wait for the database operation used to validate the 
connection to complete.                                                         
                                                                                
   |
 | max_retries                               | Int     | No       | 0       | 
The number of retries to submit failed (executeBatch)                           
                                                                                
                                                                               |
 | batch_size                                | Int     | No       | 1000    | 
For batch writing, when the number of buffered records reaches the number of 
`batch_size` or the time reaches `checkpoint.interval`<br/>, the data will be 
flushed into the database                                                       
    |
+| batch_interval_ms                         | Long    | No       | 0       | 
Write-triggered flush interval in milliseconds. `0` disables interval flushing. 
When the value is greater than `0`, each write checks elapsed time and flushes 
synchronously if the interval has passed. |
 | is_exactly_once                           | Boolean | No       | false   | 
Whether to enable exactly-once semantics, which will use Xa transactions. If 
on, you need to<br/>set `xa_data_source_class_name`.                            
                                                                                
  |
 | generate_sink_sql                         | Boolean | No       | false   | 
Generate sql statements based on the database table you want to write to        
                                                                                
                                                                               |
-| xa_data_source_class_name                 | String  | No       | -       | 
The xa data source class name of the database Driver, for example, vertical is 
`com.vertical.cj.jdbc.VerticalXADataSource`, and<br/>please refer to appendix 
for other data sources                                                          
  |
+| xa_data_source_class_name                 | String  | No       | -       | 
The xa data source class name of the database Driver. Vertica does not provide 
a documented value in the shared JDBC appendix, so keep `is_exactly_once=false` 
unless your driver provides a compatible XA data source.                        
                                    |
 | max_commit_attempts                       | Int     | No       | 3       | 
The number of retries for transaction commit failures                           
                                                                                
                                                                               |
 | transaction_timeout_sec                   | Int     | No       | -1      | 
The timeout after the transaction is opened, the default is -1 (never timeout). 
Note that setting the timeout may affect<br/>exactly-once semantics             
                                                                               |
 | auto_commit                               | Boolean | No       | true    | 
Automatic transaction commit is enabled by default                              
                                                                                
                                                                               |
@@ -161,28 +161,25 @@ sink {
 }
 ```
 
-### Exactly-once
+### Generate Sink SQL With Upsert
 
-> For accurate write scene we guarantee accurate once
+> When `generate_sink_sql = true` and `primary_keys` is set, Vertica uses a 
generated `MERGE` statement for upsert writes. This is different from XA 
exactly-once; keep `is_exactly_once=false` unless your Vertica driver provides 
a compatible XA data source.
 
 ```
 sink {
     jdbc {
         url = "jdbc:vertica://localhost:5433/vertica"
         driver = "com.vertica.jdbc.Driver"
-    
-        max_retries = 0
         username = "root"
         password = "123456"
-        query = "insert into test_table(name,age) values(?,?)"
-    
-        is_exactly_once = "true"
-    
-        xa_data_source_class_name = "com.vertical.cj.jdbc.VerticalXADataSource"
+        generate_sink_sql = true
+        database = "public"
+        table = "test_table"
+        primary_keys = ["id"]
     }
 }
 ```
 
 ## Changelog
 
-<ChangeLog />
\ No newline at end of file
+<ChangeLog />
diff --git a/docs/en/connectors/source/DB2.md b/docs/en/connectors/source/DB2.md
index ac5a3366b0..bdf904ad81 100644
--- a/docs/en/connectors/source/DB2.md
+++ b/docs/en/connectors/source/DB2.md
@@ -39,7 +39,7 @@ Read external data source data through JDBC.
 
 | Datasource |                    Supported versions                    |      
       Driver             |                Url                |                 
                Maven                                 |
 
|------------|----------------------------------------------------------|--------------------------------|-----------------------------------|-----------------------------------------------------------------------|
-| DB2        | Different dependency version has different driver class. | 
com.ibm.db2.jdbc.app.DB2Driver | jdbc:db2://127.0.0.1:50000/dbname | 
[Download](https://mvnrepository.com/artifact/com.ibm.db2.jcc/db2jcc) |
+| DB2        | Different dependency version has different driver class. | 
com.ibm.db2.jcc.DB2Driver | jdbc:db2://127.0.0.1:50000/dbname | 
[Download](https://mvnrepository.com/artifact/com.ibm.db2.jcc/db2jcc) |
 
 ## Database Dependency
 
@@ -69,7 +69,7 @@ Read external data source data through JDBC.
 |             Name             |    Type    | Required |     Default     |     
                                                                                
                                       Description                              
                                                                                
              |
 
|------------------------------|------------|----------|-----------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
 | url                          | String     | Yes      | -               | The 
URL of the JDBC connection. Refer to a case: jdbc:db2://127.0.0.1:50000/dbname  
                                                                                
                                                                                
              |
-| driver                       | String     | Yes      | -               | The 
jdbc class name used to connect to the remote data source,<br/> if you use db2 
the value is `com.ibm.db2.jdbc.app.DB2Driver`.                                  
                                                                                
               |
+| driver                       | String     | Yes      | -               | The 
jdbc class name used to connect to the remote data source,<br/> if you use db2 
the value is `com.ibm.db2.jcc.DB2Driver`.                                       
                                                                                
          |
 | username                         | String     | No       | -               | 
Connection instance user name                                                   
                                                                                
                                                                                
                  |
 | password                     | String     | No       | -               | 
Connection instance password                                                    
                                                                                
                                                                                
                  |
 | query                        | String     | Yes      | -               | 
Query statement                                                                 
                                                                                
                                                                                
                  |
@@ -101,7 +101,7 @@ env {
 source{
     Jdbc {
         url = "jdbc:db2://127.0.0.1:50000/dbname"
-        driver = "com.ibm.db2.jdbc.app.DB2Driver"
+        driver = "com.ibm.db2.jcc.DB2Driver"
         connection_check_timeout_sec = 100
         username = "root"
         password = "123456"
@@ -127,7 +127,7 @@ sink {
 source {
     Jdbc {
         url = "jdbc:db2://127.0.0.1:50000/dbname"
-        driver = "com.ibm.db2.jdbc.app.DB2Driver"
+        driver = "com.ibm.db2.jcc.DB2Driver"
         connection_check_timeout_sec = 100
         username = "root"
         password = "123456"
@@ -149,7 +149,7 @@ source {
 source {
     Jdbc {
         url = "jdbc:db2://127.0.0.1:50000/dbname"
-        driver = "com.ibm.db2.jdbc.app.DB2Driver"
+        driver = "com.ibm.db2.jcc.DB2Driver"
         connection_check_timeout_sec = 100
         username = "root"
         password = "123456"
@@ -168,4 +168,3 @@ source {
 ## Changelog
 
 <ChangeLog />
-
diff --git a/docs/en/connectors/source/Kingbase.md 
b/docs/en/connectors/source/Kingbase.md
index 8da7252ab8..d15f73ddcb 100644
--- a/docs/en/connectors/source/Kingbase.md
+++ b/docs/en/connectors/source/Kingbase.md
@@ -61,7 +61,7 @@ Read external data source data through JDBC.
 
|------------------------------|------------|----------|-----------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
 | url                          | String     | Yes      | -               | The 
URL of the JDBC connection. Refer to a case: 
jdbc:kingbase8://localhost:54321/test                                           
                                                                                
                                                     |
 | driver                       | String     | Yes      | -               | The 
jdbc class name used to connect to the remote data source, should be 
`com.kingbase8.Driver`.                                                         
                                                                                
                             |
-| username                         | String     | No       | -               | 
Connection instance user name                                                   
                                                                                
                                                                                
                      |
+| username                         | String     | No       | -               | 
Connection instance user name. The old key `user` is still accepted as a 
fallback.                                                                       
                                                                                
                                                                                
  |
 | password                     | String     | No       | -               | 
Connection instance password                                                    
                                                                                
                                                                                
                      |
 | query                        | String     | Yes      | -               | 
Query statement                                                                 
                                                                                
                                                                                
                      |
 | connection_check_timeout_sec | Int        | No       | 30              | The 
time in seconds to wait for the database operation used to validate the 
connection to complete                                                          
                                                                                
                          |
@@ -157,6 +157,22 @@ source {
 }
 ```
 
+### Query With Schema Name
+
+> Kingbase table names are usually written as `schema.table`. You can use 
either `username` or the fallback key `user` for the connection account.
+
+```
+source {
+  Jdbc {
+    driver = "com.kingbase8.Driver"
+    url = "jdbc:kingbase8://localhost:54321/test"
+    user = "SYSTEM"
+    password = "123456"
+    query = "select * from public.e2e_table_source"
+  }
+}
+```
+
 ## Changelog
 
-<ChangeLog />
\ No newline at end of file
+<ChangeLog />
diff --git a/docs/zh/connectors/sink/DB2.md b/docs/zh/connectors/sink/DB2.md
index e1e1e35b5d..033befe5bb 100644
--- a/docs/zh/connectors/sink/DB2.md
+++ b/docs/zh/connectors/sink/DB2.md
@@ -2,7 +2,7 @@ import ChangeLog from '../changelog/connector-jdbc.md';
 
 # DB2
 
-> JDBC DB2接收器连接器
+> JDBC DB2Sink 连接器
 
 ## 支持以下引擎
 
@@ -19,25 +19,26 @@ import ChangeLog from '../changelog/connector-jdbc.md';
 
 ### 适用于 Spark/Flink 引擎
 
-> 1. 您需要确保 [jdbc driver jar 
package](https://mvnrepository.com/artifact/com.ibm.db2.jcc/db2jcc) 已放置在目录 
`${SEATUNNEL_HOME}/plugins/`.
+> 1. 您需要确保 [JDBC 驱动 JAR 
包](https://mvnrepository.com/artifact/com.ibm.db2.jcc/db2jcc) 已放置在目录 
`${SEATUNNEL_HOME}/plugins/`.
 
 ### 适用于 SeaTunnel Zeta 引擎
 
-> 1. 您需要确保 [jdbc driver jar 
package](https://mvnrepository.com/artifact/com.ibm.db2.jcc/db2jcc) 已放置在目录 
`${SEATUNNEL_HOME}/lib/`.
+> 1. 您需要确保 [JDBC 驱动 JAR 
包](https://mvnrepository.com/artifact/com.ibm.db2.jcc/db2jcc) 已放置在目录 
`${SEATUNNEL_HOME}/lib/`.
 
 ## 关键特性
 
 - [x] [精确一次](../../introduction/concepts/connector-v2-features.md)
 - [ ] [cdc](../../introduction/concepts/connector-v2-features.md)
+- [x] [定时刷新](../../introduction/concepts/connector-v2-features.md)
 
-> 使用 `Xa transactions` 来确保 `精确一次`. 因此,数据库只支持 `exactly-once` 即
-> 支持 `Xa transactions`. 您可以设置 `is_exactly_once=true` 来启用它.
+> 使用 `XA 事务` 来确保 `精确一次`. 因此,数据库只支持 `精确一次` 即
+> 支持 `XA 事务`. 您可以设置 `is_exactly_once=true` 来启用它.
 
 ## 支持的数据源信息
 
 | 数据库 |                    支持版本                    |             驱动            
 |                Url                |                                 Maven    
                             |
 
|------------|---------------------------------------------------------|--------------------------------|-----------------------------------|-----------------------------------------------------------------------|
-| DB2        | Different dependency version has different driver class. | 
com.ibm.db2.jdbc.app.DB2Driver | jdbc:db2://127.0.0.1:50000/dbname | 
[Download](https://mvnrepository.com/artifact/com.ibm.db2.jcc/db2jcc) |
+| DB2        | 不同的依赖版本有不同的驱动程序类。 | com.ibm.db2.jcc.DB2Driver | 
jdbc:db2://127.0.0.1:50000/dbname | 
[下载](https://mvnrepository.com/artifact/com.ibm.db2.jcc/db2jcc) |
 
 ## 数据类型映射
 
@@ -55,31 +56,33 @@ import ChangeLog from '../changelog/connector-jdbc.md';
 | DATE                                                                         
                        | DATE                |
 | TIME                                                                         
                        | TIME                |
 | TIMESTAMP                                                                    
                        | TIMESTAMP           |
-| ROWID<br/>XML                                                                
                        | Not supported yet   |
+| ROWID<br/>XML                                                                
                        | 暂不支持   |
 
 ## 选项
 
 | 名称                           |  类型   | 必需 | 默认值 | 描述                         
                                                                                
                                                                                
                                                    |
 
|------------------------------|---------|----------|---------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| url                          | String  | Yes      | -       | 
JDBC连接的URL。请参考案例 : jdbc:db2://127.0.0.1:50000/dbname                            
                                                                                
                                                                               |
-| driver                       | String  | Yes      | -       | 
用于连接到远程数据源的jdbc类名,<br/> 如果使用DB2,则值为 `com.ibm.db2.jdbc.app.DB2Driver`.           
                                                                                
                                                                               |
-| username                     | String  | No       | -       | 连接实例用户名        
                                                                                
                                                                                
                                                                |
-| password                     | String  | No       | -       | 连接实例密码         
                                                                                
                                                                                
                                                                |
-| query                        | String  | No       | -       | 
使用此sql将上游输入数据写入数据库。例如 `INSERT ...`,`query` 具有更高的优先级                             
                                                                                
                                                                               |
-| database                     | String  | No       | -       | 使用这个 
`database` 和 `table-name` 自动生成sql并接收上游输入数据写入数据库.<br/>此选项与 `query` 互斥,具有更高的优先级.  
                                                                                
                                                                          |
-| table                        | String  | No       | -       | 
使用数据库和此表名自动生成sql并接收上游输入数据写入数据库.<br/>此选项与 `query` 互斥,具有更高的优先级.                   
                                                                                
                                                                               |
-| primary_keys                 | Array   | No       | -       | 
此选项用于在自动生成sql时支持 `insert`, `delete`, 和 `update` 等操作.                            
                                                                                
                                                                               |
-| connection_check_timeout_sec | Int     | No       | 30      | 
等待用于验证连接的数据库操作完成的时间(秒).                                                         
                                                                                
                                                                               |
-| max_retries                  | Int     | No       | 0       | 提交失败的重试次数 
(执行批处理)                                                                         
                                                                                
                                                                     |
-| batch_size                   | Int     | No       | 1000    | 
对于批量写入,当缓冲记录的数量达到 `batch_size` 的数量或时间达到 `checkpoint.interval` 时<br/>, 
数据将被刷新到数据库中                                                                     
                                                                                
         |
-| is_exactly_once              | Boolean | No       | false   | 
是否启用精确一次语义,这将使用 Xa 事务. 如果启用,则需要<br/>设置 `xa_data_source_class_name`.             
                                                                                
                                                                               |
-| generate_sink_sql            | Boolean | No       | false   | 
根据要写入的数据库表生成sql语句                                                               
                                                                                
                                                                               |
-| xa_data_source_class_name    | String  | No       | -       | 数据库Driver的 xa 
数据源类名, for example, DB2 是 `com.db2.cj.jdbc.Db2XADataSource`, <br/>其他数据来源请参考附录   
                                                                                
                        |
-| max_commit_attempts          | Int     | No       | 3       | 事务提交失败的重试次数    
                                                                                
                                                                                
                      |
-| transaction_timeout_sec      | Int     | No       | -1      | 
事务打开后的超时,默认值为-1(永不超时). 请注意,设置超时可能会影响<br/>精确一次语义                                 
                                                           |
-| auto_commit                  | Boolean | No       | true    | 默认情况下启用自动事务提交  
                                                                                
                                                                                
                           |
-| properties                   | Map     | No       | -       | 
附加连接配置参数,当属性和URL具有相同的参数时,优先级由驱动程序的特定实现决定. 例如,在MySQL中,属性优先于URL. |
-| common-options               |         | no       | -       | Sink插件常用参数,详见 
[Sink Common Options](../common-options/sink-common-options.md)                 
                                                                                
                                    |
+| url                          | String  | 是       | -       | 
JDBC连接的URL。请参考案例 : jdbc:db2://127.0.0.1:50000/dbname                            
                                                                                
                                                                               |
+| driver                       | String  | 是       | -       | 
用于连接到远程数据源的jdbc类名,<br/> 如果使用DB2,则值为 `com.ibm.db2.jcc.DB2Driver`.                
                                                                                
                                                                          |
+| username                     | String  | 否       | -       | 连接实例用户名         
                                                                                
                                                                                
                                                               |
+| password                     | String  | 否       | -       | 连接实例密码          
                                                                                
                                                                                
                                                               |
+| query                        | String  | 否       | -       | 
使用此sql将上游输入数据写入数据库。例如 `INSERT ...`,`query` 具有更高的优先级                             
                                                                                
                                                                               |
+| database                     | String  | 否       | -       | 使用这个 `database` 
和 `table-name` 自动生成sql并接收上游输入数据写入数据库.<br/>此选项与 `query` 互斥,具有更高的优先级.             
                                                                                
                                                               |
+| table                        | String  | 否       | -       | 
使用数据库和此表名自动生成sql并接收上游输入数据写入数据库.<br/>此选项与 `query` 互斥,具有更高的优先级.                   
                                                                                
                                                                               |
+| primary_keys                 | Array   | 否       | -       | 
此选项用于在自动生成sql时支持 `insert`, `delete`, 和 `update` 等操作.                            
                                                                                
                                                                               |
+| connection_check_timeout_sec | Int     | 否       | 30      | 
等待用于验证连接的数据库操作完成的时间(秒).                                                         
                                                                                
                                                                               |
+| max_retries                  | Int     | 否       | 0       | 提交失败的重试次数 
(执行批处理)                                                                         
                                                                                
                                                                     |
+| batch_size                   | Int     | 否       | 1000    | 
对于批量写入,当缓冲记录的数量达到 `batch_size` 的数量或时间达到 `checkpoint.interval` 时<br/>, 
数据将被刷新到数据库中                                                                     
                                                                                
         |
+| batch_interval_ms            | Long    | 否       | 0       | 
写入触发的定时刷新间隔,单位毫秒。`0` 表示关闭定时刷新;大于 `0` 时,每次写入会检查距离上次刷新是否已超过该间隔,超过则同步刷新。 |
+| is_exactly_once              | Boolean | 否       | false   | 是否启用精确一次语义,这将使用 
Xa 事务. 如果启用,则需要<br/>设置 `xa_data_source_class_name`.                             
                                                                                
                                                               |
+| generate_sink_sql            | Boolean | 否       | false   | 
根据要写入的数据库表生成sql语句                                                               
                                                                                
                                                                               |
+| xa_data_source_class_name    | String  | 否       | -       | 数据库 Driver 的 XA 
数据源类名,例如 DB2 是 `com.ibm.db2.jcc.DB2XADataSource`,<br/>其他数据源请参考附录。               
                                                                                
            |
+| max_commit_attempts          | Int     | 否       | 3       | 事务提交失败的重试次数     
                                                                                
                                                                                
                     |
+| transaction_timeout_sec      | Int     | 否       | -1      | 
事务打开后的超时,默认值为-1(永不超时). 请注意,设置超时可能会影响<br/>精确一次语义                                 
                                                           |
+| auto_commit                  | Boolean | 否       | true    | 默认情况下启用自动事务提交   
                                                                                
                                                                                
                          |
+| properties                   | Map     | 否       | -       | 
附加连接配置参数,当属性和URL具有相同的参数时,优先级由驱动程序的特定实现决定. 例如,在MySQL中,属性优先于URL. |
+| common-options               |         | 否       | -       | Sink 插件常用参数,详见 
[Sink 通用选项](../common-options/sink-common-options.md)                           
                                                                                
                          |
+| enable_upsert                | Boolean | 否       | true    | 存在 
`primary_keys` 时启用 upsert。如果输入数据不会出现重复主键,将此参数设置为 `false` 可以加快写入速度。 |
 
 ### 小贴士
 
@@ -89,7 +92,7 @@ import ChangeLog from '../changelog/connector-jdbc.md';
 
 ### 简单
 
-> 此示例定义了一个SeaTunnel同步任务,该任务通过FakeSource自动生成数据并将其发送到JDBC 
Sink。FakeSource总共生成16行数据(row.num=16),每行有两个字段,name(字符串类型)和age(int类型)。最终的目标表是test_table,表中也将有16行数据。在运行此作业之前,您需要在DB2中创建数据库测试和表test_table。如果您尚未安装和部署SeaTunnel,则需要按照[Install
 
SeaTunnel](../../getting-started/locally/deployment.md)中的说明安装和部署SeaTunnel。然后按照[Quick
 Start With SeaTunnel 
Engine](../../getting-started/locally/quick-start-seatunnel-engine.md) 
中的说明运行此作业.
+> 此示例定义了一个SeaTunnel同步任务,该任务通过FakeSource自动生成数据并将其发送到JDBC 
Sink。FakeSource总共生成16行数据(row.num=16),每行有两个字段,name(字符串类型)和age(int类型)。最终的目标表是test_table,表中也将有16行数据。在运行此作业之前,您需要在DB2中创建数据库测试和表test_table。如果您尚未安装和部署SeaTunnel,则需要按照[安装
 
SeaTunnel](../../getting-started/locally/deployment.md)中的说明安装和部署SeaTunnel。然后按照[使用
 SeaTunnel Engine 
快速开始](../../getting-started/locally/quick-start-seatunnel-engine.md) 中的说明运行此作业.
 
 ```
 # 定义运行时环境
@@ -123,7 +126,7 @@ transform {
 sink {
     jdbc {
         url = "jdbc:db2://127.0.0.1:50000/dbname"
-        driver = "com.ibm.db2.jdbc.app.DB2Driver"
+        driver = "com.ibm.db2.jcc.DB2Driver"
         username = "root"
         password = "123456"
         query = "insert into test_table(name,age) values(?,?)"
@@ -141,7 +144,7 @@ sink {
 sink {
     jdbc {
         url = "jdbc:db2://127.0.0.1:50000/dbname"
-        driver = "com.ibm.db2.jdbc.app.DB2Driver"
+        driver = "com.ibm.db2.jcc.DB2Driver"
         username = "root"
         password = "123456"
         # Automatically generate sql statements based on database table names
@@ -160,7 +163,7 @@ sink {
 sink {
     jdbc {
         url = "jdbc:db2://127.0.0.1:50000/dbname"
-        driver = "com.ibm.db2.jdbc.app.DB2Driver"
+        driver = "com.ibm.db2.jcc.DB2Driver"
     
         max_retries = 0
         username = "root"
@@ -169,11 +172,31 @@ sink {
     
         is_exactly_once = "true"
     
-        xa_data_source_class_name = "com.db2.cj.jdbc.Db2XADataSource"
+        xa_data_source_class_name = "com.ibm.db2.jcc.DB2XADataSource"
+    }
+}
+```
+
+### 使用自动生成 SQL 进行 Upsert
+
+> 设置 `generate_sink_sql = true` 并配置 `primary_keys` 后,DB2 会生成 `MERGE` 语句进行 
upsert 写入。如果输入只包含新增数据且不会出现重复主键,可以设置 `enable_upsert = false` 使用更快的插入路径。
+
+```
+sink {
+    Jdbc {
+        url = "jdbc:db2://127.0.0.1:50000/E2E"
+        driver = "com.ibm.db2.jcc.DB2Driver"
+        username = "db2inst1"
+        password = "123456"
+        database = "E2E"
+        table = "SINK"
+        generate_sink_sql = true
+        enable_upsert = true
+        primary_keys = ["C_INT"]
     }
 }
 ```
 
 ## 变更日志
 
-<ChangeLog />
\ No newline at end of file
+<ChangeLog />
diff --git a/docs/zh/connectors/sink/Kingbase.md 
b/docs/zh/connectors/sink/Kingbase.md
index 1ae8eae8e5..20108c4340 100644
--- a/docs/zh/connectors/sink/Kingbase.md
+++ b/docs/zh/connectors/sink/Kingbase.md
@@ -18,16 +18,17 @@ import ChangeLog from '../changelog/connector-jdbc.md';
 
 - [ ] [精确一次](../../introduction/concepts/connector-v2-features.md)
 - [ ] [cdc](../../introduction/concepts/connector-v2-features.md)
+- [x] [定时刷新](../../introduction/concepts/connector-v2-features.md)
 
 ## 描述
 
-> 使用 `Xa transactions` 来确保 `精确一次`。因此仅支持支持 `Xa transactions` 的数据库的 `精确一次`。您可以设置 
`is_exactly_once=true` 来启用它。Kingbase 目前不支持
+> 使用 `XA 事务` 来确保 `精确一次`。因此仅支持支持 `XA 事务` 的数据库的 `精确一次`。您可以设置 
`is_exactly_once=true` 来启用它。Kingbase 目前不支持
 
 ## 支持的数据源信息
 
 | 数据源 | 支持的版本 |        驱动        |                   URL                    |  
                                           Maven                                
              |
 
|--------|-----------|----------------------|------------------------------------------|------------------------------------------------------------------------------------------------|
-| Kingbase   | 8.6                | com.kingbase8.Driver | 
jdbc:kingbase8://localhost:54321/db_test | 
[Download](https://repo1.maven.org/maven2/cn/com/kingbase/kingbase8/8.6.0/kingbase8-8.6.0.jar)
 |
+| Kingbase   | 8.6                | com.kingbase8.Driver | 
jdbc:kingbase8://localhost:54321/db_test | 
[下载](https://repo1.maven.org/maven2/cn/com/kingbase/kingbase8/8.6.0/kingbase8-8.6.0.jar)
 |
 
 ## 数据库依赖
 
@@ -56,9 +57,9 @@ import ChangeLog from '../changelog/connector-jdbc.md';
 
 |                   参数名                    |  类型   | 必须 | 默认值 |                
                                                                                
                 描述                                                             
                                                     |
 
|-------------------------------------------|---------|------|---------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| url                                       | String  | 是   | -       | JDBC 
连接的 URL。参考示例:jdbc:db2://127.0.0.1:50000/dbname                                  
                                                                                
                                         |
-| driver                                    | String  | 是   | -       | 
用于连接到远程数据源的 jdbc 类名,<br/> 如果使用 DB2,则值为 `com.ibm.db2.jdbc.app.DB2Driver`。        
                                                                                
                    |
-| username                                      | String  | 否   | -       | 
连接实例用户名                                                                         
                                                                                
                                                       |
+| url                                       | String  | 是   | -       | JDBC 
连接的 URL。参考示例:jdbc:kingbase8://localhost:54321/db_test                           
                                                                                
                                                |
+| driver                                    | String  | 是   | -       | 
用于连接到远程数据源的 jdbc 类名,<br/> 如果使用 Kingbase,则值为 `com.kingbase8.Driver`。             
                                                                                
               |
+| username                                      | String  | 否   | -       | 
连接实例用户名。旧配置名 `user` 仍可作为兼容写法使用。                                                 
                                                                                
                                                                               |
 | password                                  | String  | 否   | -       | 连接实例密码 
                                                                                
                                                                                
                                                |
 | query                                     | String  | 否   | -       | 使用此 
sql 将上游输入数据写入数据库。例如 `INSERT ...`,`query` 具有更高的优先级                               
                                                                                
                        |
 | database                                  | String  | 否   | -       | 使用此 
`database` 和 `table-name` 自动生成 sql 并接收上游输入数据写入数据库。<br/>此选项与 `query` 
互斥,具有更高的优先级。                                                     |
@@ -67,6 +68,7 @@ import ChangeLog from '../changelog/connector-jdbc.md';
 | connection_check_timeout_sec              | Int     | 否   | 30      | 
等待用于验证连接的数据库操作完成的时间(秒)。                                                         
                                                                                
 |
 | max_retries                               | Int     | 否   | 0       | 
提交失败的重试次数 (executeBatch)                                                        
                                                                                
                                                |
 | batch_size                                | Int     | 否   | 1000    | 
对于批量写入,当缓冲记录数达到 `batch_size` 数量或时间达到 `checkpoint.interval` 时<br/>,数据将被刷新到数据库    
                                                     |
+| batch_interval_ms                         | Long    | 否   | 0       | 
写入触发的定时刷新间隔,单位毫秒。`0` 表示关闭定时刷新;大于 `0` 时,每次写入会检查距离上次刷新是否已超过该间隔,超过则同步刷新。 |
 | is_exactly_once                           | Boolean | 否   | false   | 
是否启用精确一次语义,这将使用 Xa 事务。如果启用,您需要<br/>设置 `xa_data_source_class_name`。Kingbase 
目前不支持                                                                        |
 | generate_sink_sql                         | Boolean | 否   | false   | 
根据您要写入的数据库表生成 sql 语句                                                            
                                                                                
                         |
 | xa_data_source_class_name                 | String  | 否   | -       | 
数据库驱动程序的 xa 数据源类名,Kingbase 目前不支持                                                
                                                                                
                     |
@@ -158,8 +160,23 @@ sink {
 }
 ```
 
+### 写入 Schema 表
+
+> 使用自定义 `query` 写入时,占位符数量必须和上游字段数量一致。Kingbase 带 schema 的表可以写成 
`public.table_name`。
+
+```
+sink {
+  Jdbc {
+    driver = "com.kingbase8.Driver"
+    url = "jdbc:kingbase8://localhost:54321/test"
+    user = "SYSTEM"
+    password = "123456"
+    query = "INSERT INTO public.e2e_table_sink (c1, c2, c3) VALUES (?, ?, ?)"
+  }
+}
+```
+
 ## 变更日志
 
 <ChangeLog />
 
-
diff --git a/docs/zh/connectors/sink/Vertica.md 
b/docs/zh/connectors/sink/Vertica.md
index c34c9fedb5..b0291d79ee 100644
--- a/docs/zh/connectors/sink/Vertica.md
+++ b/docs/zh/connectors/sink/Vertica.md
@@ -26,11 +26,11 @@ import ChangeLog from '../changelog/connector-jdbc.md';
 
 ## 主要特性
 
-- [x] [精确一次](../../introduction/concepts/connector-v2-features.md)
+- [ ] [精确一次](../../introduction/concepts/connector-v2-features.md)
 - [ ] [cdc](../../introduction/concepts/connector-v2-features.md)
+- [x] [定时刷新](../../introduction/concepts/connector-v2-features.md)
 
-> 使用 `Xa 事务` 来保证 `精确一次`。因此仅支持支持 `Xa 事务` 的数据库。可以通过设置 `is_exactly_once=true` 来启用。
-- [ ] [timer flush](../../introduction/concepts/connector-v2-features.md)
+> 共享 JDBC 附录中没有列出 Vertica 的 JDBC XA 数据源,因此建议使用默认的 `is_exactly_once=false`。
 
 ## 支持的数据源信息
 
@@ -78,14 +78,15 @@ import ChangeLog from '../changelog/connector-jdbc.md';
 | connection_check_timeout_sec | Int    | 否       | 30      | 
用于验证连接完成的数据库操作的等待时间(秒)。                                                         
                                                                                
              |
 | max_retries                  | Int    | 否       | 0       | 
提交失败(executeBatch)的重试次数。                                                        
                                                                                
                         |
 | batch_size                   | Int    | 否       | 1000    | 对于批量写入,当缓冲的记录数达到 
`batch_size` 或时间达到 `checkpoint.interval` 时,数据将被刷新到数据库中。                         
                                                                  |
+| batch_interval_ms            | Long   | 否       | 0       | 
写入触发的定时刷新间隔,单位毫秒。`0` 表示关闭定时刷新;大于 `0` 时,每次写入会检查距离上次刷新是否已超过该间隔,超过则同步刷新。 |
 | is_exactly_once              | Boolean  | 否       | false   | 是否启用精确一次语义,将使用 
Xa 事务。如果启用,需要设置 `xa_data_source_class_name`。                                    
                                                                           |
 | generate_sink_sql            | Boolean  | 否       | false   | 根据要写入的数据库表生成 
SQL 语句。                                                                         
                                                                                
         |
-| xa_data_source_class_name    | String  | 否       | -       | 数据库驱动的 XA 
数据源类名,例如 Vertica 为 `com.vertical.cj.jdbc.VerticalXADataSource`,其他数据源请参考附录。      
                                                                                
|
+| xa_data_source_class_name    | String  | 否       | -       | 数据库驱动的 XA 
数据源类名。共享 JDBC 附录中没有列出 Vertica 的可用值,因此除非所用驱动提供兼容的 XA 数据源,否则保持 
`is_exactly_once=false`。                                                        
                              |
 | max_commit_attempts          | Int    | 否       | 3       | 事务提交失败的重试次数。     
                                                                                
                                                                                
        |
 | transaction_timeout_sec      | Int    | 否       | -1      | 事务打开后的超时时间,默认为 
-1(永不超时)。注意:设置超时可能会影响精确一次语义。                                                    
                                                              |
 | auto_commit                  | Boolean  | 否       | true    | 默认启用自动事务提交。    
                                                                                
                                                                                
           |
 | properties                   | Map    | 否       | -       | 额外的连接配置参数,当 
properties 和 URL 中有相同的参数时,优先级由驱动的具体实现决定。例如,在 MySQL 中,properties 优先于 URL。        
                                                             |
-| common-options               |         | 否       | -       | 接收器插件通用参数,详情请参考 
[Sink Common Options](../common-options/sink-common-options.md)。                
                                                                                
                    |
+| common-options               |         | 否       | -       | 接收器插件通用参数,详情请参考 
[Sink 通用选项](../common-options/sink-common-options.md)。                          
                                                                                
          |
 | enable_upsert                | Boolean  | 否       | true    | 通过主键存在启用 
upsert。如果任务中没有键重复数据,将此参数设置为 `false` 可以加快数据导入速度。                                 
                                                                    |
 
 ### 提示
@@ -159,25 +160,25 @@ sink {
 }
 ```
 
-### 精确一次
+### 使用自动生成 SQL 进行 Upsert
 
-> 对于精确写入场景,我们保证精确一次语义。
+> 设置 `generate_sink_sql = true` 并配置 `primary_keys` 后,Vertica 会生成 `MERGE` 语句进行 
upsert 写入。这不同于 XA 精确一次;除非所用 Vertica 驱动提供兼容的 XA 数据源,否则保持 `is_exactly_once=false`。
 
 ```
 sink {
     jdbc {
         url = "jdbc:vertica://localhost:5433/vertica"
         driver = "com.vertica.jdbc.Driver"
-        max_retries = 0
         username = "root"
         password = "123456"
-        query = "insert into test_table(name,age) values(?,?)"
-        is_exactly_once = "true"
-        xa_data_source_class_name = "com.vertical.cj.jdbc.VerticalXADataSource"
+        generate_sink_sql = true
+        database = "public"
+        table = "test_table"
+        primary_keys = ["id"]
     }
 }
 ```
 
 ## 变更日志
 
-<ChangeLog />
\ No newline at end of file
+<ChangeLog />
diff --git a/docs/zh/connectors/source/DB2.md b/docs/zh/connectors/source/DB2.md
index a2e60b6b83..7221c7e35e 100644
--- a/docs/zh/connectors/source/DB2.md
+++ b/docs/zh/connectors/source/DB2.md
@@ -2,7 +2,7 @@ import ChangeLog from '../changelog/connector-jdbc.md';
 
 # DB2
 
-> JDBC DB2 Source连接器
+> JDBC DB2 Source 连接器
 
 ## 支持引擎
 
@@ -39,7 +39,7 @@ import ChangeLog from '../changelog/connector-jdbc.md';
 
 | 数据源 |                    支持版本                    |             驱动            
 |                Url                |                                 Maven    
                             |
 
|------------|----------------------------------------------------------|--------------------------------|-----------------------------------|-----------------------------------------------------------------------|
-| DB2        | 不同的依赖版本有不同的驱动程序类。| com.ibm.db2.jdbc.app.DB2Driver | 
jdbc:db2://127.0.0.1:50000/dbname | 
[下载](https://mvnrepository.com/artifact/com.ibm.db2.jcc/db2jcc) |
+| DB2        | 不同的依赖版本有不同的驱动程序类。| com.ibm.db2.jcc.DB2Driver | 
jdbc:db2://127.0.0.1:50000/dbname | 
[下载](https://mvnrepository.com/artifact/com.ibm.db2.jcc/db2jcc) |
 
 ## 数据库相关性
 
@@ -49,7 +49,7 @@ import ChangeLog from '../changelog/connector-jdbc.md';
 ## 数据类型映射
 
 |                                            DB2数据类型                           
                  | SeaTunnel 数据类型 |
-|------------------------------------------------------------------------------------------------------|---------------------|---|
+|------------------------------------------------------------------------------------------------------|---------------------|
 | BOOLEAN                                                                      
                        | BOOLEAN             |
 | SMALLINT                                                                     
                        | SHORT               |
 | INT<br/>INTEGER<br/>                                                         
                        | INTEGER             |
@@ -62,14 +62,14 @@ import ChangeLog from '../changelog/connector-jdbc.md';
 | DATE                                                                         
                        | DATE                |
 | TIME                                                                         
                        | TIME                |
 | TIMESTAMP                                                                    
                        | TIMESTAMP           |
-| ROWID<br/>XML                                                                
                        | Not supported yet   |
+| ROWID<br/>XML                                                                
                        | 暂不支持   |
 
 ## 源选项
 
 | 名称                           |    类型    | 必需 |     默认值     |                 
                                                                                
                           描述                                                   
                                                                         |
 
|------------------------------|------------|----------|-----------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
 | url                          | String     | 是      | -               | 
JDBC连接的URL。请参考案例:jdbc:db2://127.0.0.1:50000/dbname                              
                                                                                
                                                                  |
-| driver                       | String     | 是      | -               | 
用于连接到远程数据源的jdbc类名,<br/>如果使用db2,则值为`com.ibm.db2.jdbc.app.DB2Driver`。             
                                                                                
                                    |
+| driver                       | String     | 是      | -               | 
用于连接到远程数据源的jdbc类名,<br/>如果使用db2,则值为`com.ibm.db2.jcc.DB2Driver`。                  
                                                                                
                               |
 | username                     | String     | 否       | -               | 
连接实例用户名                                                                         
                                                                                
                                                                            |
 | password                     | String     | 否       | -               | 
连接实例密码                                                                          
                                                                                
                                                                            |
 | query                        | String     | 是      | -               | 查询语句  
                                                                                
                                                                                
                                                                                
 |
@@ -80,7 +80,7 @@ import ChangeLog from '../changelog/connector-jdbc.md';
 | partition_num                | Int        | 否      | job parallelism | 
分区计数的数量,只支持正整数。默认值是作业并行性                                                        
                                                                                
                            |
 | fetch_size                   | Int        | 否       | 0               | 
对于返回大量对象的查询,您可以配置查询中使用的行提取大小,通过减少满足选择条件所需的数据库请求次数来提高性能。0表示使用jdbc默认值。 |
 | properties                   | Map        | 否       | -               | 
其他连接配置参数,当属性和URL具有相同的参数时,优先级由驱动程序的特定实现决定。例如,在MySQL中,属性优先于URL。                   
 |
-| common-options               |            | 否       | -               | 
source插件常用参数,详见[Source common 
Options](../common-options/source-common-options.md)                            
                                                                                
                                     |
+| common-options               |            | 否       | -               | 
Source 插件常用参数,详见[源通用选项](../common-options/source-common-options.md)             
                                                                                
                                                    |
 
 ### 小贴士
 
@@ -101,7 +101,7 @@ env {
 source{
     Jdbc {
         url = "jdbc:db2://127.0.0.1:50000/dbname"
-        driver = "com.ibm.db2.jdbc.app.DB2Driver"
+        driver = "com.ibm.db2.jcc.DB2Driver"
         connection_check_timeout_sec = 100
         username = "root"
         password = "123456"
@@ -127,7 +127,7 @@ sink {
 source {
     Jdbc {
         url = "jdbc:db2://127.0.0.1:50000/dbname"
-        driver = "com.ibm.db2.jdbc.app.DB2Driver"
+        driver = "com.ibm.db2.jcc.DB2Driver"
         connection_check_timeout_sec = 100
         username = "root"
         password = "123456"
@@ -149,7 +149,7 @@ source {
 source {
     Jdbc {
         url = "jdbc:db2://127.0.0.1:50000/dbname"
-        driver = "com.ibm.db2.jdbc.app.DB2Driver"
+        driver = "com.ibm.db2.jcc.DB2Driver"
         connection_check_timeout_sec = 100
         username = "root"
         password = "123456"
diff --git a/docs/zh/connectors/source/Kingbase.md 
b/docs/zh/connectors/source/Kingbase.md
index 1a56f5fe3e..c8d99d658a 100644
--- a/docs/zh/connectors/source/Kingbase.md
+++ b/docs/zh/connectors/source/Kingbase.md
@@ -61,7 +61,7 @@ import ChangeLog from '../changelog/connector-jdbc.md';
 |--------|------|------|--------|------|
 | url | String | 是 | - | JDBC 连接的 
URL。参考示例:jdbc:kingbase8://localhost:54321/test |
 | driver | String | 是 | - | 用于连接到远程数据源的 jdbc 类名,应为 `com.kingbase8.Driver`。 |
-| username | String | 否 | - | 连接实例用户名 |
+| username | String | 否 | - | 连接实例用户名。旧配置名 `user` 仍可作为兼容写法使用。 |
 | password | String | 否 | - | 连接实例密码 |
 | query | String | 是 | - | 查询语句 |
 | connection_check_timeout_sec | Int | 否 | 30 | 等待用于验证连接的数据库操作完成的时间(秒) |
@@ -157,7 +157,22 @@ source {
 }
 ```
 
+### 使用 Schema 表名查询
+
+> Kingbase 表名通常写成 `schema.table`。连接用户名可以使用 `username`,也可以使用兼容写法 `user`。
+
+```
+source {
+  Jdbc {
+    driver = "com.kingbase8.Driver"
+    url = "jdbc:kingbase8://localhost:54321/test"
+    user = "SYSTEM"
+    password = "123456"
+    query = "select * from public.e2e_table_source"
+  }
+}
+```
+
 ## 变更日志
 
 <ChangeLog />
-

Reply via email to