次の方法で共有


CSV から Azure SQL Database または SQL Managed Instance へのデータの読み込み (フラット ファイル)

適用対象:Azure SQL データベースAzure SQL Managed Instance

bcpコマンド ライン ユーティリティを使用して、CSV ファイルから Azure SQL Database または Azure SQL Managed Instance にデータをインポートできます。

前提条件

この記事の手順を完了するには、次のものが必要です。

  • データベース
  • インストールされている bcp コマンド ライン ユーティリティ
  • インストールされている sqlcmd コマンド ライン ユーティリティ

bcpユーティリティとsqlcmdユーティリティは、sqlcmd ドキュメントからダウンロードできます。

ASCII または UTF-16 形式のデータ

独自のデータを使用してこのチュートリアルを試す場合、 bcp は UTF-8 をサポートしていないため、データで ASCII または UTF-16 エンコードを使用する必要があります。

1.ターゲット テーブルを作成する

変換先テーブルとしてテーブルを定義します。 テーブル内の各列は、データ ファイルの各行のデータに対応する必要があります。

テーブルを作成するには、コマンド プロンプトを開き、 sqlcmd.exe を使用して次のコマンドを実行します。

sqlcmd.exe -S <server name> -d <database name> -U <username> -P <password> -I -Q "
    CREATE TABLE DimDate2
    (
        DateId INT NOT NULL,
        CalendarQuarter TINYINT NOT NULL,
        FiscalQuarter TINYINT NOT NULL
    )
    ;
"

2.ソース データ ファイルを作成する

メモ帳を開き、次のデータ行を新しいテキスト ファイルにコピーし、このファイルをローカルの一時ディレクトリ ( C:\Temp\DimDate2.txt) に保存します。 このデータは ASCII 形式です。

20150301,1,3
20150501,2,4
20151001,4,2
20150201,1,3
20151201,4,2
20150801,3,1
20150601,2,4
20151101,4,2
20150401,2,4
20150701,3,1
20150901,3,1
20150101,1,3

(オプション) 自身のデータを SQL Server データベースからエクスポートするには、コマンド プロンプトを開き、次のコマンドを実行します。 <TableName><ServerName><DatabaseName><Username><Password>を独自の情報に置き換えます。

bcp <TableName> out C:\Temp\DimDate2_export.txt -S <ServerName> -d <DatabaseName> -U <Username> -P <Password> -q -c -t ","

3.データを読み込む

データを読み込むには、コマンド プロンプトを開き、次のコマンドを実行し、 <ServerName><DatabaseName><Username><Password> の値を独自の情報に置き換えます。

bcp DimDate2 in C:\Temp\DimDate2.txt -S <ServerName> -d <DatabaseName> -U <Username> -P <password> -q -c -t ","

データが正しく読み込まれたかどうかを確認するには、次のコマンドを使用します。

sqlcmd.exe -S <server name> -d <database name> -U <username> -P <password> -I -Q "SELECT * FROM DimDate2 ORDER BY 1;"

結果は次のようになります。

DateId 暦の四半期 FiscalQuarter
20150101 1 3
20150201 1 3
20150301 1 3
20150401 2 4
20150501 2 4
20150601 2 4
20150701 3 1
20150801 3 1
20150801 3 1
20151001 4 2
20151101 4 2
20151201 4 2

次のステップ