Files
aaPanel/mod/base/database_tool/__init__.py
T
Jack a24f2e23c6 Update to 7.25.0
1. Added Mail Marketing Automation trigger tasks
2. Added Mail Marketing Groups Import, Export, Merge
3. Added Mail Marketing Subscribers to support paste import
4. Added Mail Marketing Template Import Export Duplicate
5. Added Mail server add timed automatic reply
6. Added HTTPS Protection function for Website (disables automatic HTTP to HTTPS redirection when enabled)
7. Optimize Website Interface Button Integration
8. Optimize the response speed of WP Toolkit interface
2025-03-13 17:52:26 +08:00

54 lines
1.2 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
from .pgsql import PgsqlTool
from .mongodb import MongodbTool
from .mysql import MysqlTool
from .sql_server import SQLServerTool
from typing import Optional
DB_TYPE = (
"pgsql",
"mongodb",
"mysql",
"sqlserver"
)
def add_database(db_type: str, data: dict) -> Optional[str]:
"""
data: 中包含的有效参数为
database_name:数据库名称
server_id:数据库 id
db_user:数据库用户名
password:数据库用户的密码
dataAccess :链接限制方式 如:ip
address:可允许使用的ip, 配合上一个参数使用
codeing 编码
ps:备注
listen_ip: pgsql 有效,可设置访问地址
"""
if db_type not in DB_TYPE:
return "Wrong database type"
if db_type == "pgsql":
tool = PgsqlTool()
elif db_type == "mongodb":
tool = MongodbTool()
elif db_type == "mysql":
tool = MysqlTool()
else:
tool = SQLServerTool()
f, msg = tool.add_database(data.pop("server_id"), data.pop("database_name"), **data)
if not f:
return msg
return None
__all__ = [
"PgsqlTool",
"MongodbTool",
"MysqlTool",
"SQLServerTool",
"add_database",
]