Visual Studio Code に 超絶便利な Oracle DB 拡張機能 (Oracle Developer Tools for VS Code) を入れて、ATPに接続する

# はじめに

Microsoftが提供している、ほぼすべての言語に対応しているコードエディターのVisual Studio Code があります。
様々な便利機能があり、とても快適にプログラミングが出来るのですが、拡張機能で Oracle DB との連携が出来ます。

SQL の補完が便利すぎるので、ぜひみなさん使ってみましょう！

![vscode.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/d1551e48-3e34-90e1-351a-21516d566f30.gif)



手順を書いていきます。



# Visual Studio Code Install

以下のURLから適当にインストールします
https://azure.microsoft.com/ja-jp/products/visual-studio-code/



# Oracle Developer Tools for VS Code を Install

以下のURLを確認し、適当にインストールします
https://www.oracle.com/database/technologies/appdev/dotnet/odtvscodequickstart.html

- .NET Core Runtime
- VS Code Extensions : `Oracle Developer Tools for VS Code` をInstall後、VS Code を再起動

![1563600200114.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/ef53c5aa-1985-57b0-717d-9cf4fb85b5e6.png)



# ATPから Wallet をダウンロード

Oracle DB は、Oracle Cloud Infrastructure で提供しているフルマネージドサービスの、Autonomous Transaction Processingを使用します。
オンプレミスなどで稼働しているOracleDBでも連携可能ですが、若干やり方が変わるためご注意ください。

Oracle Cloud Infrastructure の画面から、ATPの DB Connection を選択

![1563604160796.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/7fda5d25-69ff-bc7d-b97d-83e4dbc976b5.png)



Download Client Credentials から、Download を押します。ATPを作成した時に入力した Password が求められるため、それを入力します。

![1563604230011.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/c2ff3e69-7a2c-03d8-3acd-6ed8b848a378.png)



Windows の場合は、`C:\Users\username\Oracle\network\admin` にダウンロードしてきた Wallet ファイルを解凍して格納します。

このような格納先となります

![1563604504661.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/ba87490b-63bc-708b-5aaa-b5e5fc08d1a4.png)



# SQL File を作成

VS Code上で SQL File を作成します。
VS Code にあるメニューから、File  > New File を選択します。

VS Code の Status Bar から、File の Type を選択します。Default では、Plain Text となっています

![1563606144488.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/ef560859-4b53-b222-91b7-5e2acf73876a.png)



ここをクリックして、 `Oracle-SQL and PLSQL` を選択します。


# Visual Studio Code から ATP へ接続

SQLファイルを開いている画面のままで、F1 キーを押して、コマンド入力画面を開いたあとに `Oracle:Connect` を入力します

![1563606290008.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/27550007-2a43-0f72-940c-218a433f5136.png)



`New Connection using TNSNAMES.ORA` を選択します。

![1563606308096.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/150d3d6f-61e1-fdf2-9fae-eb61f583539d.png)



接続する名前を選択します。今回は `atpdataname_high` とします。

![1563606380598.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/0b90b043-f923-c451-b1f2-095b3a946a58.png)



`Non-Administrator` を選択します

![1563606414968.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/310018e9-61f6-2173-9472-44e1c4993c76.png)



userid を入力します。新しく ATP を作った場合では、`admin`  を入力します。
![1563606468708.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/71aacbe6-f8a1-e3a9-f427-b0a0da37fb76.png)



ATP を作成した時に指定した Password を入力します

![1563606506323.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/8edbc6ff-9e4a-8873-e6f0-f51719a3294d.png)



Password を保存するか指定します。

![1563606542613.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/1b66c5ef-3d8d-53ac-eaee-cb03a7ff5100.png)



VS Code 上で保存する、コネクション設定のProfile名を指定します。このまま Enter を押します

![1563606594117.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/ca5a8738-d8e1-9d4e-3e72-0dfd725084a4.png)



# SQL Query の実行

Table を作成して、Row を Insert し、Select する SQL を作成します。
VS Code でSQL補完機能があるので、適宜便利に作成することが出来ます :)

```
-- Create a new Relational table with 3 columns

CREATE TABLE SAMPLE_TABLE 
(
  id VARCHAR2(255) NOT NULL,
  name VARCHAR2(1024)
);

-- Insert rows in a Table

INSERT INTO SAMPLE_TABLE 
VALUES
(
  '001',
  'suzuki'
);

-- Select rows from a Table

SELECT *
FROM SAMPLE_TABLE;
```



Editor 画面を右クリックし、`Execute Query`を押すことで、SQLの結果を VS Code 上で確認することが出来ます！便利！！

![1563610119807.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/aac32a1c-cc2c-f352-8dbe-9b2481c3e61f.png)


# Oracle DB への接続情報編集

VS Code を Install した PC の以下のディレクトリに格納されています
接続先の User名や、パスワードなどが保存されているので、直接編集することが可能です

```
C:\Users\username\AppData\Roaming\Code\User\settings.json
```


# 参考URL

Getting Started using Oracle Developer Tools for VS Code
https://www.oracle.com/database/technologies/appdev/dotnet/odtvscodequickstart.html