mySQLDBCtrlAPI 1.2512.1103__tar.gz → 1.2603.1301__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.
- mysqldbctrlapi-1.2603.1301/PKG-INFO +38 -0
- mysqldbctrlapi-1.2603.1301/README.md +5 -0
- {mysqldbctrlapi-1.2512.1103 → mysqldbctrlapi-1.2603.1301}/pyproject.toml +3 -6
- mysqldbctrlapi-1.2603.1301/src/DBCtrlAPI/DBCtrl.cp310-win_amd64.pyd +0 -0
- mysqldbctrlapi-1.2603.1301/src/DBCtrlAPI/DBCtrl.pyi +38 -0
- mysqldbctrlapi-1.2603.1301/src/DBCtrlAPI/__init__.py +4 -0
- mysqldbctrlapi-1.2603.1301/src/DBCtrlAPI/out/DBCtrlAPI/DBCtrl.pyi +38 -0
- mysqldbctrlapi-1.2603.1301/src/mySQLDBCtrlAPI.egg-info/PKG-INFO +38 -0
- mysqldbctrlapi-1.2603.1301/src/mySQLDBCtrlAPI.egg-info/SOURCES.txt +14 -0
- mysqldbctrlapi-1.2603.1301/src/mySQLDBCtrlAPI.egg-info/requires.txt +1 -0
- mysqldbctrlapi-1.2603.1301/src/mySQLDBCtrlAPI.egg-info/top_level.txt +1 -0
- mysqldbctrlapi-1.2512.1103/PKG-INFO +0 -98
- mysqldbctrlapi-1.2512.1103/README.md +0 -62
- mysqldbctrlapi-1.2512.1103/src/mySQLDBCtrlAPI/__init__.py +0 -8
- mysqldbctrlapi-1.2512.1103/src/mySQLDBCtrlAPI/mySQLDBCtrl.cp310-win_amd64.pyd +0 -0
- mysqldbctrlapi-1.2512.1103/src/mySQLDBCtrlAPI/mySQLDBCtrl.pyi +0 -114
- mysqldbctrlapi-1.2512.1103/src/mySQLDBCtrlAPI/mySQLNetSSH.cp310-win_amd64.pyd +0 -0
- mysqldbctrlapi-1.2512.1103/src/mySQLDBCtrlAPI/mySQLNetSSH.pyi +0 -15
- mysqldbctrlapi-1.2512.1103/src/mySQLDBCtrlAPI/mySQLxJsonLIB.cp310-win_amd64.pyd +0 -0
- mysqldbctrlapi-1.2512.1103/src/mySQLDBCtrlAPI/mySQLxJsonLIB.pyi +0 -29
- mysqldbctrlapi-1.2512.1103/src/mySQLDBCtrlAPI/out/mySQLDBCtrlAPI/mySQLDBCtrl.pyi +0 -114
- mysqldbctrlapi-1.2512.1103/src/mySQLDBCtrlAPI/out/mySQLDBCtrlAPI/mySQLNetSSH.pyi +0 -15
- mysqldbctrlapi-1.2512.1103/src/mySQLDBCtrlAPI/out/mySQLDBCtrlAPI/mySQLxJsonLIB.pyi +0 -29
- mysqldbctrlapi-1.2512.1103/src/mySQLDBCtrlAPI.egg-info/PKG-INFO +0 -98
- mysqldbctrlapi-1.2512.1103/src/mySQLDBCtrlAPI.egg-info/SOURCES.txt +0 -20
- mysqldbctrlapi-1.2512.1103/src/mySQLDBCtrlAPI.egg-info/requires.txt +0 -4
- mysqldbctrlapi-1.2512.1103/src/mySQLDBCtrlAPI.egg-info/top_level.txt +0 -1
- {mysqldbctrlapi-1.2512.1103 → mysqldbctrlapi-1.2603.1301}/LICENSE +0 -0
- {mysqldbctrlapi-1.2512.1103 → mysqldbctrlapi-1.2603.1301}/MANIFEST.in +0 -0
- {mysqldbctrlapi-1.2512.1103 → mysqldbctrlapi-1.2603.1301}/setup.cfg +0 -0
- {mysqldbctrlapi-1.2512.1103 → mysqldbctrlapi-1.2603.1301}/src/mySQLDBCtrlAPI.egg-info/dependency_links.txt +0 -0
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: mySQLDBCtrlAPI
|
|
3
|
+
Version: 1.2603.1301
|
|
4
|
+
Summary: DBCtrlAPI Python package
|
|
5
|
+
Author-email: James Lin <tylin123@ms27.hinet.net>
|
|
6
|
+
License: Copyright (c) 2025 James Lin
|
|
7
|
+
|
|
8
|
+
All rights reserved.
|
|
9
|
+
|
|
10
|
+
Permission is granted for **personal, educational, or non-commercial use only**.
|
|
11
|
+
You **may NOT**:
|
|
12
|
+
|
|
13
|
+
1. Sell or otherwise commercially exploit this software or any part of it.
|
|
14
|
+
2. Reproduce, distribute, or sublicense this software for commercial purposes.
|
|
15
|
+
3. Modify or create derivative works for commercial purposes without explicit written permission from the copyright holder.
|
|
16
|
+
|
|
17
|
+
You **may**:
|
|
18
|
+
|
|
19
|
+
- Use the software for personal learning, research, or internal company evaluation (non-commercial).
|
|
20
|
+
- Share the software with attribution to the original author, as long as it is not for commercial gain.
|
|
21
|
+
|
|
22
|
+
**Disclaimer:**
|
|
23
|
+
This software is provided "AS IS", without any warranty of any kind, either expressed or implied,
|
|
24
|
+
including but not limited to the warranties of merchantability, fitness for a particular purpose, or non-infringement.
|
|
25
|
+
In no event shall the author be liable for any claim, damages, or other liability arising from, out of, or in connection with the software or its use.
|
|
26
|
+
|
|
27
|
+
Project-URL: Homepage, https://mis.gotech.biz
|
|
28
|
+
Requires-Python: >=3.10
|
|
29
|
+
Description-Content-Type: text/markdown
|
|
30
|
+
License-File: LICENSE
|
|
31
|
+
Requires-Dist: pyodbc
|
|
32
|
+
Dynamic: license-file
|
|
33
|
+
|
|
34
|
+
#DBCtrlAPI
|
|
35
|
+
|
|
36
|
+
## History of version
|
|
37
|
+
Version 1.2603.1301: 2026/03/13<BR>
|
|
38
|
+
Create DBCtrlAPI for ODBC Database connect API
|
|
@@ -4,19 +4,16 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "mySQLDBCtrlAPI"
|
|
7
|
-
version = "1.
|
|
7
|
+
version = "1.2603.1301"
|
|
8
8
|
requires-python = ">=3.10"
|
|
9
|
-
description = "
|
|
9
|
+
description = "DBCtrlAPI Python package"
|
|
10
10
|
authors = [
|
|
11
11
|
{ name="James Lin", email="tylin123@ms27.hinet.net" }
|
|
12
12
|
]
|
|
13
13
|
readme = "README.md"
|
|
14
14
|
license = { file = "LICENSE" }
|
|
15
15
|
dependencies = [
|
|
16
|
-
"
|
|
17
|
-
"sshtunnel",
|
|
18
|
-
"ulid-py",
|
|
19
|
-
"paramiko"
|
|
16
|
+
"pyodbc"
|
|
20
17
|
]
|
|
21
18
|
|
|
22
19
|
[project.urls]
|
|
Binary file
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
from _typeshed import Incomplete
|
|
2
|
+
from dataclasses import dataclass
|
|
3
|
+
from enum import IntEnum
|
|
4
|
+
|
|
5
|
+
class ENUM_DB_DSN(IntEnum):
|
|
6
|
+
cE_DSN_MSAccess = 0
|
|
7
|
+
cE_DSN_SQLServer = 1
|
|
8
|
+
cE_DSN_MySQL = 2
|
|
9
|
+
cE_DSN_PgSQL = 3
|
|
10
|
+
|
|
11
|
+
ODBC_DRIVER_MAP: Incomplete
|
|
12
|
+
|
|
13
|
+
@dataclass
|
|
14
|
+
class STRU_ODBCDBInfo:
|
|
15
|
+
mE_DB_DSN: ENUM_DB_DSN
|
|
16
|
+
ms_DB_Path: str = ...
|
|
17
|
+
ms_Server: str = ...
|
|
18
|
+
ms_DB_Name: str = ...
|
|
19
|
+
ms_User: str = ...
|
|
20
|
+
ms_Password: str = ...
|
|
21
|
+
|
|
22
|
+
class CLASS_DBCtrl:
|
|
23
|
+
CUobj_Conn: Incomplete
|
|
24
|
+
CVmi_qryRECCNT: int
|
|
25
|
+
def __init__(self) -> None: ...
|
|
26
|
+
def CUF_CheckDriver(self, mE_DB_DSN: ENUM_DB_DSN): ...
|
|
27
|
+
def CUF_BuildConnStr(self, Pstru_DBInfo): ...
|
|
28
|
+
def CUF_OpenConnection(self, Pstru_DBInfo): ...
|
|
29
|
+
def CUF_DB_OpenSQL(self, Pobj_Connection, Pms_SQL): ...
|
|
30
|
+
def CUF_DB_FETCH(self, Pobj_Query, Pcolumns): ...
|
|
31
|
+
def CUF_Next(self, Pobj_Query, Pcolumns): ...
|
|
32
|
+
def CUF_DB_Eof(self, Pobj_Query): ...
|
|
33
|
+
def CUF_Eof(self, Pobj_Query): ...
|
|
34
|
+
def CUF_DB_ExecSQL(self, Pms_SQL): ...
|
|
35
|
+
def CUF_GetBlobField(self, Pobj_DataSet: str, Pms_BlobFieldName: str, Pms_FileName: str): ...
|
|
36
|
+
def CUF_GET_BLOB(self, Pobj_DataSet: str, Pms_BlobFieldName: str, Pms_FileName: str): ...
|
|
37
|
+
def CUF_SetBlobField(self, Pobj_Query, Pms_TableName, Pms_QUERY, Pms_BlobFieldName, Pms_FileName) -> None: ...
|
|
38
|
+
def CUF_SET_BLOB(self, Pobj_Query, Pms_TableName, Pms_QUERY, Pms_BlobFieldName, Pms_FileName) -> None: ...
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
from _typeshed import Incomplete
|
|
2
|
+
from dataclasses import dataclass
|
|
3
|
+
from enum import IntEnum
|
|
4
|
+
|
|
5
|
+
class ENUM_DB_DSN(IntEnum):
|
|
6
|
+
cE_DSN_MSAccess = 0
|
|
7
|
+
cE_DSN_SQLServer = 1
|
|
8
|
+
cE_DSN_MySQL = 2
|
|
9
|
+
cE_DSN_PgSQL = 3
|
|
10
|
+
|
|
11
|
+
ODBC_DRIVER_MAP: Incomplete
|
|
12
|
+
|
|
13
|
+
@dataclass
|
|
14
|
+
class STRU_ODBCDBInfo:
|
|
15
|
+
mE_DB_DSN: ENUM_DB_DSN
|
|
16
|
+
ms_DB_Path: str = ...
|
|
17
|
+
ms_Server: str = ...
|
|
18
|
+
ms_DB_Name: str = ...
|
|
19
|
+
ms_User: str = ...
|
|
20
|
+
ms_Password: str = ...
|
|
21
|
+
|
|
22
|
+
class CLASS_DBCtrl:
|
|
23
|
+
CUobj_Conn: Incomplete
|
|
24
|
+
CVmi_qryRECCNT: int
|
|
25
|
+
def __init__(self) -> None: ...
|
|
26
|
+
def CUF_CheckDriver(self, mE_DB_DSN: ENUM_DB_DSN): ...
|
|
27
|
+
def CUF_BuildConnStr(self, Pstru_DBInfo): ...
|
|
28
|
+
def CUF_OpenConnection(self, Pstru_DBInfo): ...
|
|
29
|
+
def CUF_DB_OpenSQL(self, Pobj_Connection, Pms_SQL): ...
|
|
30
|
+
def CUF_DB_FETCH(self, Pobj_Query, Pcolumns): ...
|
|
31
|
+
def CUF_Next(self, Pobj_Query, Pcolumns): ...
|
|
32
|
+
def CUF_DB_Eof(self, Pobj_Query): ...
|
|
33
|
+
def CUF_Eof(self, Pobj_Query): ...
|
|
34
|
+
def CUF_DB_ExecSQL(self, Pms_SQL): ...
|
|
35
|
+
def CUF_GetBlobField(self, Pobj_DataSet: str, Pms_BlobFieldName: str, Pms_FileName: str): ...
|
|
36
|
+
def CUF_GET_BLOB(self, Pobj_DataSet: str, Pms_BlobFieldName: str, Pms_FileName: str): ...
|
|
37
|
+
def CUF_SetBlobField(self, Pobj_Query, Pms_TableName, Pms_QUERY, Pms_BlobFieldName, Pms_FileName) -> None: ...
|
|
38
|
+
def CUF_SET_BLOB(self, Pobj_Query, Pms_TableName, Pms_QUERY, Pms_BlobFieldName, Pms_FileName) -> None: ...
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: mySQLDBCtrlAPI
|
|
3
|
+
Version: 1.2603.1301
|
|
4
|
+
Summary: DBCtrlAPI Python package
|
|
5
|
+
Author-email: James Lin <tylin123@ms27.hinet.net>
|
|
6
|
+
License: Copyright (c) 2025 James Lin
|
|
7
|
+
|
|
8
|
+
All rights reserved.
|
|
9
|
+
|
|
10
|
+
Permission is granted for **personal, educational, or non-commercial use only**.
|
|
11
|
+
You **may NOT**:
|
|
12
|
+
|
|
13
|
+
1. Sell or otherwise commercially exploit this software or any part of it.
|
|
14
|
+
2. Reproduce, distribute, or sublicense this software for commercial purposes.
|
|
15
|
+
3. Modify or create derivative works for commercial purposes without explicit written permission from the copyright holder.
|
|
16
|
+
|
|
17
|
+
You **may**:
|
|
18
|
+
|
|
19
|
+
- Use the software for personal learning, research, or internal company evaluation (non-commercial).
|
|
20
|
+
- Share the software with attribution to the original author, as long as it is not for commercial gain.
|
|
21
|
+
|
|
22
|
+
**Disclaimer:**
|
|
23
|
+
This software is provided "AS IS", without any warranty of any kind, either expressed or implied,
|
|
24
|
+
including but not limited to the warranties of merchantability, fitness for a particular purpose, or non-infringement.
|
|
25
|
+
In no event shall the author be liable for any claim, damages, or other liability arising from, out of, or in connection with the software or its use.
|
|
26
|
+
|
|
27
|
+
Project-URL: Homepage, https://mis.gotech.biz
|
|
28
|
+
Requires-Python: >=3.10
|
|
29
|
+
Description-Content-Type: text/markdown
|
|
30
|
+
License-File: LICENSE
|
|
31
|
+
Requires-Dist: pyodbc
|
|
32
|
+
Dynamic: license-file
|
|
33
|
+
|
|
34
|
+
#DBCtrlAPI
|
|
35
|
+
|
|
36
|
+
## History of version
|
|
37
|
+
Version 1.2603.1301: 2026/03/13<BR>
|
|
38
|
+
Create DBCtrlAPI for ODBC Database connect API
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
LICENSE
|
|
2
|
+
MANIFEST.in
|
|
3
|
+
README.md
|
|
4
|
+
pyproject.toml
|
|
5
|
+
setup.cfg
|
|
6
|
+
src/DBCtrlAPI/DBCtrl.cp310-win_amd64.pyd
|
|
7
|
+
src/DBCtrlAPI/DBCtrl.pyi
|
|
8
|
+
src/DBCtrlAPI/__init__.py
|
|
9
|
+
src/DBCtrlAPI/out/DBCtrlAPI/DBCtrl.pyi
|
|
10
|
+
src/mySQLDBCtrlAPI.egg-info/PKG-INFO
|
|
11
|
+
src/mySQLDBCtrlAPI.egg-info/SOURCES.txt
|
|
12
|
+
src/mySQLDBCtrlAPI.egg-info/dependency_links.txt
|
|
13
|
+
src/mySQLDBCtrlAPI.egg-info/requires.txt
|
|
14
|
+
src/mySQLDBCtrlAPI.egg-info/top_level.txt
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
pyodbc
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
DBCtrlAPI
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.4
|
|
2
|
-
Name: mySQLDBCtrlAPI
|
|
3
|
-
Version: 1.2512.1103
|
|
4
|
-
Summary: mySQLDBCtrlAPI Python package
|
|
5
|
-
Author-email: James Lin <tylin123@ms27.hinet.net>
|
|
6
|
-
License: Copyright (c) 2025 James Lin
|
|
7
|
-
|
|
8
|
-
All rights reserved.
|
|
9
|
-
|
|
10
|
-
Permission is granted for **personal, educational, or non-commercial use only**.
|
|
11
|
-
You **may NOT**:
|
|
12
|
-
|
|
13
|
-
1. Sell or otherwise commercially exploit this software or any part of it.
|
|
14
|
-
2. Reproduce, distribute, or sublicense this software for commercial purposes.
|
|
15
|
-
3. Modify or create derivative works for commercial purposes without explicit written permission from the copyright holder.
|
|
16
|
-
|
|
17
|
-
You **may**:
|
|
18
|
-
|
|
19
|
-
- Use the software for personal learning, research, or internal company evaluation (non-commercial).
|
|
20
|
-
- Share the software with attribution to the original author, as long as it is not for commercial gain.
|
|
21
|
-
|
|
22
|
-
**Disclaimer:**
|
|
23
|
-
This software is provided "AS IS", without any warranty of any kind, either expressed or implied,
|
|
24
|
-
including but not limited to the warranties of merchantability, fitness for a particular purpose, or non-infringement.
|
|
25
|
-
In no event shall the author be liable for any claim, damages, or other liability arising from, out of, or in connection with the software or its use.
|
|
26
|
-
|
|
27
|
-
Project-URL: Homepage, https://mis.gotech.biz
|
|
28
|
-
Requires-Python: >=3.10
|
|
29
|
-
Description-Content-Type: text/markdown
|
|
30
|
-
License-File: LICENSE
|
|
31
|
-
Requires-Dist: pymysql
|
|
32
|
-
Requires-Dist: sshtunnel
|
|
33
|
-
Requires-Dist: ulid-py
|
|
34
|
-
Requires-Dist: paramiko
|
|
35
|
-
Dynamic: license-file
|
|
36
|
-
|
|
37
|
-
#mySQLDBCtrlAPI
|
|
38
|
-
|
|
39
|
-
## History of version
|
|
40
|
-
Version 1.2512.1103: 2025/12/11<BR>
|
|
41
|
-
Fixed encode problem (UTF-8) CLASS_mySQLxJson.CUF_jsonContent_to_mysql()<BR>
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
Version 1.2512.1102: 2025/12/11<BR>
|
|
45
|
-
Improve CLASS_mySQLxJson function:CUF_jsonContent_to_mysql(...)<BR>
|
|
46
|
-
|
|
47
|
-
Version 1.2512.1101: 2025/12/11<BR>
|
|
48
|
-
1) Add enumerate property in CLASS_mySQLDBCtrl<BR>
|
|
49
|
-
2) Add Table tools for create / drop / find / list.<BR>
|
|
50
|
-
3) Add Index tools for create / drop.<BR>
|
|
51
|
-
4) Fixed bugs in ssh algorithm.<BR>
|
|
52
|
-
5) Tunning performance for query procedure.<BR>
|
|
53
|
-
|
|
54
|
-
Version 1.2512.0403: 2025/12/04<BR>
|
|
55
|
-
Fixed ssh tunnel service thread fault.
|
|
56
|
-
|
|
57
|
-
Version 1.2512.0401: 2025/12/04<BR>
|
|
58
|
-
Add Advance ssh tunnel service (ver2.0) package.
|
|
59
|
-
|
|
60
|
-
Version 1.2512.0302: 2025/12/03<BR>
|
|
61
|
-
Add ssh tunnel service package.
|
|
62
|
-
|
|
63
|
-
Version 1.2512.0301: 2025/12/03<BR>
|
|
64
|
-
Add CLASS_mySQLxJson Library for convert json data into mysql each other.
|
|
65
|
-
|
|
66
|
-
Version 1.2512.0101: 2025/12/01<BR>
|
|
67
|
-
Fixed error CUF_GetServerDateTime(...) when error on fetch data from dataset
|
|
68
|
-
|
|
69
|
-
Version 1.2511.28: 2025/11/28<BR>
|
|
70
|
-
Fixed error CUF_GET_Blob(...) will disturbe cursor position.
|
|
71
|
-
|
|
72
|
-
Version 1.2511.27: 2025/11/27<BR>
|
|
73
|
-
Fixed error CUF_DB_Eof(...) and CUF_Eof(...) --> When DataSet was empty.
|
|
74
|
-
|
|
75
|
-
Version 1.2511.26: 2025/11/26<BR>
|
|
76
|
-
Fixed CUF_DB_OpenSQL(...) return failure when Null data.
|
|
77
|
-
|
|
78
|
-
Version 1.2511.06: 2025/11/25<BR>
|
|
79
|
-
Fixed Eof() bugs.
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
Version 1.2511.06: 2025/11/06<BR>
|
|
83
|
-
Fixed utf8 and big5(latin) encode bugs.
|
|
84
|
-
|
|
85
|
-
Version 1.2510.23: 2025/10/22<BR>
|
|
86
|
-
Fixed version bugs.
|
|
87
|
-
|
|
88
|
-
Version 1.2510.22: 2025/10/22<BR>
|
|
89
|
-
1.Add string decode method (translage utf8 charset -> utf-8)
|
|
90
|
-
2.Add Eof() procedure
|
|
91
|
-
3.Fixed CUF_DB_ExecSQL() and CUF_DB_OpenSQL() bugs.
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
Version 0.1.2: 2025/10/09<BR>
|
|
95
|
-
Add string decode method (translage big5 charset -> utf-8)
|
|
96
|
-
|
|
97
|
-
Version 0.1.1: 2025/09/19<BR>
|
|
98
|
-
Fixed some bugs.
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
#mySQLDBCtrlAPI
|
|
2
|
-
|
|
3
|
-
## History of version
|
|
4
|
-
Version 1.2512.1103: 2025/12/11<BR>
|
|
5
|
-
Fixed encode problem (UTF-8) CLASS_mySQLxJson.CUF_jsonContent_to_mysql()<BR>
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
Version 1.2512.1102: 2025/12/11<BR>
|
|
9
|
-
Improve CLASS_mySQLxJson function:CUF_jsonContent_to_mysql(...)<BR>
|
|
10
|
-
|
|
11
|
-
Version 1.2512.1101: 2025/12/11<BR>
|
|
12
|
-
1) Add enumerate property in CLASS_mySQLDBCtrl<BR>
|
|
13
|
-
2) Add Table tools for create / drop / find / list.<BR>
|
|
14
|
-
3) Add Index tools for create / drop.<BR>
|
|
15
|
-
4) Fixed bugs in ssh algorithm.<BR>
|
|
16
|
-
5) Tunning performance for query procedure.<BR>
|
|
17
|
-
|
|
18
|
-
Version 1.2512.0403: 2025/12/04<BR>
|
|
19
|
-
Fixed ssh tunnel service thread fault.
|
|
20
|
-
|
|
21
|
-
Version 1.2512.0401: 2025/12/04<BR>
|
|
22
|
-
Add Advance ssh tunnel service (ver2.0) package.
|
|
23
|
-
|
|
24
|
-
Version 1.2512.0302: 2025/12/03<BR>
|
|
25
|
-
Add ssh tunnel service package.
|
|
26
|
-
|
|
27
|
-
Version 1.2512.0301: 2025/12/03<BR>
|
|
28
|
-
Add CLASS_mySQLxJson Library for convert json data into mysql each other.
|
|
29
|
-
|
|
30
|
-
Version 1.2512.0101: 2025/12/01<BR>
|
|
31
|
-
Fixed error CUF_GetServerDateTime(...) when error on fetch data from dataset
|
|
32
|
-
|
|
33
|
-
Version 1.2511.28: 2025/11/28<BR>
|
|
34
|
-
Fixed error CUF_GET_Blob(...) will disturbe cursor position.
|
|
35
|
-
|
|
36
|
-
Version 1.2511.27: 2025/11/27<BR>
|
|
37
|
-
Fixed error CUF_DB_Eof(...) and CUF_Eof(...) --> When DataSet was empty.
|
|
38
|
-
|
|
39
|
-
Version 1.2511.26: 2025/11/26<BR>
|
|
40
|
-
Fixed CUF_DB_OpenSQL(...) return failure when Null data.
|
|
41
|
-
|
|
42
|
-
Version 1.2511.06: 2025/11/25<BR>
|
|
43
|
-
Fixed Eof() bugs.
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
Version 1.2511.06: 2025/11/06<BR>
|
|
47
|
-
Fixed utf8 and big5(latin) encode bugs.
|
|
48
|
-
|
|
49
|
-
Version 1.2510.23: 2025/10/22<BR>
|
|
50
|
-
Fixed version bugs.
|
|
51
|
-
|
|
52
|
-
Version 1.2510.22: 2025/10/22<BR>
|
|
53
|
-
1.Add string decode method (translage utf8 charset -> utf-8)
|
|
54
|
-
2.Add Eof() procedure
|
|
55
|
-
3.Fixed CUF_DB_ExecSQL() and CUF_DB_OpenSQL() bugs.
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
Version 0.1.2: 2025/10/09<BR>
|
|
59
|
-
Add string decode method (translage big5 charset -> utf-8)
|
|
60
|
-
|
|
61
|
-
Version 0.1.1: 2025/09/19<BR>
|
|
62
|
-
Fixed some bugs.
|
|
Binary file
|
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
from _typeshed import Incomplete
|
|
2
|
-
from dataclasses import dataclass
|
|
3
|
-
from enum import IntEnum
|
|
4
|
-
from typing import Any
|
|
5
|
-
|
|
6
|
-
class ENUM_DB_CHARSET(IntEnum):
|
|
7
|
-
cE_DBCS_ascii = 0
|
|
8
|
-
cE_DBCS_big5 = 1
|
|
9
|
-
cE_DBCS_binary = 2
|
|
10
|
-
cE_DBCS_cp1250 = 3
|
|
11
|
-
cE_DBCS_gb2312 = 4
|
|
12
|
-
cE_DBCS_gbk = 5
|
|
13
|
-
cE_DBCS_latin1 = 6
|
|
14
|
-
cE_DBCS_latin2 = 7
|
|
15
|
-
cE_DBCS_latin5 = 8
|
|
16
|
-
cE_DBCS_latin7 = 9
|
|
17
|
-
cE_DBCS_utf16 = 10
|
|
18
|
-
cE_DBCS_utf16le = 11
|
|
19
|
-
cE_DBCS_utf32 = 12
|
|
20
|
-
cE_DBCS_utf8mb3 = 13
|
|
21
|
-
cE_DBCS_utf8mb4 = 14
|
|
22
|
-
|
|
23
|
-
class ENUM_TABLE_TYPE(IntEnum):
|
|
24
|
-
cE_TABTP_Standard = 1
|
|
25
|
-
cE_TABTP_Memory = 2
|
|
26
|
-
cE_TABTP_MyISAM = 3
|
|
27
|
-
|
|
28
|
-
class ENUM_FIELD_TYPE(IntEnum):
|
|
29
|
-
cE_FLDTP_INT = 1
|
|
30
|
-
cE_FLDTP_VARCHAR = 2
|
|
31
|
-
cE_FLDTP_FLOAT = 3
|
|
32
|
-
cE_FLDTP_DATETIME = 4
|
|
33
|
-
cE_FLDTP_TEXT = 5
|
|
34
|
-
|
|
35
|
-
class ENUM_INDEX_TYPE(IntEnum):
|
|
36
|
-
cE_IDX_Normal = 1
|
|
37
|
-
cE_IDX_Unique = 2
|
|
38
|
-
cE_IDX_FullText = 3
|
|
39
|
-
cE_IDX_Spatial = 4
|
|
40
|
-
|
|
41
|
-
@dataclass
|
|
42
|
-
class STRU_DEF_Fields:
|
|
43
|
-
ms_Name: str
|
|
44
|
-
mE_Type: ENUM_FIELD_TYPE
|
|
45
|
-
mi_Length: int | None = ...
|
|
46
|
-
mB_PrimaryKey: bool = ...
|
|
47
|
-
mB_AutoInc: bool = ...
|
|
48
|
-
mB_Nullable: bool = ...
|
|
49
|
-
mU_Default: Any | None = ...
|
|
50
|
-
mB_Unique: bool = ...
|
|
51
|
-
|
|
52
|
-
@dataclass
|
|
53
|
-
class STRU_DEF_Index:
|
|
54
|
-
ms_IndexName: str
|
|
55
|
-
obj_FieldList: list
|
|
56
|
-
mE_IndexType: ENUM_INDEX_TYPE = ...
|
|
57
|
-
mB_Unique: bool = ...
|
|
58
|
-
mB_FullText: bool = ...
|
|
59
|
-
mB_Spatial: bool = ...
|
|
60
|
-
|
|
61
|
-
@dataclass
|
|
62
|
-
class STRU_mySQLDBInfo:
|
|
63
|
-
ms_DB_HostIP: str = ...
|
|
64
|
-
mi_DB_Port: int = ...
|
|
65
|
-
ms_DB_Name: str = ...
|
|
66
|
-
ms_User: str = ...
|
|
67
|
-
ms_Password: str = ...
|
|
68
|
-
|
|
69
|
-
class CLASS_mySQLDBCtrl:
|
|
70
|
-
CUms_DB_HostIP: str
|
|
71
|
-
CUmi_DB_Port: int
|
|
72
|
-
CUms_DB_Name: str
|
|
73
|
-
CUms_User: str
|
|
74
|
-
CUms_Password: str
|
|
75
|
-
CUobj_Conn: Incomplete
|
|
76
|
-
CVmi_qryRECCNT: int
|
|
77
|
-
CVmsa_DBCS: Incomplete
|
|
78
|
-
def __init__(self) -> None: ...
|
|
79
|
-
def CUF_SET_Charset(self, PmE_DB_Charset: ENUM_DB_CHARSET): ...
|
|
80
|
-
def CUF_OpenConnection_DBCS(self, Pms_DB_HostIP, Pmi_DB_Port, Pms_DB_Name, Pms_User, Pms_Password, PmE_DB_CHARSET): ...
|
|
81
|
-
def CUF_OpenConnection(self, Pms_DB_HostIP, Pmi_DB_Port, Pms_DB_Name, Pms_User, Pms_Password): ...
|
|
82
|
-
def CUF_DB_OpenConn(self, Pstru_mySQLDBInfo: STRU_mySQLDBInfo): ...
|
|
83
|
-
def CUF_DB_OpenSQL(self, Pobj_Connection, Pms_SQL): ...
|
|
84
|
-
def CUF_DB_OpenSQL_utf8(self, Pobj_Connection, Pms_SQL): ...
|
|
85
|
-
def CUF_DB_FETCH(self, Pobj_Query): ...
|
|
86
|
-
def CUF_DB_Next(self, Pobj_Query): ...
|
|
87
|
-
def CUF_Next(self, Pobj_Query): ...
|
|
88
|
-
def CUF_DB_ExecSQL(self, Pobj_Connection, Pms_SQL): ...
|
|
89
|
-
def CUF_DB_ExecSQL_utf8(self, Pobj_Connection, Pms_SQL): ...
|
|
90
|
-
def CUF_DB_RecordCount(self, Pobj_Query): ...
|
|
91
|
-
def CUF_DB_RECCOUNT(self, Pobj_Query): ...
|
|
92
|
-
def CUF_DB_Eof(self, Pobj_Query): ...
|
|
93
|
-
def CUF_Eof(self, Pobj_Query): ...
|
|
94
|
-
def CUF_str_utf8(self, Pobj_DataSet): ...
|
|
95
|
-
def CUF_utf8(self, Pobj_DataSet): ...
|
|
96
|
-
def CUF_str_big5(self, Pobj_DataSet): ...
|
|
97
|
-
def CUF_big5(self, Pobj_DataSet): ...
|
|
98
|
-
def CUF_GetBlobField(self, Pobj_DataSet, Pms_BlobFieldName, Pms_FileName) -> None: ...
|
|
99
|
-
def CUF_GET_Blob(self, Pobj_Query, Pms_BlobFieldName, Pms_FileName) -> None: ...
|
|
100
|
-
def CUF_SetBlobField(self, Pobj_Query, Pms_TableName, Pms_QUERY, Pms_BlobFieldName, Pms_FileName) -> None: ...
|
|
101
|
-
def CUF_SET_BLOB(self, Pobj_Query, Pms_TableName, Pms_QUERY, Pms_BlobFieldName, Pms_FileName) -> None: ...
|
|
102
|
-
def CUF_Table_Find(self, Pms_TableName: str) -> bool: ...
|
|
103
|
-
def CUF_Table_Drop(self, Pms_TableName: str) -> bool: ...
|
|
104
|
-
def CUF_Table_List(self, Pobj_TableNameList: list) -> bool: ...
|
|
105
|
-
def CUF_TABLE_Create(self, PmE_TableType: ENUM_TABLE_TYPE, Pms_TableName: str, Pobj_FieldsList: list[STRU_DEF_Fields], PmB_ExecSQL: bool = True, PmB_ForceCreate: bool = False) -> str: ...
|
|
106
|
-
def CUF_INDEX_Create(self, Pms_TableName: str, Pobj_IndexList: list[STRU_DEF_Index], PmB_ExecSQL: bool = True) -> list: ...
|
|
107
|
-
def CUF_INDEX_Drop(self, Pms_TableName: str, Pobj_IndexNameList: list, PmB_ExecSQL: bool = True) -> list: ...
|
|
108
|
-
def CUF_GetServerDateTime(self, Pms_SEPCHAR_DATE, Pms_SEPCHAR_TIME, Pms_SEPERATOR): ...
|
|
109
|
-
def CUF_GetServerDateTime1(self, PmB_DELIMITER): ...
|
|
110
|
-
def CUF_GetServerDateTime2(self): ...
|
|
111
|
-
def CUF_GetServerDate(self, Pms_DELIMITER): ...
|
|
112
|
-
def CUF_GetServerTime(self, Pms_DELIMITER): ...
|
|
113
|
-
def CUF_AddTime(self, Pms_DateTime, Pmi_TimeSecond): ...
|
|
114
|
-
def CUF_AddTime_Current(self, Pmi_TimeSecond): ...
|
|
Binary file
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
from _typeshed import Incomplete
|
|
2
|
-
|
|
3
|
-
GLOBAL_SSH_INSTANCE: Incomplete
|
|
4
|
-
|
|
5
|
-
class CLASS_mySQLNetSSH:
|
|
6
|
-
ssh: Incomplete
|
|
7
|
-
forward_threads: Incomplete
|
|
8
|
-
running: bool
|
|
9
|
-
def __init__(self) -> None: ...
|
|
10
|
-
def CUF_SSH_Connect(self, host, port, user, password=None, pkey_path=None, pkey_pass=None): ...
|
|
11
|
-
def CUF_AddPortForward(self, local_host, local_port, remote_host, remote_port) -> None: ...
|
|
12
|
-
def CUF_Tunnel_Start(self): ...
|
|
13
|
-
def CUF_Tunnel_Stop(self) -> None: ...
|
|
14
|
-
def CUF_IsAlive(self): ...
|
|
15
|
-
def CUF_ReleaseAll(self) -> None: ...
|
|
Binary file
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
from pymysql.connections import Connection as Connection
|
|
2
|
-
from typing import Any
|
|
3
|
-
|
|
4
|
-
class CLASS_mySQLxJson:
|
|
5
|
-
CVobj_ZConn: Connection
|
|
6
|
-
USE_ID_MODE: str
|
|
7
|
-
CHARSET: str
|
|
8
|
-
def __init__(self, Pobj_ZConn: Connection, charset: str = 'utf8mb4') -> None: ...
|
|
9
|
-
def CUF_str_big5(self, Pobj_DataSet): ...
|
|
10
|
-
def CUF_str_utf8(self, Pobj_DataSet): ...
|
|
11
|
-
def CUF_is_utf8(self, text: str) -> bool: ...
|
|
12
|
-
def CUF_try_fix_encoding(self, text: str) -> str: ...
|
|
13
|
-
def gen_table_name(self, base: str) -> str: ...
|
|
14
|
-
def infer_mysql_type(self, value: Any) -> str: ...
|
|
15
|
-
def create_table(self, table_name: str, sample_row: dict[str, Any]): ...
|
|
16
|
-
def insert_rows(self, table: str, rows: list[dict[str, Any]]): ...
|
|
17
|
-
def process_value(self, parent_table: str, key: str, value: Any) -> Any: ...
|
|
18
|
-
def CUF_json_to_mysql(self, table_name: str, json_data: dict | list): ...
|
|
19
|
-
def CUF_jsonContent_to_mysql(self, Pms_TableName: str, Pms_Json_Content: str): ...
|
|
20
|
-
def load_table_rows(self, table_name: str) -> list[dict[str, Any]]: ...
|
|
21
|
-
def restore_value(self, value: Any) -> Any: ...
|
|
22
|
-
def restore_row(self, row: dict[str, Any]) -> dict[str, Any]: ...
|
|
23
|
-
def CUF_mysql_to_json(self, table_name: str) -> dict | list: ...
|
|
24
|
-
def CUF_Export_json(self, Pobj_json_DataSet: dict | list, Pmi_Ident: int = 2): ...
|
|
25
|
-
def CUF_RelDict_Build(self, Pms_Json_TableName: str, Pms_Dict_TableName: str = '', PmB_IsMemTable: bool = True): ...
|
|
26
|
-
def CUF_RelDict_Remove(self, Pms_Dict_TableName: str): ...
|
|
27
|
-
def CUF_RelDict_FindTable(self, Pms_Json_TableName: str, Pms_KeyName: str, Pms_Dict_TableName: str = ''): ...
|
|
28
|
-
def CUF_RelDict_FindKeys(self, Pms_Json_TableName: str, Pms_Dict_TableName: str = ''): ...
|
|
29
|
-
def CUF_RemoveJsonTable(self, table_name: str): ...
|
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
from _typeshed import Incomplete
|
|
2
|
-
from dataclasses import dataclass
|
|
3
|
-
from enum import IntEnum
|
|
4
|
-
from typing import Any
|
|
5
|
-
|
|
6
|
-
class ENUM_DB_CHARSET(IntEnum):
|
|
7
|
-
cE_DBCS_ascii = 0
|
|
8
|
-
cE_DBCS_big5 = 1
|
|
9
|
-
cE_DBCS_binary = 2
|
|
10
|
-
cE_DBCS_cp1250 = 3
|
|
11
|
-
cE_DBCS_gb2312 = 4
|
|
12
|
-
cE_DBCS_gbk = 5
|
|
13
|
-
cE_DBCS_latin1 = 6
|
|
14
|
-
cE_DBCS_latin2 = 7
|
|
15
|
-
cE_DBCS_latin5 = 8
|
|
16
|
-
cE_DBCS_latin7 = 9
|
|
17
|
-
cE_DBCS_utf16 = 10
|
|
18
|
-
cE_DBCS_utf16le = 11
|
|
19
|
-
cE_DBCS_utf32 = 12
|
|
20
|
-
cE_DBCS_utf8mb3 = 13
|
|
21
|
-
cE_DBCS_utf8mb4 = 14
|
|
22
|
-
|
|
23
|
-
class ENUM_TABLE_TYPE(IntEnum):
|
|
24
|
-
cE_TABTP_Standard = 1
|
|
25
|
-
cE_TABTP_Memory = 2
|
|
26
|
-
cE_TABTP_MyISAM = 3
|
|
27
|
-
|
|
28
|
-
class ENUM_FIELD_TYPE(IntEnum):
|
|
29
|
-
cE_FLDTP_INT = 1
|
|
30
|
-
cE_FLDTP_VARCHAR = 2
|
|
31
|
-
cE_FLDTP_FLOAT = 3
|
|
32
|
-
cE_FLDTP_DATETIME = 4
|
|
33
|
-
cE_FLDTP_TEXT = 5
|
|
34
|
-
|
|
35
|
-
class ENUM_INDEX_TYPE(IntEnum):
|
|
36
|
-
cE_IDX_Normal = 1
|
|
37
|
-
cE_IDX_Unique = 2
|
|
38
|
-
cE_IDX_FullText = 3
|
|
39
|
-
cE_IDX_Spatial = 4
|
|
40
|
-
|
|
41
|
-
@dataclass
|
|
42
|
-
class STRU_DEF_Fields:
|
|
43
|
-
ms_Name: str
|
|
44
|
-
mE_Type: ENUM_FIELD_TYPE
|
|
45
|
-
mi_Length: int | None = ...
|
|
46
|
-
mB_PrimaryKey: bool = ...
|
|
47
|
-
mB_AutoInc: bool = ...
|
|
48
|
-
mB_Nullable: bool = ...
|
|
49
|
-
mU_Default: Any | None = ...
|
|
50
|
-
mB_Unique: bool = ...
|
|
51
|
-
|
|
52
|
-
@dataclass
|
|
53
|
-
class STRU_DEF_Index:
|
|
54
|
-
ms_IndexName: str
|
|
55
|
-
obj_FieldList: list
|
|
56
|
-
mE_IndexType: ENUM_INDEX_TYPE = ...
|
|
57
|
-
mB_Unique: bool = ...
|
|
58
|
-
mB_FullText: bool = ...
|
|
59
|
-
mB_Spatial: bool = ...
|
|
60
|
-
|
|
61
|
-
@dataclass
|
|
62
|
-
class STRU_mySQLDBInfo:
|
|
63
|
-
ms_DB_HostIP: str = ...
|
|
64
|
-
mi_DB_Port: int = ...
|
|
65
|
-
ms_DB_Name: str = ...
|
|
66
|
-
ms_User: str = ...
|
|
67
|
-
ms_Password: str = ...
|
|
68
|
-
|
|
69
|
-
class CLASS_mySQLDBCtrl:
|
|
70
|
-
CUms_DB_HostIP: str
|
|
71
|
-
CUmi_DB_Port: int
|
|
72
|
-
CUms_DB_Name: str
|
|
73
|
-
CUms_User: str
|
|
74
|
-
CUms_Password: str
|
|
75
|
-
CUobj_Conn: Incomplete
|
|
76
|
-
CVmi_qryRECCNT: int
|
|
77
|
-
CVmsa_DBCS: Incomplete
|
|
78
|
-
def __init__(self) -> None: ...
|
|
79
|
-
def CUF_SET_Charset(self, PmE_DB_Charset: ENUM_DB_CHARSET): ...
|
|
80
|
-
def CUF_OpenConnection_DBCS(self, Pms_DB_HostIP, Pmi_DB_Port, Pms_DB_Name, Pms_User, Pms_Password, PmE_DB_CHARSET): ...
|
|
81
|
-
def CUF_OpenConnection(self, Pms_DB_HostIP, Pmi_DB_Port, Pms_DB_Name, Pms_User, Pms_Password): ...
|
|
82
|
-
def CUF_DB_OpenConn(self, Pstru_mySQLDBInfo: STRU_mySQLDBInfo): ...
|
|
83
|
-
def CUF_DB_OpenSQL(self, Pobj_Connection, Pms_SQL): ...
|
|
84
|
-
def CUF_DB_OpenSQL_utf8(self, Pobj_Connection, Pms_SQL): ...
|
|
85
|
-
def CUF_DB_FETCH(self, Pobj_Query): ...
|
|
86
|
-
def CUF_DB_Next(self, Pobj_Query): ...
|
|
87
|
-
def CUF_Next(self, Pobj_Query): ...
|
|
88
|
-
def CUF_DB_ExecSQL(self, Pobj_Connection, Pms_SQL): ...
|
|
89
|
-
def CUF_DB_ExecSQL_utf8(self, Pobj_Connection, Pms_SQL): ...
|
|
90
|
-
def CUF_DB_RecordCount(self, Pobj_Query): ...
|
|
91
|
-
def CUF_DB_RECCOUNT(self, Pobj_Query): ...
|
|
92
|
-
def CUF_DB_Eof(self, Pobj_Query): ...
|
|
93
|
-
def CUF_Eof(self, Pobj_Query): ...
|
|
94
|
-
def CUF_str_utf8(self, Pobj_DataSet): ...
|
|
95
|
-
def CUF_utf8(self, Pobj_DataSet): ...
|
|
96
|
-
def CUF_str_big5(self, Pobj_DataSet): ...
|
|
97
|
-
def CUF_big5(self, Pobj_DataSet): ...
|
|
98
|
-
def CUF_GetBlobField(self, Pobj_DataSet, Pms_BlobFieldName, Pms_FileName) -> None: ...
|
|
99
|
-
def CUF_GET_Blob(self, Pobj_Query, Pms_BlobFieldName, Pms_FileName) -> None: ...
|
|
100
|
-
def CUF_SetBlobField(self, Pobj_Query, Pms_TableName, Pms_QUERY, Pms_BlobFieldName, Pms_FileName) -> None: ...
|
|
101
|
-
def CUF_SET_BLOB(self, Pobj_Query, Pms_TableName, Pms_QUERY, Pms_BlobFieldName, Pms_FileName) -> None: ...
|
|
102
|
-
def CUF_Table_Find(self, Pms_TableName: str) -> bool: ...
|
|
103
|
-
def CUF_Table_Drop(self, Pms_TableName: str) -> bool: ...
|
|
104
|
-
def CUF_Table_List(self, Pobj_TableNameList: list) -> bool: ...
|
|
105
|
-
def CUF_TABLE_Create(self, PmE_TableType: ENUM_TABLE_TYPE, Pms_TableName: str, Pobj_FieldsList: list[STRU_DEF_Fields], PmB_ExecSQL: bool = True, PmB_ForceCreate: bool = False) -> str: ...
|
|
106
|
-
def CUF_INDEX_Create(self, Pms_TableName: str, Pobj_IndexList: list[STRU_DEF_Index], PmB_ExecSQL: bool = True) -> list: ...
|
|
107
|
-
def CUF_INDEX_Drop(self, Pms_TableName: str, Pobj_IndexNameList: list, PmB_ExecSQL: bool = True) -> list: ...
|
|
108
|
-
def CUF_GetServerDateTime(self, Pms_SEPCHAR_DATE, Pms_SEPCHAR_TIME, Pms_SEPERATOR): ...
|
|
109
|
-
def CUF_GetServerDateTime1(self, PmB_DELIMITER): ...
|
|
110
|
-
def CUF_GetServerDateTime2(self): ...
|
|
111
|
-
def CUF_GetServerDate(self, Pms_DELIMITER): ...
|
|
112
|
-
def CUF_GetServerTime(self, Pms_DELIMITER): ...
|
|
113
|
-
def CUF_AddTime(self, Pms_DateTime, Pmi_TimeSecond): ...
|
|
114
|
-
def CUF_AddTime_Current(self, Pmi_TimeSecond): ...
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
from _typeshed import Incomplete
|
|
2
|
-
|
|
3
|
-
GLOBAL_SSH_INSTANCE: Incomplete
|
|
4
|
-
|
|
5
|
-
class CLASS_mySQLNetSSH:
|
|
6
|
-
ssh: Incomplete
|
|
7
|
-
forward_threads: Incomplete
|
|
8
|
-
running: bool
|
|
9
|
-
def __init__(self) -> None: ...
|
|
10
|
-
def CUF_SSH_Connect(self, host, port, user, password=None, pkey_path=None, pkey_pass=None): ...
|
|
11
|
-
def CUF_AddPortForward(self, local_host, local_port, remote_host, remote_port) -> None: ...
|
|
12
|
-
def CUF_Tunnel_Start(self): ...
|
|
13
|
-
def CUF_Tunnel_Stop(self) -> None: ...
|
|
14
|
-
def CUF_IsAlive(self): ...
|
|
15
|
-
def CUF_ReleaseAll(self) -> None: ...
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
from pymysql.connections import Connection as Connection
|
|
2
|
-
from typing import Any
|
|
3
|
-
|
|
4
|
-
class CLASS_mySQLxJson:
|
|
5
|
-
CVobj_ZConn: Connection
|
|
6
|
-
USE_ID_MODE: str
|
|
7
|
-
CHARSET: str
|
|
8
|
-
def __init__(self, Pobj_ZConn: Connection, charset: str = 'utf8mb4') -> None: ...
|
|
9
|
-
def CUF_str_big5(self, Pobj_DataSet): ...
|
|
10
|
-
def CUF_str_utf8(self, Pobj_DataSet): ...
|
|
11
|
-
def CUF_is_utf8(self, text: str) -> bool: ...
|
|
12
|
-
def CUF_try_fix_encoding(self, text: str) -> str: ...
|
|
13
|
-
def gen_table_name(self, base: str) -> str: ...
|
|
14
|
-
def infer_mysql_type(self, value: Any) -> str: ...
|
|
15
|
-
def create_table(self, table_name: str, sample_row: dict[str, Any]): ...
|
|
16
|
-
def insert_rows(self, table: str, rows: list[dict[str, Any]]): ...
|
|
17
|
-
def process_value(self, parent_table: str, key: str, value: Any) -> Any: ...
|
|
18
|
-
def CUF_json_to_mysql(self, table_name: str, json_data: dict | list): ...
|
|
19
|
-
def CUF_jsonContent_to_mysql(self, Pms_TableName: str, Pms_Json_Content: str): ...
|
|
20
|
-
def load_table_rows(self, table_name: str) -> list[dict[str, Any]]: ...
|
|
21
|
-
def restore_value(self, value: Any) -> Any: ...
|
|
22
|
-
def restore_row(self, row: dict[str, Any]) -> dict[str, Any]: ...
|
|
23
|
-
def CUF_mysql_to_json(self, table_name: str) -> dict | list: ...
|
|
24
|
-
def CUF_Export_json(self, Pobj_json_DataSet: dict | list, Pmi_Ident: int = 2): ...
|
|
25
|
-
def CUF_RelDict_Build(self, Pms_Json_TableName: str, Pms_Dict_TableName: str = '', PmB_IsMemTable: bool = True): ...
|
|
26
|
-
def CUF_RelDict_Remove(self, Pms_Dict_TableName: str): ...
|
|
27
|
-
def CUF_RelDict_FindTable(self, Pms_Json_TableName: str, Pms_KeyName: str, Pms_Dict_TableName: str = ''): ...
|
|
28
|
-
def CUF_RelDict_FindKeys(self, Pms_Json_TableName: str, Pms_Dict_TableName: str = ''): ...
|
|
29
|
-
def CUF_RemoveJsonTable(self, table_name: str): ...
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.4
|
|
2
|
-
Name: mySQLDBCtrlAPI
|
|
3
|
-
Version: 1.2512.1103
|
|
4
|
-
Summary: mySQLDBCtrlAPI Python package
|
|
5
|
-
Author-email: James Lin <tylin123@ms27.hinet.net>
|
|
6
|
-
License: Copyright (c) 2025 James Lin
|
|
7
|
-
|
|
8
|
-
All rights reserved.
|
|
9
|
-
|
|
10
|
-
Permission is granted for **personal, educational, or non-commercial use only**.
|
|
11
|
-
You **may NOT**:
|
|
12
|
-
|
|
13
|
-
1. Sell or otherwise commercially exploit this software or any part of it.
|
|
14
|
-
2. Reproduce, distribute, or sublicense this software for commercial purposes.
|
|
15
|
-
3. Modify or create derivative works for commercial purposes without explicit written permission from the copyright holder.
|
|
16
|
-
|
|
17
|
-
You **may**:
|
|
18
|
-
|
|
19
|
-
- Use the software for personal learning, research, or internal company evaluation (non-commercial).
|
|
20
|
-
- Share the software with attribution to the original author, as long as it is not for commercial gain.
|
|
21
|
-
|
|
22
|
-
**Disclaimer:**
|
|
23
|
-
This software is provided "AS IS", without any warranty of any kind, either expressed or implied,
|
|
24
|
-
including but not limited to the warranties of merchantability, fitness for a particular purpose, or non-infringement.
|
|
25
|
-
In no event shall the author be liable for any claim, damages, or other liability arising from, out of, or in connection with the software or its use.
|
|
26
|
-
|
|
27
|
-
Project-URL: Homepage, https://mis.gotech.biz
|
|
28
|
-
Requires-Python: >=3.10
|
|
29
|
-
Description-Content-Type: text/markdown
|
|
30
|
-
License-File: LICENSE
|
|
31
|
-
Requires-Dist: pymysql
|
|
32
|
-
Requires-Dist: sshtunnel
|
|
33
|
-
Requires-Dist: ulid-py
|
|
34
|
-
Requires-Dist: paramiko
|
|
35
|
-
Dynamic: license-file
|
|
36
|
-
|
|
37
|
-
#mySQLDBCtrlAPI
|
|
38
|
-
|
|
39
|
-
## History of version
|
|
40
|
-
Version 1.2512.1103: 2025/12/11<BR>
|
|
41
|
-
Fixed encode problem (UTF-8) CLASS_mySQLxJson.CUF_jsonContent_to_mysql()<BR>
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
Version 1.2512.1102: 2025/12/11<BR>
|
|
45
|
-
Improve CLASS_mySQLxJson function:CUF_jsonContent_to_mysql(...)<BR>
|
|
46
|
-
|
|
47
|
-
Version 1.2512.1101: 2025/12/11<BR>
|
|
48
|
-
1) Add enumerate property in CLASS_mySQLDBCtrl<BR>
|
|
49
|
-
2) Add Table tools for create / drop / find / list.<BR>
|
|
50
|
-
3) Add Index tools for create / drop.<BR>
|
|
51
|
-
4) Fixed bugs in ssh algorithm.<BR>
|
|
52
|
-
5) Tunning performance for query procedure.<BR>
|
|
53
|
-
|
|
54
|
-
Version 1.2512.0403: 2025/12/04<BR>
|
|
55
|
-
Fixed ssh tunnel service thread fault.
|
|
56
|
-
|
|
57
|
-
Version 1.2512.0401: 2025/12/04<BR>
|
|
58
|
-
Add Advance ssh tunnel service (ver2.0) package.
|
|
59
|
-
|
|
60
|
-
Version 1.2512.0302: 2025/12/03<BR>
|
|
61
|
-
Add ssh tunnel service package.
|
|
62
|
-
|
|
63
|
-
Version 1.2512.0301: 2025/12/03<BR>
|
|
64
|
-
Add CLASS_mySQLxJson Library for convert json data into mysql each other.
|
|
65
|
-
|
|
66
|
-
Version 1.2512.0101: 2025/12/01<BR>
|
|
67
|
-
Fixed error CUF_GetServerDateTime(...) when error on fetch data from dataset
|
|
68
|
-
|
|
69
|
-
Version 1.2511.28: 2025/11/28<BR>
|
|
70
|
-
Fixed error CUF_GET_Blob(...) will disturbe cursor position.
|
|
71
|
-
|
|
72
|
-
Version 1.2511.27: 2025/11/27<BR>
|
|
73
|
-
Fixed error CUF_DB_Eof(...) and CUF_Eof(...) --> When DataSet was empty.
|
|
74
|
-
|
|
75
|
-
Version 1.2511.26: 2025/11/26<BR>
|
|
76
|
-
Fixed CUF_DB_OpenSQL(...) return failure when Null data.
|
|
77
|
-
|
|
78
|
-
Version 1.2511.06: 2025/11/25<BR>
|
|
79
|
-
Fixed Eof() bugs.
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
Version 1.2511.06: 2025/11/06<BR>
|
|
83
|
-
Fixed utf8 and big5(latin) encode bugs.
|
|
84
|
-
|
|
85
|
-
Version 1.2510.23: 2025/10/22<BR>
|
|
86
|
-
Fixed version bugs.
|
|
87
|
-
|
|
88
|
-
Version 1.2510.22: 2025/10/22<BR>
|
|
89
|
-
1.Add string decode method (translage utf8 charset -> utf-8)
|
|
90
|
-
2.Add Eof() procedure
|
|
91
|
-
3.Fixed CUF_DB_ExecSQL() and CUF_DB_OpenSQL() bugs.
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
Version 0.1.2: 2025/10/09<BR>
|
|
95
|
-
Add string decode method (translage big5 charset -> utf-8)
|
|
96
|
-
|
|
97
|
-
Version 0.1.1: 2025/09/19<BR>
|
|
98
|
-
Fixed some bugs.
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
LICENSE
|
|
2
|
-
MANIFEST.in
|
|
3
|
-
README.md
|
|
4
|
-
pyproject.toml
|
|
5
|
-
setup.cfg
|
|
6
|
-
src/mySQLDBCtrlAPI/__init__.py
|
|
7
|
-
src/mySQLDBCtrlAPI/mySQLDBCtrl.cp310-win_amd64.pyd
|
|
8
|
-
src/mySQLDBCtrlAPI/mySQLDBCtrl.pyi
|
|
9
|
-
src/mySQLDBCtrlAPI/mySQLNetSSH.cp310-win_amd64.pyd
|
|
10
|
-
src/mySQLDBCtrlAPI/mySQLNetSSH.pyi
|
|
11
|
-
src/mySQLDBCtrlAPI/mySQLxJsonLIB.cp310-win_amd64.pyd
|
|
12
|
-
src/mySQLDBCtrlAPI/mySQLxJsonLIB.pyi
|
|
13
|
-
src/mySQLDBCtrlAPI.egg-info/PKG-INFO
|
|
14
|
-
src/mySQLDBCtrlAPI.egg-info/SOURCES.txt
|
|
15
|
-
src/mySQLDBCtrlAPI.egg-info/dependency_links.txt
|
|
16
|
-
src/mySQLDBCtrlAPI.egg-info/requires.txt
|
|
17
|
-
src/mySQLDBCtrlAPI.egg-info/top_level.txt
|
|
18
|
-
src/mySQLDBCtrlAPI/out/mySQLDBCtrlAPI/mySQLDBCtrl.pyi
|
|
19
|
-
src/mySQLDBCtrlAPI/out/mySQLDBCtrlAPI/mySQLNetSSH.pyi
|
|
20
|
-
src/mySQLDBCtrlAPI/out/mySQLDBCtrlAPI/mySQLxJsonLIB.pyi
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
mySQLDBCtrlAPI
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|