sql >> データベース >  >> RDS >> Sqlserver

SQL Server 2016:データのインポート

    SQL Server Management Studioには、外部ソースからデータをインポートするのに役立つインポートウィザードが含まれています。

    Excelスプレッドシート、CSVファイル、およびOracle、Access、その他のSQL Serverインスタンスなどの他のデータベースなど、他のさまざまなソースからSQLServerデータベースにデータをインポートできます。

    CSVファイルをインポートする

    今すぐ、CSVファイルを アルバム にインポートします 以前にリレーションシップを作成したときに作成したテーブル。

    CSVファイルはここからダウンロードできます:Albums.csv

    このファイルには次の内容が含まれています。

    AlbumId,AlbumName,ReleaseDate,ArtistId,GenreId
    1,Powerslave,1984-09-03,1,1
    2,Powerage,1978-05-05,2,1
    3,Singing Down the Lane,1956-01-01,6,3
    4,Ziltoid the Omniscient,2007-05-21,5,1
    5,Casualties of Cool,2014-05-14,5,1
    6,Epicloud,2012-09-18,5,1
    7,Somewhere in Time,1986-09-29,1,1
    8,Piece of Mind,1983-05-16,1,1
    9,Killers,1981-02-02,1,1
    10,No Prayer for the Dying,1990-10-01,1,1
    11,No Sound Without Silence,2014-09-12,9,4
    12,Big Swing Face,1967-06-01,4,2
    13,Blue Night,2000-11-01,12,4
    14,Eternity,2008-10-27,12,4
    15,Scandinavia,2012-06-11,12,4
    16,Long Lost Suitcase,2015-10-09,7,4
    17,Praise & Blame,2010-06-26,7,4
    18,Along Came Jones,1965-05-21,7,4
    19,All Night Wrong,2002-05-05,3,2
    20,The Sixteen Men of Tain,2000-03-20,3,2
    

    したがって、上記のファイルをSQL Serverのインポートおよびエクスポートウィザードからアクセスできる場所に保存して、始めましょう。

    1. データのインポート

      データベースを右クリックして、タスク>データのインポート...を選択します。

      Windowsの[スタート]メニュー、コマンドプロンプト、SQL Serverデータツール(SSDT)を備えたVisual Studioなど、他のさまざまな場所からインポートウィザードにアクセスすることもできます。

    2. SQLServerのインポートおよびエクスポートウィザードへようこそ

      SQLServerのインポートとエクスポートウィザードのスタートページが表示されます。

      次へ>をクリックします 。

      この開始ページを再度表示しないをオンにします 将来的に時間とクリックを節約したい場合。

    3. データソースを選択

      ファイルの種類とその場所を選択します。

      私たちのファイルはCSVファイルなので、フラットファイルソースを選択します 次に、ファイルの場所を参照します。

      もクリックします 左側のメニューで区切り文字の設定を確認し、必要に応じて他のオプションも確認します。この場合、デフォルト設定で問題ありません。

    4. 詳細設定

      詳細設定を確認します(詳細をクリックします) 左側のメニューで)異常がないことを確認します。

      各列名をクリックして、その列のプロパティを表示します。

      この場合、すべての列が string [DT_STR] のデータ型でリストされていることがわかります。 、ウィザードの後半で問題が発生する可能性があります。

      この機会に、データ型を次のように変更してください。

      AlbumId シングルバイト符号なし整数[DT_UI1]
      AlbumName Unicode文字列[DT_WSTR]
      ReleaseDate データベースの日付[DT_DBDATE]
      ArtistId シングルバイト符号なし整数[DT_UI1]
      GenreId シングルバイト符号なし整数[DT_UI1]

      提案タイプ...を使用することもできます オプション。ただし、一部の列を手動で変更する必要がある場合もあります。

      ウィザードは、ソースファイルからのデータ型の変換に問題があると判断した場合に後で警告します。その場合は、ここに戻って選択内容を変更する必要があります。

    5. 目的地を選択

      ここでは、宛先のデータストレージ形式に一致するデータプロバイダーを選択します。

      SQL Serverにはさまざまなオプションがあります(SQL Serverネイティブクライアント、SQLServer用のMicrosoftOLE DBプロバイダー、またはSQLServer用の.NETFrameworkデータプロバイダー)。ネイティブクライアントを選択します。

      SQLServerネイティブクライアントを選択します オプションのドロップダウンリスト。認証モードや宛先データベースを変更する必要がある場合は、ここで変更してください。

      次へ>をクリックします 続行します。

    6. ソーステーブルとビューの選択

      ここで、送信元と宛先を選択できます。

      私たちのものは単純なものであり、すべてがデフォルトで正しく選択されています。

      ただし、続行する前に、[マッピングの編集...]をクリックしてください 列のマッピングを確認します。

    7. 列マッピング

      列のマッピングとその他の詳細が正しいことを確認してください。

      この例では、 行を宛先テーブルに追加する ことを確認する必要があります。 がチェックされ、ソース列と宛先列が一致し、正しいデータ型であることが確認されます。

      ID挿入を有効にするもチェックしてください 主キー列の既存の値を保持します。これにより、SQL Serverが値を自動生成するのではなく、ファイルから値が挿入されます。

      OKをクリックします またはキャンセル ダイアログボックスを閉じます。

      次に、[ソーステーブルとビューの選択]ダイアログボックスに戻ったら、[次へ>]をクリックします。 続行します。

      宛先テーブルの作成の場合 が選択され、 行を宛先テーブルに追加 オプションがグレー表示されている場合は、ソースファイルの名前が宛先テーブルの名前と一致していることを確認してください。

      ケースも確認してください(例: Artists.csv vs Artists.csv

      インポートファイルにID列が含まれていない場合は、ID挿入を有効にするのままにします。 チェックされていません。

    8. データ型マッピングの確認

      これが、以前に設定したデータ型マッピングを確認するチャンスです。ウィザードがデータ型の変換に問題がある可能性があると判断した場合、この画面に警告が表示されます。

      すべて問題がなければ、次へ>をクリックします 。

    9. パッケージを保存して実行する

      ウィザードには、後で再び使用できるようにパッケージを保存するオプションがあります。

      私たちの場合、わざわざ保存することはありません。

      すぐに実行を続けてください 選択して次へ>をクリックします 。

    10. ウィザードを完了する

      すべてのアクションを確認する最後のチャンス。

      すべて良さそうな場合は、[完了]をクリックします 。

    11. 実行レポート:成功または失敗

      ウィザードは、インポートを実行しようとします。エラーが発生した場合は、この画面に表示されます。再度実行する前に、戻って原因を修正する必要があります。

      実行が成功した を取得した場合 、[閉じる]をクリックします 。

      レポートを使用して、インポートのレポートを保存することもできます。 この画面のオプション。

    12. データを確認する

      次に、簡単なクエリを実行して、データが実際に挿入されていることを確認します。

      Select Top 1000 Rowsのいずれかを使用できます オプション(テーブルを右クリックした後)、または SELECT * FROM Albums;を実行します。 。

      テーブルに大量のデータが含まれている場合は、 TOP 1000を使用して結果を制限する必要があります。 または他の番号。


    1. MySQLのテーブル名では大文字と小文字が区別されますか?

    2. IRIFieldShieldでCassandraをマスクする方法

    3. 詳細にあります

    4. テーブルにデータを入力する前、またはデータを配置した後にインデックスを作成する方がよいでしょうか。