tsurugi-dbapi 0.9.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- tsurugi_dbapi-0.9.0/PKG-INFO +71 -0
- tsurugi_dbapi-0.9.0/docs/README.md +52 -0
- tsurugi_dbapi-0.9.0/pyproject.toml +45 -0
- tsurugi_dbapi-0.9.0/python/tsurugi_dbapi/__init__.py +32 -0
- tsurugi_dbapi-0.9.0/python/tsurugi_dbapi/__init__.pyi +1269 -0
- tsurugi_dbapi-0.9.0/python/tsurugi_dbapi/error/__init__.py +6 -0
- tsurugi_dbapi-0.9.0/python/tsurugi_dbapi/error/__init__.pyi +420 -0
- tsurugi_dbapi-0.9.0/python/tsurugi_dbapi/type_code/__init__.py +6 -0
- tsurugi_dbapi-0.9.0/python/tsurugi_dbapi/type_code/__init__.pyi +563 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/.gitignore +2 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/Cargo.lock +1713 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/Cargo.toml +45 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/README.md +111 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/build.rs +25 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/docs/diff-java_ja.md +147 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/docs/internal/ResponseBox_ja.md +77 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/docs/internal/logging_ja.md +22 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/docs/usage_ja.md +116 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/protos/jogasaki/proto/sql/common.proto +346 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/protos/jogasaki/proto/sql/error.proto +195 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/protos/jogasaki/proto/sql/request.proto +543 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/protos/jogasaki/proto/sql/response.proto +416 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/protos/tateyama/proto/auth/common.proto +7 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/protos/tateyama/proto/auth/request.proto +30 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/protos/tateyama/proto/auth/response.proto +46 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/protos/tateyama/proto/core/request.proto +59 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/protos/tateyama/proto/core/response.proto +35 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/protos/tateyama/proto/datastore/common.proto +22 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/protos/tateyama/proto/datastore/request.proto +162 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/protos/tateyama/proto/datastore/response.proto +396 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/protos/tateyama/proto/diagnostics.proto +77 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/protos/tateyama/proto/endpoint/request.proto +116 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/protos/tateyama/proto/endpoint/response.proto +105 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/protos/tateyama/proto/framework/common.proto +24 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/protos/tateyama/proto/framework/request.proto +31 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/protos/tateyama/proto/framework/response.proto +38 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/protos/tateyama/proto/system/diagnostic.proto +19 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/protos/tateyama/proto/system/request.proto +31 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/protos/tateyama/proto/system/response.proto +56 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/error.rs +240 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/job/cancel_job.rs +65 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/job/job.rs +412 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/job/mod.rs +5 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/lib.rs +142 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/prelude.rs +50 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/core/core_service.rs +273 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/core/error.rs +81 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/core/mod.rs +2 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/endpoint/endpoint_broker.rs +271 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/endpoint/error.rs +36 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/endpoint/mod.rs +2 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/mod.rs +24 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/column.rs +308 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/error.rs +124 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/execute_result.rs +92 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/explain.rs +95 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/mod.rs +14 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/name.rs +114 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/prepare/mod.rs +6 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/prepare/parameter/bigdecimal.rs +77 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/prepare/parameter/chrono.rs +384 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/prepare/parameter/rust_decimal.rs +75 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/prepare/parameter/time.rs +377 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/prepare/parameter.rs +727 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/prepare/placeholder.rs +685 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/prepare/prepared_statement.rs +217 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/query_result/metadata.rs +23 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/query_result/mod.rs +7 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/query_result/query_result/bigdecimal.rs +118 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/query_result/query_result/chrono.rs +404 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/query_result/query_result/rust_decimal.rs +99 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/query_result/query_result/time.rs +516 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/query_result/query_result.rs +757 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/query_result/value_stream.rs +1028 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/query_result/variant.rs +43 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/sql_client.rs +2125 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/table_list.rs +64 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/table_metadata.rs +102 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/type/blob.rs +60 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/type/clob.rs +66 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/type/date.rs +13 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/type/decimal.rs +415 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/type/feature/bigdecimal.rs +61 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/type/feature/chrono.rs +351 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/type/feature/mod.rs +8 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/type/feature/rust_decimal.rs +59 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/type/feature/time.rs +367 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/type/large_object.rs +386 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/type/mod.rs +10 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/type/time_of_day.rs +51 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/type/time_of_day_with_time_zone.rs +64 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/type/time_point.rs +11 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/sql/type/time_point_with_time_zone.rs +12 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/system/error.rs +41 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/system/mod.rs +5 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/system/system_client.rs +173 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/service/system/system_info.rs +64 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/session/credential.rs +171 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/session/endpoint.rs +114 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/session/mod.rs +9 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/session/option.rs +345 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/session/session.rs +373 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/session/tcp/connector.rs +147 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/session/tcp/data_channel_box.rs +93 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/session/tcp/data_channel_wire.rs +101 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/session/tcp/enum.rs +53 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/session/tcp/link.rs +344 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/session/tcp/mod.rs +7 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/session/tcp/wire.rs +259 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/session/wire/cancel.rs +0 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/session/wire/crypto.rs +67 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/session/wire/data_channel.rs +173 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/session/wire/link.rs +38 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/session/wire/mod.rs +10 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/session/wire/response.rs +82 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/session/wire/response_box.rs +193 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/session/wire/wire.rs +470 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/transaction/commit_option.rs +114 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/transaction/error_info.rs +79 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/transaction/mod.rs +9 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/transaction/option.rs +359 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/transaction/status.rs +68 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/transaction/transaction.rs +251 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-core/src/util.rs +69 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/.gitignore +75 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/Cargo.lock +2355 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/Cargo.toml +30 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/README.md +128 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/docs/.gitignore +1 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/docs/.readthedocs.yaml +39 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/docs/README.md +52 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/docs/internal/exception_ja.md +23 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/docs/internal/logging_ja.md +46 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/docs/internal/module-name_ja.md +18 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/docs/internal/type-stub-file_ja.md +21 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/docs/mkdocs.yml +41 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/docs/mkdocs_github_alerts.py +59 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/docs/types_ja.md +59 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/docs/usage_ja.md +405 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/examples/example.py +79 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/examples/log_example-env_logger.py +19 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/examples/log_example-logging.py +21 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/examples/multiprocessing_example.py +24 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/examples/prepare_example.py +213 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/column.rs +158 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/commit_option.rs +187 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/config.rs +402 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/connection/inner_connection.rs +238 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/connection.rs +396 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/cursor/execute.rs +241 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/cursor/query_result.rs +137 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/cursor.rs +671 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/error.rs +581 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/lib.rs +160 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/logger.rs +69 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/shutdown_option.rs +166 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/table_metadata.rs +99 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/transaction_option.rs +352 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/type_code/bool.rs +58 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/type_code/bytes.rs +54 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/type_code/date.rs +90 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/type_code/datetime.rs +138 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/type_code/decimal.rs +74 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/type_code/float32.rs +58 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/type_code/float64.rs +58 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/type_code/int32.rs +58 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/type_code/int64.rs +58 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/type_code/offset_datetime.rs +148 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/type_code/offset_time.rs +169 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/type_code/str.rs +54 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/type_code/time.rs +122 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/src/type_code.rs +358 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/tests/commit_option_test.py +23 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/tests/config_test.py +79 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/tests/error_test.py +8 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/tests/global_constant_test.py +7 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/tests/pickle_test.py +80 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/tests/shutdown_option_test.py +15 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/tests/transaction_option_test.py +73 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/tests/type_code/bool_test.py +15 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/tests/type_code/bytes_test.py +15 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/tests/type_code/date_test.py +23 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/tests/type_code/datetime_test.py +41 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/tests/type_code/decimal_test.py +27 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/tests/type_code/float32_test.py +12 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/tests/type_code/float64_test.py +12 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/tests/type_code/int32_test.py +12 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/tests/type_code/int64_test.py +12 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/tests/type_code/offset_datetime_test.py +56 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/tests/type_code/offset_time_test.py +62 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/tests/type_code/str_test.py +15 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/tests/type_code/time_test.py +39 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/tools/modify_pyi.py +42 -0
- tsurugi_dbapi-0.9.0/tsubakuro-rust-python/uv.lock +737 -0
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: tsurugi-dbapi
|
|
3
|
+
Version: 0.9.0
|
|
4
|
+
Classifier: License :: OSI Approved :: Apache Software License
|
|
5
|
+
Classifier: Programming Language :: Rust
|
|
6
|
+
Classifier: Programming Language :: Python :: 3
|
|
7
|
+
Classifier: Topic :: Database
|
|
8
|
+
Classifier: Topic :: Database :: Front-Ends
|
|
9
|
+
Summary: Python DB API 2.0 (PEP 249) driver for Tsurugi
|
|
10
|
+
Keywords: database,db-api,dbapi,dbapi2,pep249,sql,tsurugidb,tsurugi
|
|
11
|
+
Home-Page: https://github.com/project-tsurugi/tsubakuro-rust/tree/master/tsubakuro-rust-python
|
|
12
|
+
Author: Project Tsurugi
|
|
13
|
+
License-Expression: Apache-2.0
|
|
14
|
+
Requires-Python: >=3.10
|
|
15
|
+
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
|
|
16
|
+
Project-URL: Documentation, https://tsurugi-dbapi.readthedocs.io/
|
|
17
|
+
Project-URL: Homepage, https://github.com/project-tsurugi/tsubakuro-rust/tree/master/tsubakuro-rust-python
|
|
18
|
+
Project-URL: Repository, https://github.com/project-tsurugi/tsubakuro-rust.git
|
|
19
|
+
|
|
20
|
+
# Tsurugi Python DB-API
|
|
21
|
+
|
|
22
|
+
Tsurugi Python DB-API (tsurugi-dbapi) is a Python DB API 2.0 driver for accessing [Tsurugi](https://github.com/project-tsurugi/tsurugidb).
|
|
23
|
+
|
|
24
|
+
## Target
|
|
25
|
+
|
|
26
|
+
- Tsurugi 1.10.0 or later
|
|
27
|
+
- Python 3.10 or later
|
|
28
|
+
- Python DB API 2.0 (PEP 249)
|
|
29
|
+
|
|
30
|
+
## Limitation
|
|
31
|
+
|
|
32
|
+
- Only TCP connection is available.
|
|
33
|
+
- The default transaction_type is `OCC`.
|
|
34
|
+
- The default commit_type is `DEFAULT`.
|
|
35
|
+
- The default shutdown_type is `GRACEFUL`.
|
|
36
|
+
- BLOB/CLOB is not supported.
|
|
37
|
+
|
|
38
|
+
## Installation
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
uv add tsurugi-dbapi
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
## Example
|
|
45
|
+
|
|
46
|
+
```python
|
|
47
|
+
import tsurugi_dbapi as tsurugi
|
|
48
|
+
|
|
49
|
+
def example():
|
|
50
|
+
with tsurugi.connect(
|
|
51
|
+
endpoint="tcp://localhost:12345",
|
|
52
|
+
user="tsurugi",
|
|
53
|
+
password="password",
|
|
54
|
+
default_timeout=30, # seconds
|
|
55
|
+
) as connection:
|
|
56
|
+
with connection.cursor() as cursor:
|
|
57
|
+
cursor.execute("insert into example values (1, 100, 'abc')")
|
|
58
|
+
print("insert rowcount:", cursor.rowcount)
|
|
59
|
+
connection.commit()
|
|
60
|
+
|
|
61
|
+
cursor.execute("select * from example")
|
|
62
|
+
for row in cursor:
|
|
63
|
+
print("row:", row)
|
|
64
|
+
connection.commit()
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
See [examples](https://github.com/project-tsurugi/tsubakuro-rust/tree/master/tsubakuro-rust-python/examples) for more examples.
|
|
68
|
+
|
|
69
|
+
## License
|
|
70
|
+
|
|
71
|
+
[Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# Tsurugi Python DB-API
|
|
2
|
+
|
|
3
|
+
Tsurugi Python DB-API (tsurugi-dbapi) is a Python DB API 2.0 driver for accessing [Tsurugi](https://github.com/project-tsurugi/tsurugidb).
|
|
4
|
+
|
|
5
|
+
## Target
|
|
6
|
+
|
|
7
|
+
- Tsurugi 1.10.0 or later
|
|
8
|
+
- Python 3.10 or later
|
|
9
|
+
- Python DB API 2.0 (PEP 249)
|
|
10
|
+
|
|
11
|
+
## Limitation
|
|
12
|
+
|
|
13
|
+
- Only TCP connection is available.
|
|
14
|
+
- The default transaction_type is `OCC`.
|
|
15
|
+
- The default commit_type is `DEFAULT`.
|
|
16
|
+
- The default shutdown_type is `GRACEFUL`.
|
|
17
|
+
- BLOB/CLOB is not supported.
|
|
18
|
+
|
|
19
|
+
## Installation
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
uv add tsurugi-dbapi
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Example
|
|
26
|
+
|
|
27
|
+
```python
|
|
28
|
+
import tsurugi_dbapi as tsurugi
|
|
29
|
+
|
|
30
|
+
def example():
|
|
31
|
+
with tsurugi.connect(
|
|
32
|
+
endpoint="tcp://localhost:12345",
|
|
33
|
+
user="tsurugi",
|
|
34
|
+
password="password",
|
|
35
|
+
default_timeout=30, # seconds
|
|
36
|
+
) as connection:
|
|
37
|
+
with connection.cursor() as cursor:
|
|
38
|
+
cursor.execute("insert into example values (1, 100, 'abc')")
|
|
39
|
+
print("insert rowcount:", cursor.rowcount)
|
|
40
|
+
connection.commit()
|
|
41
|
+
|
|
42
|
+
cursor.execute("select * from example")
|
|
43
|
+
for row in cursor:
|
|
44
|
+
print("row:", row)
|
|
45
|
+
connection.commit()
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
See [examples](https://github.com/project-tsurugi/tsubakuro-rust/tree/master/tsubakuro-rust-python/examples) for more examples.
|
|
49
|
+
|
|
50
|
+
## License
|
|
51
|
+
|
|
52
|
+
[Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = ["maturin>=1.7,<2.0"]
|
|
3
|
+
build-backend = "maturin"
|
|
4
|
+
|
|
5
|
+
[project]
|
|
6
|
+
name = "tsurugi-dbapi"
|
|
7
|
+
requires-python = ">=3.10"
|
|
8
|
+
authors = [
|
|
9
|
+
{name = "Project Tsurugi"},
|
|
10
|
+
]
|
|
11
|
+
description = "Python DB API 2.0 (PEP 249) driver for Tsurugi"
|
|
12
|
+
readme = "docs/README.md"
|
|
13
|
+
license = "Apache-2.0"
|
|
14
|
+
keywords = ["database", "db-api", "dbapi", "dbapi2", "pep249", "sql", "tsurugidb", "tsurugi"]
|
|
15
|
+
classifiers = [
|
|
16
|
+
"License :: OSI Approved :: Apache Software License",
|
|
17
|
+
"Programming Language :: Rust",
|
|
18
|
+
"Programming Language :: Python :: 3",
|
|
19
|
+
"Topic :: Database",
|
|
20
|
+
"Topic :: Database :: Front-Ends",
|
|
21
|
+
]
|
|
22
|
+
dynamic = ["version"]
|
|
23
|
+
|
|
24
|
+
[tool.maturin]
|
|
25
|
+
module-name = "tsurugi_dbapi._tsubakuro_rust_python"
|
|
26
|
+
exclude = ["**/__pycache__", "**/*.pyc"]
|
|
27
|
+
manifest-path = "tsubakuro-rust-python/Cargo.toml"
|
|
28
|
+
python-source = "python"
|
|
29
|
+
|
|
30
|
+
[tool.uv]
|
|
31
|
+
cache-keys = [{ file = "pyproject.toml" }, { file = "src/**/*.rs" }, { file = "Cargo.toml" }, { file = "Cargo.lock" }, { file = "python/**/*.py" }]
|
|
32
|
+
|
|
33
|
+
[dependency-groups]
|
|
34
|
+
dev = [
|
|
35
|
+
"mkdocs>=1.6.1",
|
|
36
|
+
"mkdocs-material>=9.6.20",
|
|
37
|
+
"pdoc3>=0.11.6",
|
|
38
|
+
"pymdown-extensions>=10.15",
|
|
39
|
+
"pytest>=9.0.2",
|
|
40
|
+
]
|
|
41
|
+
|
|
42
|
+
[project.urls]
|
|
43
|
+
Homepage = "https://github.com/project-tsurugi/tsubakuro-rust/tree/master/tsubakuro-rust-python"
|
|
44
|
+
Documentation = "https://tsurugi-dbapi.readthedocs.io/"
|
|
45
|
+
Repository = "https://github.com/project-tsurugi/tsubakuro-rust.git"
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Tsurugi Python DB-API.
|
|
3
|
+
|
|
4
|
+
Examples:
|
|
5
|
+
|
|
6
|
+
```python
|
|
7
|
+
import tsurugi_dbapi as tsurugi
|
|
8
|
+
|
|
9
|
+
with tsurugi.connect(
|
|
10
|
+
endpoint="tcp://localhost:12345",
|
|
11
|
+
user="tsurugi",
|
|
12
|
+
password="password",
|
|
13
|
+
default_timeout=30, # seconds
|
|
14
|
+
) as connection:
|
|
15
|
+
with connection.cursor() as cursor:
|
|
16
|
+
cursor.execute("insert into example values (1, 100, 'abc')")
|
|
17
|
+
print("insert rowcount:", cursor.rowcount)
|
|
18
|
+
connection.commit()
|
|
19
|
+
|
|
20
|
+
cursor.execute("select * from example")
|
|
21
|
+
for row in cursor:
|
|
22
|
+
print("row:", row)
|
|
23
|
+
connection.commit()
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Note:
|
|
27
|
+
See `Config`, `connect()`, `Connection`, and `Cursor` for more details.
|
|
28
|
+
"""
|
|
29
|
+
|
|
30
|
+
from ._tsubakuro_rust_python import *
|
|
31
|
+
|
|
32
|
+
__all__ = [name for name in globals() if not name.startswith("_")]
|