35 lines
981 B
Python
35 lines
981 B
Python
from pydantic import BaseModel
|
|
from typing import Any, Dict, List, Optional
|
|
|
|
class SQLExecuteRequest(BaseModel):
|
|
sql: str
|
|
|
|
class SQLExecuteResponse(BaseModel):
|
|
code: int = 0 # 响应状态码
|
|
message: str
|
|
data: Optional[Any] = None
|
|
|
|
class TableDataRequest(BaseModel):
|
|
table_name: str
|
|
limit: Optional[int] = 100
|
|
offset: Optional[int] = 0
|
|
|
|
class TableDataResponse(BaseModel):
|
|
code: int = 0 # 响应状态码
|
|
message: str
|
|
total: Optional[int] = None
|
|
data: Optional[List[Dict[str, Any]]] = None
|
|
|
|
class CreateTableRequest(BaseModel):
|
|
table_name: str
|
|
columns: Dict[str, str] # 列名: 数据类型
|
|
primary_key: Optional[str] = None
|
|
|
|
class ImportDataRequest(BaseModel):
|
|
table_name: str
|
|
data: List[Dict[str, Any]]
|
|
|
|
class FileImportFormData(BaseModel):
|
|
"""文件导入表单数据"""
|
|
table_name: Optional[str] = None # 可选的自定义表名
|
|
force_overwrite: bool = False # 是否强制覆盖已存在的表 |