社区
C#
帖子详情
用ADO.NET在Oracle表中插入记录后如何返回自增主键值?
firmbird
2004-04-22 12:03:03
用ADO.NET在Oracle表中插入记录后如何返回自增主键值?
...全文
444
14
打赏
收藏
用ADO.NET在Oracle表中插入记录后如何返回自增主键值?
用ADO.NET在Oracle表中插入记录后如何返回自增主键值?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
strpinelin
2004-07-10
打赏
举报
回复
在Oracle中有一个数据类型UROWID,把变量定义为UROWID应该就可以了。
wangsaokui
2004-04-26
打赏
举报
回复
I don't know how to get identity in Oracle database, gz!
wind2moon
2004-04-23
打赏
举报
回复
我也遇到过同样的问题,只是数据库系统并没有提供这样的系统变量。我的解决办法是:
(1)在数据表中增加一个时间域,
(2)插入记录前先用一个变量保存当前系统时间;
(3)插入记录
(4)查询该数据表,查询条件为该时间域。
(timestamp的单位是百分之三秒)
sy246
2004-04-23
打赏
举报
回复
你用select sequence.nextval from dual不是能得到主健吗!
firmbird
2004-04-23
打赏
举报
回复
主键的值是在插入触发器中调用sequence.nextval来添加的,而不是自己调用select sequence.nextval from dual获值后加入到表中的,
wolftop
2004-04-23
打赏
举报
回复
up~!UP~!
morefish
2004-04-22
打赏
举报
回复
要不用存储过程返回参数吧。
firmbird
2004-04-22
打赏
举报
回复
拜托,各个给个例子,不要钓胃口啊,分不够可以开帖再送,
sequence.currval要在用了sequence.nextval之后才有效,就是说在insert之后就调用sequence.currval值,不能分开执行,另外sequence的值不能用在where子句中。各位帮我想想办法吧
hfwang009
2004-04-22
打赏
举报
回复
secquence是可以,而且速度快
如果不会的话还可以用程序实现。select . update.
firmbird
2004-04-22
打赏
举报
回复
能给个例子吗?我试过用序列,不过不知道怎么写
sy246
2004-04-22
打赏
举报
回复
可以用用序列!
zhpsam109
2004-04-22
打赏
举报
回复
使用select 序列.nextval from dual;
firmbird
2004-04-22
打赏
举报
回复
up
firmbird
2004-04-22
打赏
举报
回复
不行,返回主键值必须在插入语句之后立即执行,要不然就可能会有其他用户更新主键值,哪就不对了
在SQL Server中可以这样实例
OleDbCommand command=new OleDbCommand();
command.Connection=connection;
command.CommandText="Insert Into tablename(col1,col2) values(val1,val2); select * from tablename where keyCol=@@IDENTITY"; //晕,在Oracle该怎么办!!
command.InsertCommand=command;
他这里用了系统变量@@INDENTITY;
检索标识或 Autonumber 值 (
ADO.NET
)
关系数据库中的
主
键是始终包含唯一值的列或列的组合。 知道
主
键值
使您可以定位包含该值的行。 关系数据库引擎(如 SQL Server、
Oracle
和 Microsoft Access/Jet)支持创建可指定为
主
键的自动递增列。 在向
表中
添加行时,服务器会生成这些值。 在 SQL Server 中可以设置列的标识属性,在
Oracle
中可以创建序列,在 Microsoft Access 中可以
ADO.NET
概述
ADO.NET
是.NET Framework中提供了专门用来处理数据的技术。通过该技术,开发人员可以访问SQL Server、 ODBC、
Oracle
、 OLE DB、XML 等数据源,并检索、操作和更新这些数据源中的数据。
ADO.NET
组成结构:
ADO.NET
是.NET Framework 中的一部分, 提供对 Microsoft SQL Server. ODBC、
Oracle
等数据源,以及通过OLE DB和XML公开的数据源的一致访问。应用程序(Windows Form、ASP.NET 等
.net
oracle
乱码,
Ado.net
访问
Oracle
乱码问题
之前安装
Oracle
- OraClient10g_home1客户端,用
Ado.net
访问没有问题,后来安装ODP之后,自动的又安装了
Oracle
- OraClient12Home1,之后就出现乱码变成???。查询条件含有中文就不行。解决方法:打开注册表HKEY_LOCAL_MACHINE->SOFTWARE->
Oracle
,你会看到KEY_OraClient10g_home1项下面...
数据库
插入
记录
返回
自增
id
在mybatis 的映射文件中,设置两个属性。 例如: useGeneratedKeys="true" keyProperty="id"> insert into [order](gId,userId,buyNum) values(#{gId},#{userId},#{buyNum}) 在orcale中不支持
自增
。它是用序列来模拟
自增
的。 select EMPLOYE
ADO.NET
精要总结
ADO.NET
主
要包括5个对象,它们分别是Connection(数据库连接)对象、Command(数据库命令)对象、DataReader(数据库读取器)对象、DataAdapter(数据库适配器)对象和DataSet(数据集)对象。
C#
111,129
社区成员
642,540
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章