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
)
参数
- record
类型:System.Data.SqlServerCe.SqlCeUpdatableRecord
要插入的记录。
注释
插入记录不会更改 SqlCeResultSet 的当前位置。
调用此函数将立即执行插入,不需要其他调用即可完成此操作。
如果指定的记录包含的列比基础行集定义的列多,则会引发异常。如果指定的值少,则剩余的列必须允许 NULL 值或已定义默认值。
如果对一个不可更新的 SqlCeResultSet 调用此函数,或者读取器没有定位在有效的记录上,则会引发一个 InvalidOperationException。
示例
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();
}