Files
EA_with_Python/python_for_ea/.github/instructions/sqlserver.instructions.md
T

1.1 KiB

applyTo
applyTo
**/*.sql,**/db/**/*.py,**/repository/**/*.py,**/repositories/**/*.py,**/models/**/*.py

SQL Server Instructions

Basic Rules

  • SQL Server 用の構文で書く。
  • DB接続は pyodbc または既存のDB接続クラスを使用する。
  • テーブル名・カラム名は既存DDLに合わせる。
  • SQLは可能な限り .sql ファイルに分離する。
  • 認証情報、接続文字列、パスワードをコードに直書きしない。

Transaction

  • INSERT / UPDATE / DELETE では commit / rollback を明示する。
  • 例外発生時は rollback する。
  • 例外は握りつぶさず、ログに記録して再raiseまたは独自例外に変換する。

DDL

  • 主キーは原則 IDENTITY(1,1) を使用する。
  • 日時型は特別な理由がなければ DATETIME2(0) を使用する。
  • 作成日時は CREATED_AT DATETIME2(0) NOT NULL DEFAULT SYSDATETIME() を基本にする。
  • 検索条件に使う列には INDEX を検討する。
  • 重複防止が必要な組み合わせには UNIQUE 制約を検討する。