다음을 통해 공유


SqlCeCommand.Parameters 속성

SqlCeParameterCollection을 가져옵니다.

네임스페이스:  System.Data.SqlServerCe
어셈블리:  System.Data.SqlServerCe(System.Data.SqlServerCe.dll)

구문

‘선언
Public ReadOnly Property Parameters As SqlCeParameterCollection
    Get
‘사용 방법
Dim instance As SqlCeCommand
Dim value As SqlCeParameterCollection

value = instance.Parameters
public SqlCeParameterCollection Parameters { get; }
public:
property SqlCeParameterCollection^ Parameters {
    SqlCeParameterCollection^ get ();
}
member Parameters : SqlCeParameterCollection
function get Parameters () : SqlCeParameterCollection

속성 값

유형: System.Data.SqlServerCe.SqlCeParameterCollection
SQL 문의 매개 변수입니다. 기본값은 빈 컬렉션입니다.

주의

.NET Compact Framework Data Provider for SQL Server Compact에서는 CommandType이 Text로 설정된 경우 SqlCeCommand가 호출하는 SQL 문에 매개 변수를 전달하는 명명된 매개 변수를 지원합니다. 예를 들면 다음과 같습니다.

SELECT * FROM Customers WHERE CustomerID = @customerID 

참고

컬렉션의 매개 변수와 실행될 쿼리의 요구 사항이 일치하지 않으면 오류가 발생할 수 있습니다.

다음 예제에서는 SqlCeCommand를 만들고 SqlCeParameter 개체의 배열을 설정합니다.

Dim conn As New SqlCeConnection("Data Source = MyDatabase.sdf;")
conn.Open()

Dim command As SqlCeCommand = conn.CreateCommand()

' Create and prepare a SQL statement
'
command.CommandText = "INSERT INTO Region (RegionID, RegionDescription) VALUES (@id, @desc)"

Dim param As SqlCeParameter = Nothing

' NOTE:
' For optimal performance, make sure you always set the parameter
' type and the maximum size - this is especially important for non-fixed
' types such as NVARCHAR or NTEXT; In case of named parameters, 
' SqlCeParameter instances do not need to be added to the collection
' in the order specified in the query; If however you use ? as parameter
' specifiers, then you do need to add the parameters in the correct order
'
param = New SqlCeParameter("@id", SqlDbType.Int)
command.Parameters.Add(param)

param = New SqlCeParameter("@desc", SqlDbType.NVarChar, 100)
command.Parameters.Add(param)

command.Parameters("@desc").Size = 100

' Calling Prepare after having set the CommandText and parameters
'
command.Prepare()

' Execute the SQL statement
'
command.ExecuteNonQuery()

' Change parameter values and call ExecuteNonQuery again
'
command.Parameters(0).Value = 21
command.Parameters(1).Value = "mySecondRegion"
command.ExecuteNonQuery()
SqlCeConnection conn = new SqlCeConnection("Data Source = MyDatabase.sdf;");
conn.Open();

SqlCeCommand command = conn.CreateCommand();

// Create and prepare a SQL statement
//
command.CommandText = "INSERT INTO Region (RegionID, RegionDescription) VALUES (@id, @desc)";

SqlCeParameter param = null;

// NOTE:
// For optimal performance, make sure you always set the parameter
// type and the maximum size - this is especially important for non-fixed
// types such as NVARCHAR or NTEXT; In case of named parameters, 
// SqlCeParameter instances do not need to be added to the collection
// in the order specified in the query; If however you use ? as parameter
// specifiers, then you do need to add the parameters in the correct order
//
param = new SqlCeParameter("@id", SqlDbType.Int);
command.Parameters.Add(param);

param = new SqlCeParameter("@desc", SqlDbType.NVarChar, 100);
command.Parameters.Add(param);

command.Parameters["@desc"].Size = 100;

// Calling Prepare after having set the CommandText and parameters
//
command.Prepare();

// Execute the SQL statement
//
command.ExecuteNonQuery();

// Change parameter values and call ExecuteNonQuery again
//
command.Parameters[0].Value = 21;
command.Parameters[1].Value = "mySecondRegion";
command.ExecuteNonQuery();

참고 항목

참조

SqlCeCommand 클래스

System.Data.SqlServerCe 네임스페이스

SqlCeParameter