sql-to-osc
FlywayのSQLマイグレーションスクリプトを、オンラインスキーマ変更(OSC)に対応した形式に変換し、ALTER TABLEやCREATE INDEX文を含むSQLファイルを効率的にOSC形式へ変換するSkill。
📜 元の英語説明(参考)
SQL to OSC (Online Schema Change) conversion expert for Flyway migration scripts. Use when: (1) Converting SQL migration files to OSC format, (2) User mentions "OSC", "轉換 OSC", "osc.txt", or "Online Schema Change", (3) Working with Flyway ALTER TABLE/CREATE INDEX statements that need OSC conversion.
🇯🇵 日本人クリエイター向け解説
FlywayのSQLマイグレーションスクリプトを、オンラインスキーマ変更(OSC)に対応した形式に変換し、ALTER TABLEやCREATE INDEX文を含むSQLファイルを効率的にOSC形式へ変換するSkill。
※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。
下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o sql-to-osc.zip https://jpskill.com/download/18615.zip && unzip -o sql-to-osc.zip && rm sql-to-osc.zip
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/18615.zip -OutFile "$d\sql-to-osc.zip"; Expand-Archive "$d\sql-to-osc.zip" -DestinationPath $d -Force; ri "$d\sql-to-osc.zip"
完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。
💾 手動でダウンロードしたい(コマンドが難しい人向け)
- 1. 下の青いボタンを押して
sql-to-osc.zipをダウンロード - 2. ZIPファイルをダブルクリックで解凍 →
sql-to-oscフォルダができる - 3. そのフォルダを
C:\Users\あなたの名前\.claude\skills\(Win)または~/.claude/skills/(Mac)へ移動 - 4. Claude Code を再起動
⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。
🎯 このSkillでできること
下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。
📦 インストール方法 (3ステップ)
- 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
- 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
- 3. 展開してできたフォルダを、ホームフォルダの
.claude/skills/に置く- · macOS / Linux:
~/.claude/skills/ - · Windows:
%USERPROFILE%\.claude\skills\
- · macOS / Linux:
Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。
詳しい使い方ガイドを見る →- 最終更新
- 2026-05-18
- 取得日時
- 2026-05-18
- 同梱ファイル
- 1
📖 Skill本文(日本語訳)
※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。
SQL to OSC 変換エキスパート
Flyway SQL マイグレーションスクリプトを、プロジェクトの規約に従って OSC 形式に変換します。
クイックリファレンス
OSC 形式: {database}<TAB>{table}<TAB>{operations};
| SQL | OSC |
|---|---|
USE db; |
削除 (1列目の db) |
ALTER TABLE tbl |
削除 (2列目の tbl) |
NULL |
DEFAULT NULL |
CREATE INDEX idx ON tbl (col) |
ADD INDEX idx (col) |
varchar |
VARCHAR |
| 複数の操作 | カンマ区切り、スペースなし |
変換ワークフロー
- ソース SQL を読み込む:
src/main/resources/db/migration/から - ステートメントを解析: データベース、テーブル、操作を抽出
- 変換:
USEおよびALTER TABLEラッパーを削除NULL→DEFAULT NULLに変換CREATE INDEX...ON table→ADD INDEX...に変換- データ型を大文字に変換
- 出力形式:
{db}\t{table}\t{op1},{op2},...; - 書き込み先:
src/main/resources/db/osc/osc-{YYYYMMDD}.txt(例:osc-20251212.txt)
出力要件
- エンコーディング: UTF-8 (BOM なし)
- 改行コード: LF (
\n) - 区切り文字: 列間は TAB (
\t) - 操作: カンマ (
,) で結合、カンマの後にスペースなし - 行末: セミコロン (
;)
例
入力 (V1.0__alter_my_table.sql):
USE mydb;
ALTER TABLE MY_TABLE
ADD COLUMN NEW_COL bigint(20) NULL AFTER EXISTING_COL;
CREATE INDEX MY_TABLE_NEW_COL_IDX ON MY_TABLE (NEW_COL);
出力 (osc-{YYYYMMDD}.txt):
mydb MY_TABLE ADD COLUMN NEW_COL BIGINT(20) DEFAULT NULL AFTER EXISTING_COL,ADD INDEX MY_TABLE_NEW_COL_IDX (NEW_COL);
変換サマリーテンプレート
✓ 轉換完成
來源: {source_file}
輸出: src/main/resources/db/osc/osc-{YYYYMMDD}.txt
影響資料表: {tables}
操作統計:
- ADD COLUMN: {count}
- ADD INDEX: {count}
- MODIFY COLUMN: {count} 📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開
SQL to OSC Conversion Expert
Convert Flyway SQL migration scripts to OSC format following project conventions.
Quick Reference
OSC Format: {database}<TAB>{table}<TAB>{operations};
| SQL | OSC |
|---|---|
USE db; |
Remove (db in column 1) |
ALTER TABLE tbl |
Remove (tbl in column 2) |
NULL |
DEFAULT NULL |
CREATE INDEX idx ON tbl (col) |
ADD INDEX idx (col) |
varchar |
VARCHAR |
| Multiple operations | Comma-joined, no space |
Conversion Workflow
- Read source SQL from
src/main/resources/db/migration/ - Parse statements: Extract database, table, operations
- Transform:
- Remove
USEandALTER TABLEwrappers - Convert
NULL→DEFAULT NULL - Convert
CREATE INDEX...ON table→ADD INDEX... - Uppercase data types
- Remove
- Format output:
{db}\t{table}\t{op1},{op2},...; - Write to
src/main/resources/db/osc/osc-{YYYYMMDD}.txt(e.g.,osc-20251212.txt)
Output Requirements
- Encoding: UTF-8 (no BOM)
- Line ending: LF (
\n) - Separator: TAB (
\t) between columns - Operations: Comma (
,) joined, NO space after comma - Line ending: Semicolon (
;)
Example
Input (V1.0__alter_my_table.sql):
USE mydb;
ALTER TABLE MY_TABLE
ADD COLUMN NEW_COL bigint(20) NULL AFTER EXISTING_COL;
CREATE INDEX MY_TABLE_NEW_COL_IDX ON MY_TABLE (NEW_COL);
Output (osc-{YYYYMMDD}.txt):
mydb MY_TABLE ADD COLUMN NEW_COL BIGINT(20) DEFAULT NULL AFTER EXISTING_COL,ADD INDEX MY_TABLE_NEW_COL_IDX (NEW_COL);
Conversion Summary Template
✓ 轉換完成
來源: {source_file}
輸出: src/main/resources/db/osc/osc-{YYYYMMDD}.txt
影響資料表: {tables}
操作統計:
- ADD COLUMN: {count}
- ADD INDEX: {count}
- MODIFY COLUMN: {count}