Skip to content

Commit 5993389

Browse files
committed
Adding CUBRID to dbwire
1 parent dad2f02 commit 5993389

6 files changed

Lines changed: 451 additions & 5 deletions

File tree

data/xml/queries.xml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1509,7 +1509,7 @@
15091509
<current_db query="CURRENT_USER"/>
15101510
<hostname/>
15111511
<table_comment query="SELECT comment FROM db_class WHERE owner_name='%s' AND class_name='%s'"/>
1512-
<column_comment query="SELECT db_attribute.comment FROM db_attribute JOIN db_class ON db_attribute.class_name=db_class.class_name WHERE owner_name='%s' AND db_class.class_name='%s' AND attr_name='%s'"/>
1512+
<column_comment query="SELECT db_attribute.comment FROM db_attribute JOIN db_class ON db_attribute.class_name=db_class.class_name WHERE db_class.owner_name='%s' AND db_class.class_name='%s' AND attr_name='%s'"/>
15131513
<is_dba query="CURRENT_USER='DBA'"/>
15141514
<check_udf query="(SELECT meth_name FROM db_method WHERE meth_name='%s' LIMIT 0,1)='%s'"/>
15151515
<users>
@@ -1532,8 +1532,8 @@
15321532
<blind query="SELECT class_name FROM db_class WHERE owner_name='%s' LIMIT %d,1" count="SELECT COUNT(class_name) FROM db_class WHERE owner_name='%s'"/>
15331533
</tables>
15341534
<columns>
1535-
<inband query="SELECT attr_name,data_type FROM db_attribute JOIN db_class ON db_attribute.class_name=db_class.class_name WHERE db_class.class_name='%s' AND owner_name='%s'" condition="attr_name"/>
1536-
<blind query="SELECT attr_name FROM db_attribute JOIN db_class ON db_attribute.class_name=db_class.class_name WHERE db_class.class_name='%s' AND owner_name='%s'" query2="SELECT data_type FROM db_attribute JOIN db_class ON db_attribute.class_name=db_class.class_name WHERE db_class.class_name='%s' AND owner_name='%s'" count="SELECT COUNT(attr_name) FROM db_attribute JOIN db_class ON db_attribute.class_name=db_class.class_name WHERE db_class.class_name='%s' AND owner_name='%s'" condition="attr_name"/>
1535+
<inband query="SELECT attr_name,data_type FROM db_attribute JOIN db_class ON db_attribute.class_name=db_class.class_name WHERE db_class.class_name='%s' AND db_class.owner_name='%s'" condition="attr_name"/>
1536+
<blind query="SELECT attr_name FROM db_attribute JOIN db_class ON db_attribute.class_name=db_class.class_name WHERE db_class.class_name='%s' AND db_class.owner_name='%s'" query2="SELECT data_type FROM db_attribute JOIN db_class ON db_attribute.class_name=db_class.class_name WHERE db_class.class_name='%s' AND db_class.owner_name='%s'" count="SELECT COUNT(attr_name) FROM db_attribute JOIN db_class ON db_attribute.class_name=db_class.class_name WHERE db_class.class_name='%s' AND db_class.owner_name='%s'" condition="attr_name"/>
15371537
</columns>
15381538
<dump_table>
15391539
<inband query="SELECT %s FROM %s.%s"/>

extra/dbwire/README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ A wire protocol is shared across a whole family of products, so one client serve
2424
| `mysql.py` | MySQL client/server | MySQL, MariaDB, TiDB, Aurora (MySQL), Percona |
2525
| `tds.py` | TDS | Microsoft SQL Server, Sybase |
2626
| `firebird.py` | Firebird wire | Firebird 3 / 4 / 5 |
27+
| `cubrid.py` | CUBRID CAS | CUBRID |
2728
| `clickhouse.py` | HTTP (TabSeparated) | ClickHouse and HTTP-compatible forks |
2829
| `monetdb.py` | MAPI | MonetDB |
2930
| `presto.py` | HTTP/REST (JSON) | Presto, Trino |
@@ -59,6 +60,8 @@ parameter binding, prepared statements, bulk load/`COPY`, or TLS. Notable per-pr
5960
require TLS and are not supported here; the native driver or SQLAlchemy tier covers those.
6061
- **Firebird** - SRP-256 (and SRP) authentication with ChaCha20 or RC4 wire encryption, as required by
6162
default on Firebird 3 and later. Legacy (pre-SRP) authentication is not implemented.
63+
- **CUBRID** - cleartext login over the CAS broker protocol. Large objects (BLOB/CLOB) are returned as
64+
their raw locator handles rather than fetched inline.
6265

6366
When a case is not supported, the client raises a clear `NotSupportedError` rather than returning
6467
wrong data, so `-d` cleanly falls through to another connector tier where possible.

0 commit comments

Comments
 (0)