SQL ステートメントをリモートの SQL Server に送信する方法 (プログラム)
SQL ステートメントは、SqlCeRemoteDataAccess オブジェクトを使用することにより、Microsoft SQL Server を実行しているコンピュータに直接送信できます。
SQL ステートメントを送信するには
SqlCeRemoteDataAccess オブジェクトを初期化して、接続のプロパティを設定します。
SqlCeRemoteDataAccess rda = new SqlCeRemoteDataAccess("https://www.adventure-works.com/sqlmobile/sqlcesa30.dll", "Data Source=MyDatabase.sdf");
SubmitSql メソッドを呼び出します。その際に、SQL ステートメントまたはストアド プロシージャの名前、および接続文字列を SQL Server データベースに渡します。
rda.SubmitSql("sp_ValidateData", strConn);
使用例
このサンプルでは、SQL Server を実行しているリモート コンピュータで、SubmitSQL メソッドを使用して SQL コマンドを実行する方法を示しています。
string rdaOleDbConnectString = @"Provider = SQLOLEDB;Data Source=MySqlServer;
Initial Catalog=AdventureWorks; User Id=username;
Password = <password>";
// Initialize RDA Object
//
SqlCeRemoteDataAccess rda = null;
try
{
// Try the SubmitSql Operation
//
rda = new SqlCeRemoteDataAccess();
rda.InternetLogin = "MyLogin";
rda.InternetPassword = "<password>";
rda.InternetUrl = "https://www.adventure-works.com/sqlmobile/sqlcesa30.dll";
rda.LocalConnectionString = "Data Source=MyDatabase.sdf";
rda.SubmitSql("CREATE TABLE MyRemoteTable (colA int)", 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 SubmitSql Operation
'
rda = New SqlCeRemoteDataAccess()
rda.InternetLogin = "MyLogin"
rda.InternetPassword = "<password>"
rda.InternetUrl = "https://www.adventure-works.com/sqlmobile/sqlcesa30.dll"
rda.LocalConnectionString = "Data Source=MyDatabase.sdf"
rda.SubmitSql("CREATE TABLE MyRemoteTable (colA int)", rdaOleDbConnectString)
Catch
' Handle errors here
'
Finally
'Dispose of the RDA object
'
rda.Dispose()
End Try