1. 起動と準備
- 配布ZIPを、書き込み可能なフォルダーへすべて展開します。
- Amazon Redshift ODBCドライバー(64bit)を別途インストールします。
WindowsのODBC管理画面でDSNを作成する必要はありません。接続先・認証情報などは、RedshiftSQLab側の接続設定で管理します。
RedshiftSQLab.exeを起動します。接続設定画面が開きます。
runtimes・setting・licensesも一緒に配置してください。
2. 接続設定
- 接続名を入力し、「エンドポイント」または「JDBC URL」を選びます。
- インストール済みの64bit ODBCドライバーを選択します。
- 接続先を入力します。エンドポイント欄は、ホスト名・ポート・データベース名を含む形式に対応します。
- 「データベース認証」または「IAM認証」を選び、認証情報を入力します。IAM認証では「AWSプロファイルを使用」も選択できます。
- 必要に応じてSSL証明書検証・接続タイムアウトを設定します。
- 「保存」で設定を保存し、「接続テスト」で確認してから「接続」を押します。
JDBC URLを入力する場合も、実際の接続にはODBCを使用します。URL内の接続オプションや認証情報には対応していません。
接続一覧では最後に接続した保存設定を優先し、それがなければ最後に保存した設定を選択します。保存設定がなければ新規入力してください。接続テスト・接続処理中は経過時間を表示します。
3. SQLの編集・実行
- 新規タブを作るか、SQLファイルを開きます。
- SQLを入力し、実行ボタンまたはCtrl+Enterを押します。選択範囲がある場合はその範囲、なければエディタ全体を実行します。
- 下部の「実行結果」「ログ」で結果と処理状況を確認します。
一度に実行できるSQLは1文です。複数文がある場合は、実行したい文だけを選択してください。更新SQLは自動コミットで実行します。
中止するときは、結果タブ右側の「中止」を押し、ドライバーの応答を待ちます。SQLエラーが起きても有効な接続は維持します。接続そのものが失われた場合は再接続してください。
右クリックメニューで「大文字に変換」「小文字に変換」「SQLの整形」を利用できます。入力補完では、通常の名前には引用符を付けず、予約語や大文字・空白などを含む名前には必要な引用符を付けます。
| 操作 | ショートカット |
|---|---|
| 新規/開く/保存 | Ctrl+N / Ctrl+O / Ctrl+S |
| 名前を付けて保存 | Ctrl+Shift+S |
| SQLを実行 | Ctrl+Enter |
| 検索/置換 | Ctrl+F / Ctrl+H |
| 選択中のタブを閉じる | Ctrl+W |
| 元に戻す/やり直し | Ctrl+Z / Ctrl+Y |
4. オブジェクト情報
スキーマと種類を選び、必要に応じてオブジェクト名で絞り込みます。一覧のオブジェクトを選択すると、列・分散/ソートキー・制約・参照制約・権限・プロパティを取得します。
- 権限不足と判別できる情報は取得を省き、参照可能な範囲で表示します。
- 右クリックの「SELECT文を新規タブへ」で、全列を列挙したSELECT文を作成できます。
- 「DDL/ビュー定義を新規タブへ」で定義を取得できます。PRIMARY KEY名の引用符は必要な場合に付けます。
取得できる情報は、接続ユーザーの権限と対象オブジェクトによって異なります。
5. 検索・置換
「編集」メニューから開き、「検索」「置換」タブを切り替えます。必要に応じて大文字/小文字を区別します。
- 前を検索/次を検索:先頭・末尾で折り返して繰り返し検索します。結果通知のダイアログは出しません。
- 置換して次へ:選択中の一致文字列を置換し、次の候補へ進みます。末尾では先頭へ戻り、一致する対象がなくなると「対象がありません」と表示します。候補が未選択なら先に候補を選択します。
- すべて置換:全対象を置換し、件数を通知します。Ctrl+Zでまとめて元に戻せます。
6. 結果の出力・実行履歴
「ファイル」メニューから実行結果をCSVまたはExcelへ出力します。保存先の初期フォルダーはexeと同じ場所です。出力中は進捗画面の「中止」を使用できます。
「SQL」→「SQL実行履歴」で、実行開始・接続先名・処理時間・SQLを確認できます。「新規タブへ挿入して閉じる」で、選択したSQLを再利用できます。挿入だけでは実行されません。
7. S3の設定
- 「SQL」→「S3の設定」を開き、「新規」で設定名を入力します。
- アクセスキー、またはAWSプロファイル/標準認証を選び、認証情報とリージョンを入力します。
- 「接続して保存先フォルダーを確認・設定」で接続し、保存先を選択します。
- 内容を確認して「保存」を押します。
認証情報を変更するときは先に切断します。シークレットキーは保存チェックを入れた場合のみ保存し、セッショントークンは保存しません。
フォルダー選択画面では、フォルダーとファイルをアイコンで区別します。右クリックから1件ずつ削除でき、削除前に確認画面を表示します。
8. CSVからインポート
Redshiftへ接続後、「SQL」→「CSVからインポート」を開きます。
- S3の選択:保存済みのS3設定を選びます。最後に取り込み成功した設定を初期選択し、該当設定がなければ先頭を選択します。
- COPY時の認証:「S3と同じ認証情報」または「IAMロール」を選びます。IAMロールではARNまたは
defaultを指定します。 - CSVの設定:UTF-8のCSVを選び、「1行目は列名」を設定します。先頭100行までプレビューします。
- インポート先:スキーマ・テーブルを選びます。CSVとテーブルの列数が一致した場合のみ、列対応一覧を表示して取り込みを許可します。対応は列名ではなく列順です。
- 取り込み方法:「追記」は既存データに追加し、「総入替」は既存データを削除してCSVへ入れ替えます。
- 「インポート開始」を押します。総入替では確認ダイアログを表示します。
\NはNULLとして取り込みます。総入替は、対象テーブルの既存データ全体を入れ替える操作です。検証したCSVとmanifestをS3へ送り、専用接続でCOPYを行います。CSV行数と取り込み件数が一致した場合のみ確定します。確定前の失敗・中止時はロールバックを試みます。確定中は中止できません。確定・ロールバックの結果が不明と表示された場合は、再実行前に対象テーブルを確認してください。
取り込みエラー時は、今回のCSVに対応する行番号・列名・型・エラー内容などをRedshiftから追加取得します(最大20件。権限等により取得できない場合があります)。
9. 保存場所と配布物
exeのあるフォルダーを基準に保存します。
RedshiftSQLab-1.0.0-win-x64/ ├─ RedshiftSQLab.exe ├─ readme.html このガイド ├─ img/ ガイド用画像 ├─ runtimes/win-x64/native/ SQLエディタ用DLL ├─ setting/redshift_syntax.json 標準SQL構文辞書 ├─ licenses/ ライセンス文書 ├─ connection/ 利用開始後の設定保存先 └─ SQL/ 利用開始後の実行履歴保存先
| 場所 | 内容 |
|---|---|
| connection/*.rsconn | 保存した接続設定 |
| connection/last-connection.dat | 最後に接続した設定 |
| connection/*.rss3 | S3設定 |
| connection/csv-import.json | 最後に取り込み成功したS3設定名・COPY認証方式等。秘密情報は保存しません。 |
| SQL/history.bin | SQL実行履歴 |
接続設定・S3設定・履歴はWindowsユーザーに紐づく暗号化形式です。別のWindowsユーザーへの設定移行・変換機能はありません。
配布ZIPには個人設定・履歴を含めていません。再配布時もこれらを除外し、licensesは一緒に配布してください。通常のDLLと.NETはexeにまとめていますが、Scintilla.dll・Lexilla.dllは外部配置が必要です。
10. 制限と困ったとき
| 項目 | Ver 1.0.0の扱い |
|---|---|
| SQL実行 | 1回1文、タイムアウト300秒。手動トランザクション・カーソル・セッション設定・CALLは未対応。バックスラッシュを含むSQLは実行できません。 |
| 実行結果 | ディスクへ保持します。取得・出力には保存領域の空き容量が必要です。 |
| CSV取り込み | 正規化後の取り込み用CSVは1GiBまで。プレビューは最大100行・100列で、文字量によって表示行数が少なくなる場合があります。 |
| Excel出力 | データ1,048,575行(ヘッダーを除く)、16,384列、1セル32,767文字まで。超える場合はCSV出力を使用してください。 |
| SQL履歴 | 最大100件。SQL1件262,144文字、合計1,048,576文字の上限もあります。 |
起動しない
ZIPをすべて展開したか、runtimes/win-x64/native内にScintilla.dllとLexilla.dllがあるか確認してください。exeのみの移動では起動できません。
接続できない
64bit ODBCドライバー、接続先、認証情報、SSL設定、ネットワークを確認してください。保存チェックを入れていない秘密情報は、再入力する必要があります。
SQLでエラーが出る
有効な接続は維持します。通信断等で接続自体が失われた場合は再接続してください。エラー詳細は編集不可のテキスト欄からCtrl+A・Ctrl+Cでコピーできます。本文はマスクしていないため、他者へ渡す前にキー・パスワード・ARN・接続先などが含まれていないか確認してください。
オブジェクト情報が少ない
接続ユーザーが参照できる範囲を表示します。権限がない項目は表示できない場合があります。
作者のWebサイト:https://kody.jp