select CLng(@@identity) as id
语法错误(操作符丢失)在查询表达式‘CLng(@@identity)’中
@djian:
select @@identity as id这样可以
select CLng(1)这样也可以
搞不懂
@Rich.T: 谢谢。select @@identity as id这样是可以,但是返回的是int类型,我需要返回long类型的,因为我要扩展第三方类库,而它只给了long类型的扩展接口
@djian:
返回的时候转换一下类型不行吗
@Rich.T: 可以,但是不改源码是最好的了,所以才要用sql语句来进行类型转换
@djian:
那没其他办法了,Access没办法像T-SQL那样定义变量赋值,不然就可以实现
@Rich.T:
本来想曲线救国的:
select top 1 CLng(int_id) as [Id] from (select @@identity as int_id from [MSysObjects])
[MSysObjects] 也可以换成你自己的表
但是后来发现Access里的long类型是32位的,.Net中long是64位 ,看来还是要改代码了 - -
select top 1 CLng(int_id) as [Id] from (select @@identity as int_id from [MSysObjects])
[MSysObjects] 也可以换成你自己的表