社区
基础编程
帖子详情
ADODB使用一问!
stanely
2004-05-06 01:00:39
有个自动编号的字段,想在插入新数据的时候同时得到这个自动编号的字段生成的编号,并且组成另一个sql语句进行其他操作,怎么做?
如果使用操作系统的com对象的话,可以调用recordset.update然后再recordset.fields[xxx]就可以。
但是用adodb这套"模拟类"怎么实现这个功能?
...全文
64
11
打赏
收藏
ADODB使用一问!
有个自动编号的字段,想在插入新数据的时候同时得到这个自动编号的字段生成的编号,并且组成另一个sql语句进行其他操作,怎么做? 如果使用操作系统的com对象的话,可以调用recordset.update然后再recordset.fields[xxx]就可以。 但是用adodb这套"模拟类"怎么实现这个功能?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
-神仙-
2004-05-06
打赏
举报
回复
为什么要用adodb?
把php的函数加一个壳不就好了
function db_connect($host,$usnm,$pswd){
return mysql_connect($host,$usnm,$pswd);
}
function db_select_db($db){
return mysql_select_db($db);
}
以后只要改一个文件就可以了
stanely
2004-05-06
打赏
举报
回复
还是没明白,
如果我有个表叫languages
2个字段:
id=>自动编号
txt=>文本
echo $conn->Genid('languages'); 结果是空
echo $conn->Genid('id'); 结果是从1开始的递增的数字,而产生的数字并不是唯一的,id字段里面已经有6了,他还产生6
echo $conn->Genid('txt');
结果跟echo $conn->Genid('id'); 一样。
echo $conn->Genid('iddddddd');//一个不存在的字段
结果跟echo $conn->Genid('id'); 一样。
为啥?
chinaworker
2004-05-06
打赏
举报
回复
GenID($seqName = 'ADOdbseq',$startID=1)
产生一个顺序号码(在mssql是一个整数值)。对 interbase,mysql,postgresql,oci8,oci8po,ODBC核心类驱动程序(如 access,vfp,db2等等) 都支持。使用 $seqName做为顺序名。如果数据库没有值,那么GenID()将会自动为你产生一个序号(产生使用者 id 时允许如此),换句话说,你必需自行建立序号。
如果你的数据库驱动程序要仿真序号,资料表的名称就是序号名(sequence name),而这个资料表必需有一个字段"id",而其资料型别为整数,或你需要更大些的 numeric(16)。
对于没有支持序号原生功能的ODBC及数据库(如 mssql,mysql),我们对每一个序号建立一个资料表。如果序号没有被预先定义,那启如的号码值就设定成 $startID。
注意,mssql驱动程序的 GenID()会产生一个16位的GUID。自1.90版起,我们将回传整数。
stanely
2004-05-06
打赏
举报
回复
我看了一下帮助,genid()可用。
但是不明白事例代码的意思:
$id = $connection->GenID('sequence_name');
$connection->Execute("insert into table (id, firstname, lastname) values ($id, $firstname, $lastname)");
其中'sequence_name'是什么?
stanely
2004-05-06
打赏
举报
回复
GenID和Insert_ID不适用于所有数据库阿。。。
有没有portable的方法?
feixuehenshui
2004-05-06
打赏
举报
回复
$userid=$db->Insert_ID();
hahawen
2004-05-06
打赏
举报
回复
你把GenID($seqName = 'ADOdbseq',$startID=1)中的$startID设置为你现在数据库中的id字段的最大值就可以了。
否则像你这种重复,使根本没法让数据库帮你搞得。或者你自己写个genid的函数。
stanely
2004-05-06
打赏
举报
回复
有没有别的方法?产生GUID的办法好不好?
hahawen
2004-05-06
打赏
举报
回复
$cnn->GenID("user");
GenID的具体的用法,看adodb的手册
stanely
2004-05-06
打赏
举报
回复
不行啊,这个不是所有的数据库都支持,
使用adodb就是为了以后移植数据库的时候方便。
有没有通用的做法?
sto
2004-05-06
打赏
举报
回复
$db->insert_id();
PB9转换utf-8例子
在这个例子中,
使用
了
ADO
DB
.Stream对象,这是一个在Microsoft ActiveX Data Objects (
ADO
) 中提供的组件,它允许处理各种类型的流数据,包括文本数据的编码转换。 描述中提到,由于PB9及其以下版本未内置直接的字符...
ASP开发答疑200问
4. **ASP组件**:可能讨论了如
ADO
DB
(数据库访问组件)、FileSystemObject(文件系统对象)、CGI(通用网关接口)等组件的
使用
方法。 5. **数据库连接与操作**:介绍如何
使用
ASP与SQL Server、Access等数据库进行...
VB仿问有密码access打印条码
在VB中,我们通常
使用
Connection对象来建立与数据库的连接,
使用
Command对象执行SQL语句,
使用
Recordset对象来处理数据。在连接有密码的Access数据库时,我们需要在ConnectionString中包含用户名和密码信息。 ```vb...
PHPMysql环境搭建xampp安装
使用
教程.pdf
*
ADO
db
v5.09a * FPDF v1.6 * Zend Framework 1.9 Minimal Package (via PEAR) * Mercury Mail Transport System v4.62 * msmtp 1.4.17 (a sendmail compatible SMTP client) * FileZilla FTP Server 0.9.32 * ...
MSCOMCTL.OCX组建安装注册程序
ActiveX控件是一种可嵌入到其他应用程序中的小型程序模块,可以通过Internet Explorer或其他支持ActiveX的应用程序来
使用
。 2. **.OCX文件**:.OCX文件是OLE Control Extension的缩写,它是ActiveX控件的二进制格式...
基础编程
21,893
社区成员
140,347
社区内容
发帖
与我相关
我的任务
基础编程
从PHP安装配置,PHP入门,PHP基础到PHP应用
复制链接
扫一扫
分享
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章