データをプッシュする方法 (プログラム)
このトピックでは、SqlCeRemoteDataAccess クラスを使用して、Microsoft SQL Server 2005 Compact Edition (SQL Server Compact Edition) データベースから Microsoft SQL Server データベースにデータをプッシュする方法について学習します。SqlServerCe 名前空間の使用については、SqlServerCe 名前空間のリファレンス ドキュメントを参照してください。
リモート データ アクセスを使用してデータをプッシュするには
SqlCeRemoteDataAccess オブジェクトを初期化して、接続のプロパティを設定します。
SqlCeRemoteDataAccess rda = new SqlCeRemoteDataAccess("https://www.adventure-works.com/sqlmobile/sqlcesa30.dll", "Data Source=MyDatabase.sdf");
Push メソッドを呼び出し、プッシュするデータが存在するローカルの SQL Server Compact Edition テーブルの名前と、SQL Server データベースへの接続文字列を渡します。また、使用するバッチ オプションを指定することもできます。
rda.Push("MyLocalTable", rdaOleDbConnectString, RdaBatchOption.BatchingOn);
使用例
このサンプルでは、SQL Server Compact Edition データベースの MyLocalTable テーブルから、MySqlServer という SQL Server インスタンス上にある AdventureWorks データベースにデータをプッシュする方法を示します。
string rdaOleDbConnectString = @"Provider=SQLOLEDB; Data Source=MySqlServer;
Initial Catalog=AdventureWorks; User Id=username;
Password = <password>";
// Initialize RDA Object
//
SqlCeRemoteDataAccess rda = null;
try
{
// Try the Push Operation
//
rda = new SqlCeRemoteDataAccess(
"https://www.adventure-works.com/sqlmobile/sqlcesa30.dll",
"Data Source=MyDatabase.sdf");
rda.InternetLogin = "MyLogin";
rda.InternetPassword = "<password>";
rda.Push("MyLocalTable", rdaOleDbConnectString, RdaBatchOption.BatchingOn);
// or, try this overload:
//
// rda.Push("MyLocalTable", rdaOleDbConnectString);
}
catch (SqlCeException)
{
// Handle errors here
//
}
finally
{
// Dispose of the RDA Object
//
rda.Dispose();
}
Dim rdaOleDbConnectString As String = _
"Provider=SQLOLEDB; "Data Source=MySqlServer;Initial Catalog=AdventureWorks; "
"User Id=username;Password = <password>"
' Initialize RDA Object
'
Dim rda As SqlCeRemoteDataAccess = Nothing
Try
' Try the Push Operation
'
rda = New SqlCeRemoteDataAccess( _
"https://www.adventure-works.com/sqlmobile/sqlcesa30.dll", _
"Data Source=MyDatabase.sdf")
rda.InternetLogin = "MyLogin"
rda.InternetPassword = "<password>"
rda.Push("MyLocalTable", rdaOleDbConnectString, RdaBatchOption.BatchingOn)
' or, try this overload:
'
' rda.Push("MyLocalTable", rdaOleDbConnectString)
Catch
' Handle errors here
'
Finally
' Dispose of the RDA Object
'
rda.Dispose()
End Try
参照
概念
リモート データ アクセス (RDA) の概要
クライアントからサーバーへのデータのプッシュ