ホームページ  >  記事  >  コンピューターのチュートリアル  >  SQL SERVER データベースにデータを挿入する手順と方法は何ですか?

SQL SERVER データベースにデータを挿入する手順と方法は何ですか?

WBOY
WBOY転載
2024-01-17 13:45:051698ブラウズ

如何向SQL SERVER数据库插入数据

SQL SERVER データベースにデータを挿入する方法

1. SQL2008 を開き、Windows ID を使用してログインします

2. ログイン後、右クリックして「プロパティ」を選択します。左側の「セキュリティ」を選択し、右側の「SQL Server と Windows 認証モード」にチェックを入れて、混合ログイン モードを有効にします。

3.「接続」を選択し、「このサーバーへのリモート接続を許可する」にチェックを入れて「OK」をクリックします。

4.「セキュリティ」、「ログイン名」、「sa」を展開し、右クリックして「プロパティ」を選択します。

5. 左側で「全般」を選択し、右側で「SQL Server 認証」を選択し、パスワードを設定します。

6. データベースを右クリックし、「アスペクト」を選択します。

7. 右側のドロップダウン ボックスで [サーバー構成] を選択し、[RemoteAccessEnabled] プロパティを [True] に設定して、[OK] をクリックします。

8. SSMS がセットアップされました。最初にログアウトし、次に sa でログインします。成功した場合は、sa アカウントが有効になったことを意味します。

9. SQL サーバー構成マネージャーを開きます

10. 次に、SSCM の構成を開始し、左側で [SQL Server サービス] を選択し、右側で [SQL Server] と [SQL Server Browser] が実行されていることを確認します。

Excel テーブルから SQLSERVER データベースにデータをインポートする方法

クエリ アナライザーで、Lee を選択してデータベース オブジェクトを操作し、SQL ステートメントを直接記述します。

既存のテーブルにデータをインポートする場合は、

を使用します。

INSERT INTO テーブル SELECT * FROM OPENROWSET('MICROSOFT.JET.OLEDB.4.0'

,'Excel 5.0;HDR=YES;DATABASE=c:test.xls',sheet1$) ###形状###

データをインポートして新しいテーブルを追加する場合は、

を使用します。

SELECT * INTO テーブル FROM OPENROWSET('MICROSOFT.JET.OLEDB.4.0'

,'Excel 5.0;HDR=YES;DATABASE=c:test.xls',sheet1$)

###形状。

上記のステートメントは、EXCEL ファイルの SHEET1 ワークシートのすべての列を読み取ることを目的としています。一部の列のみをインポートしたい場合は、

INSERT INTO テーブル (a1,a2,a3) SELECT a1,a2,a3 FROM OPENROWSET('MICROSOFT.JET.OLEDB.4.0'

,'Excel 5.0;HDR=YES;DATABASE=c:test.xls',sheet1$)

実際には、OPENROWSET('MICROSOFT.JET.OLEDB.4.0'

を使用できます。

,'Excel 5.0;HDR=YES;DATABASE=c:test.xls',sheet1$) をテーブルとして、たとえば次のような文を書きました。

INSERT INTO eval_channel_employee(channel,employee_id)

SELECT CASE a.Channel WHEN 'DIY' THEN 1 WHEN 'RDC' THEN 0 WHEN 'KCM' THEN 2 ELSE 3 END

,b.id FROM

OPENROWSET('MICROSOFT.JET.OLEDB.4.0'

,'Excel 5.0;HDR=YES;DATABASE=c:tempname.xls',sheet1$) AS a,pers_employee b

WHERE a.従業員コード =b.code

簡単な方法:

インポート機能は SQL2005 では直接実装できますが、SQL2008 では可能かどうかはわかりません。

操作プロセスは次のとおりです:

ステップ 1: SQL Server Management Studio にログインします。

ステップ 2: [オブジェクト エクスプローラー] で [管理] を右クリックし、ポップアップ リストで [データのインポート] をクリックします。

ステップ 3: [インポート ウィザード] ダイアログ ボックスで [次へ] をクリックし、[データ ソースの選択] ダイアログ ボックスに入り、[データ ソース] リストで [Microsoft Excel] を選択し、対応する Excel ドキュメントを選択します。完了したら、[次へ] をクリックします (このダイアログ ボックスで、必ず [最初の行に列名が含まれている] をチェックしてください。これは、Excel ドキュメントの列タイトルをデータベース テーブルの列項目のタイトルに変更するためです)

ステップ 4: ターゲット データベース サービスを指定し、[完了] になるまで [次へ] をクリックします。

ステップ 5: SQL Server Management Studio に再度入り、インポートされたデータベース テーブルを入力すると、インポートされた Excel ドキュメント データが見つかります。

次のことを試すことができます:

SQL Server 構成マネージャーを開き、SQL Server エージェント (インスタンス名) を有効にします。起動モードを「自動」に変更します

データを SqlServer に効率的にバッチインポートする方法

2.SqlBulkCopy は良い選択です。DataTable からデータベースに直接インポートできます

ただし、(1) カラム名が対象テーブルと一致している (2) データ型が一致している (3) null 値フォールト トレランス処理、参照コード: ///

を参照してください。

データはバッチでデータベースに挿入されます。 ///

///

バッチ挿入するには

///

各バッチで書き込まれるデータの量。

(DataTable dataTable,

文字列テーブル名,

intbatchSize =10000){using(SqlConnection connection =newSqlConnection(myConnectionString)){try{connection.Open(); //先頭と先頭の文字をテーブル名に追加します using(varbulk =newSqlBulkCopy(connection, SqlBulkCopyOptions.KeepIdentity,

///

null){宛先テーブル名=テーブル名,

BatchSize=batchSize}) {//すべての列をループし、bulk にマッピングを追加します//dataTable.EachColumn(c =Bulk.ColumnMappings.Add(c.ColumnName, c.ColumnName), c = !c.AutoIncrement) ; foreach(DataColumn dcindataTable.Columns){bulk.ColumnMappings.Add(dc.ColumnName, dc.ColumnName);}bulk.WriteToServer(dataTable);

bulk.Close();}returntrue;}catch(Exception exp){returnfalse;}finally{connection.Close();}}}///

3. データ量が 10W を超える非常に大きい場合は、.dtsx ファイルを生成し、それを C# コードから直接呼び出すことを検討できますが、それでも効率は良好です。

以上がSQL SERVER データベースにデータを挿入する手順と方法は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はdocexcel.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。