| 事件 | 敘述 | 更新時間 |
|---|---|---|
| 專案上架 | Database Template | 2024-12-25 |
| 建立常用函式 | developers.package.norm_function | 2024-12-28 |
| 資料表: 模板定義 | 依 developers.model.TForexQuotes 模板畫葫蘆 | 2024-12-28 |
| 更新常用函式 | 日誌打印 / 字串處理 / 數值處理 / 爬蟲連線 | 2024-12-28 |
| 模組化 | 將 SQL 串接 Database 過程模組化,並用繼承方式使用功能 | 2024-12-28 |
| 套件化 | 將整個功能打包成套件,用安裝方式直接使用該功能 | 2024-12-29 |
| 定義制式規格 | update_once & config_once | 2024-12-30 |
| 定義運行狀態 | 詳見 developers.definition.state | 2024-12-30 |
| 加入排程邏輯 | 可依據參數定時設定,到點啟動專案 | 2024-12-30 |
| 查詢資料: 增加可用參數 | SQL WHERE 條件篩選 | 2025-01-09 |
| 更新 README | SQL SERVER 設定 + 如何建置 SQL SERVER | 2025-09-25 |
| 嚴苛定義路徑 | - | 2025-09-25 |
| 更新日誌邏輯 | - | 2025-09-25 |
| 調整常用函式 | - | 2025-09-25 |
| 查詢資料: 增加可用參數 | 參數時間 | - |
| 更新底層 | 外圍包大型迴圈,基於回傳狀態判斷是否 Retry | - |
| 優化進入點 | name == 'main' 移至底層 | - |
| 調整 Merge 邏輯 | 用子方法 ( 插入 / 查詢 / 合併 ) 分別進行,不採用官方 Merge 語法 | - |
Database-Template/developer
│
├── __init__.py
│
├── config
│ └── __init__.py
│
├── lib
│ └── __init__.py
│
├── modules
│ ├── __init__.py
│ │
│ ├── model
│ │ ├── __init__.py
│ │ ├── TForexQuotes.py
│ │ ├── TLineGenAI.py
│ │ └── WorkStatus.py
│ │
│ ├── ms_sql
│ │ ├── __init__.py
│ │ ├── sql_account.py
│ │ └── sql_server.py
│ │
│ ├── interface.py
│ └── logger.py
│
└── utils
├── __init__.py
└── normal.py
- 本目錄底下執行下方指令 # 若本專案更新,引用套件則會隨著更新
pip install -e . developer.modules.ms_sql.sql_account.py更改欲使用內容,或是直接設定環境變數- 開發其他專案時可以直接引用本套件撰寫物件

-
-
CREATE DATABASE <MyDatabase>;
-
-- 檢查資料庫是否存在 SELECT name FROM master.sys.databases WHERE name = '<MyDatabase>'; -- 強制斷開所有連接,將資料庫設為單一使用者模式以便刪除。 -- 因為如果有其他使用者正在使用資料庫,直接用 DROP DATABASE 會失敗。 ALTER DATABASE <MyDatabase> SET SINGLE_USER WITH ROLLBACK IMMEDIATE; -- 直接刪除資料庫及其所有內容。 DROP DATABASE <MyDatabase>;
-- 查詢該表格是否存在 SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = <MyDatabase>;
-
-
-
pyodbc.drivers()
-
-
-
1. Docker 啟動方式
-
-
-
win + R : odbcad32 -> 切到驅動程式 -> ex: ODBC Driver 17 for SQL Server -
# 當資料庫 IP 變更時,有可能 SQL SERVER 無法正常啟用,需要重新設定,或是更改為 127.0.0.1 # 輸入對應版本的檔案名稱 - SQL Server 2022 SQLServerManager16.msc - SQL Server 2019 SQLServerManager15.msc - SQL Server 2017 SQLServerManager14.msc - SQL Server 2016 SQLServerManager13.msc - SQL Server 2014 SQLServerManager12.msc - SQL Server 2012 SQLServerManager11.msc win + R : SQLServerManager16.msc
-
-
類型 說明 Integer 對應 SQL 的整數類型,如 INT SmallInteger 對應 SQL 的小整數類型,如 SMALLINT BigInteger 用於大整數,對應 SQL 的 BIGINT -
類型 說明 String(length) 可變長度的字符串。length 指定最大長度,對應 SQL 的 VARCHAR Text 不定長度的大文本,對應 SQL 的 TEXT 或 CLOB Unicode(length) 支持 Unicode 的字符串,類似 String UnicodeText 支持 Unicode 的長文本,類似 Text CHAR(length) 固定長度字符串,對應 SQL 的 CHAR -
類型 說明 Float 浮點數,對應 SQL 的 FLOAT 或 REAL Numeric(precision, scale) 精確數值類型,對應 SQL 的 NUMERIC 或 DECIMAL,用於高精度計算 DECIMAL(precision, scale) 與 Numeric 相同,是其別名 -
類型 說明 Date 僅日期部分,對應 SQL 的 DATE Time 僅時間部分,對應 SQL 的 TIME DateTime 日期和時間,對應 SQL 的 DATETIME 或 TIMESTAMP Interval 時間間隔,對應 SQL 的 INTERVAL -
類型 說明 Boolean 布林值,對應 SQL 的 BOOLEAN,存儲 True 或 False -
類型 說明 LargeBinary 二進制數據,對應 SQL 的 BLOB 或 BYTEA -
類型 說明 UUID 用於存儲通用唯一標識符(UUID),對應 SQL 的相關類型(如 UUID) -
類型 說明 JSON 用於存儲 JSON 數據,對應 SQL 的 JSON 或類似類型


