SqlCeResultSet.Insert 메서드 (SqlCeUpdatableRecord)

지정된 SqlCeUpdatableRecord를 내부 행 집합에 삽입합니다.

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

구문

‘선언
Public Sub Insert ( _
    record As SqlCeUpdatableRecord _
)
‘사용 방법
Dim instance As SqlCeResultSet
Dim record As SqlCeUpdatableRecord

instance.Insert(record)
public void Insert(
    SqlCeUpdatableRecord record
)
public:
void Insert(
    SqlCeUpdatableRecord^ record
)
member Insert : 
        record:SqlCeUpdatableRecord -> unit 
public function Insert(
    record : SqlCeUpdatableRecord
)

매개 변수

주의

레코드를 삽입해도 SqlCeResultSet의 현재 위치가 변경되지 않습니다.

이 함수를 호출하면 작업을 완료하기 위해 추가 호출을 할 필요 없이 즉시 삽입이 수행됩니다.

지정된 레코드의 열 수가 정의된 내부 행 집합보다 큰 경우 예외가 throw됩니다. 더 적은 수의 값을 지정하면 나머지 열은 null 값을 허용하거나 정의된 기본값을 가져야 합니다.

이 함수가 업데이트할 수 없는 SqlCeResultSet에서 호출되거나 판독기가 올바른 레코드에 배치되지 않은 경우 InvalidOperationException이 throw됩니다.

Dim conn As SqlCeConnection = Nothing

Try
    File.Delete("Test.sdf")

    Dim engine As New SqlCeEngine("Data Source = Test.sdf")
    engine.CreateDatabase()

    conn = New SqlCeConnection("Data Source = Test.sdf")
    conn.Open()

    Dim cmd As SqlCeCommand = conn.CreateCommand()
    cmd.CommandText = "CREATE TABLE myTable (col1 INT)"
    cmd.ExecuteNonQuery()

    cmd.CommandText = "SELECT * FROM myTable"

    Dim rs As SqlCeResultSet = cmd.ExecuteResultSet(ResultSetOptions.Updatable Or ResultSetOptions.Scrollable)

    Dim rec As SqlCeUpdatableRecord = rs.CreateRecord()

    ' Insert 10 records
    '
    Dim i As Integer
    For i = 0 To 9
        rec.SetInt32(0, i)
        rs.Insert(rec)
    Next i

    ' Update the 5th record
    '
    If True = rs.ReadAbsolute(5) Then
        rs.SetInt32(0, 55)
        rs.Update()
    End If

    ' Delete the 2nd record
    '
    If True = rs.ReadAbsolute(2) Then
        rs.Delete()
    End If
Catch e As Exception
    MessageBox.Show(e.Message)
Finally
    conn.Close()
End Try
SqlCeConnection conn = null;

try
{
    File.Delete("Test.sdf");

    SqlCeEngine engine = new SqlCeEngine("Data Source = Test.sdf");
    engine.CreateDatabase();

    conn = new SqlCeConnection("Data Source = Test.sdf");
    conn.Open();

    SqlCeCommand cmd = conn.CreateCommand();
    cmd.CommandText = "CREATE TABLE myTable (col1 INT)";
    cmd.ExecuteNonQuery();

    cmd.CommandText = "SELECT * FROM myTable";

    SqlCeResultSet rs = cmd.ExecuteResultSet(ResultSetOptions.Updatable |
        ResultSetOptions.Scrollable);

    SqlCeUpdatableRecord rec = rs.CreateRecord();

    // Insert 10 records
    //
    for (int i = 0; i < 10; i++)
    {
        rec.SetInt32(0, i);
        rs.Insert(rec);
    }

    // Update the 5th record
    //
    if (true == rs.ReadAbsolute(5))
    {
        rs.SetInt32(0, 55);
        rs.Update();
    }

    // Delete the 2nd record
    //
    if (true == rs.ReadAbsolute(2))
    {
        rs.Delete();
    }
}
catch (Exception e)
{
    MessageBox.Show(e.Message);
}
finally
{
    conn.Close();
}

참고 항목

참조

SqlCeResultSet 클래스

Insert 오버로드

System.Data.SqlServerCe 네임스페이스