【发布时间】:2009-05-15 02:21:59
【问题描述】:
在 .NET 中使用 ODBC 对象时,检索插入行的主键的最佳方法是什么?
例如(VB):
Dim command As OdbcCommand = gOdbcConn.CreateCommand()
command.CommandText("INSERT INTO auhinode (node_key, node_desc) VALUES (0, 'New Node')")
...
Dim result As Integer = command.ExecuteNonQuery()
我看到了一些其他建议here,但我想知道是否有特定于 ODBC 对象的解决方案?
编辑:我们使用 ODBC 的原因是因为我们支持 3 种不同的数据库 - SQL Server、Oracle、Informix。
【问题讨论】:
-
在插入之前您已经知道 mode_key 的值(零),所以只需将 'promate' mode_key 作为'primary' key :)
-
...或者是否有您没有告诉我们的自动增量或类似的自动生成值(例如 SQL Server IDENTITY)?
-
“我们使用 ODBC 的原因是因为我们支持 3 种不同的数据库 - SQL Server、Oracle、Informix。” -> 这不会强迫您使用 ODBC...ADO.NET 2.0 有一个很好的抽象模型,请参阅 System.Data.Common 命名空间