已解决的问题
满意答案好评率:20%
- 这是我以前空间里写的 你参考一下:
一般来说,在数据库方面,php和mysql才是黄金搭档,但有些时候尤其小规模数据存放在accesss中时,可能就需要连接一下了。前几天,因为要给老师把一些图片从access数据库中提取出来生成文件,自己对vb之类有不太熟悉,就百度和查手册用php解决了一下,现在把一些心得写一下。
php连接access,用的是odbc相关函数。连接的代码如下:
<?php
$connstr="DRIVER=Microsoft Access Driver (*.mdb);DBQ=".realpath("mydb.mdb");
$connid=odbc_connect($connstr,"","",SQL_CUR_USE_ODBC );
?>
如上就建立了一个连接,mydb.mdb就是你要连接的access数据库,接下来就要执行sql查询,跟mysql类似又有些不一样。
$rs=odbc_do($connid,“sql查询”);执行查询并返回。
odbc_fetch_row($rs),与mysql有一点差别,odbc无需返回,只有执行odbc_do()之后,才可以利用odbc_result(),来获得结果。
$f1=odbc_result($rs,n),用来获得查询结果,n从1开始取值,表示第几个字段,也可用字段名称代替。
基本的就这些了,更多的函数可以参考php手册的odbc函数部分,根据mysql的类比就可以。
还有一点要说明的是,在php.ini有关于读取odbc数据库内容大小的限制,默认为4kb,若数据库中有字段大小超出就会出现内容不全,设置方法在php.ini中找到
odbc.defaultlrl,把它后边的数值增大即可。
下面举个例子:
在mydb.mdb中有个pic表,表中两个字段,一个是名称,一个是picid,现要将其中picid不为空的记录读出并按格式写入一个文本文档,如下:
<?php
$connstr="DRIVER=Microsoft Access Driver (*.mdb);DBQ=".realpath("mydb.mdb");
$connid=odbc_connect($connstr,"","",SQL_CUR_USE_ODBC );
$query=odbc_do($connid,"select 名称,PicID from pic where PicID<>''");
while(odbc_fetch_row($query))
{ - 回答时间:2009-09-03 22:33:28 回答者:jackie543[小学生] 回答采纳率:7%(118个被采纳)
- 对最佳答案评论 目前有 1 人评论
-
提问者 对于答案的评论: 很感谢你的帮助
- ·快播播放器(Qvod播放器) V5.2.99
- ·Photoshop CS5 官方正式版
- ·Word 2003 简体中文版(WPS) 官方下载
- ·office 2003 (WPS) 简体中文版
- ·Adobe Flash Player V11.3 官方版
- ·Word 2007 简体中文版(WPS) 官方下载
- ·VaGaa哇嘎画时代 V2.6.7.5_1109修定版
- ·Excel 2003 官方正式版(WPS)
- ·奇虎360安全卫士 V8.6.0.2001 正式版
- ·YY语音(歪歪语音) V4.13.0.4 官方版
- ·3gp格式转换器 V1.08
- ·office 2007 (WPS) 简体中文版
- ·福昕PDF阅读器 多特专版 V4.3.0.1110官方下载
- ·浩辰CAD 2011 测试标准版 (30天免费使用)
- ·QQ空间克隆器2012 SP1.5官方版
- ·搜狗拼音输入法 V6.2 正式版
我可以做什么
提出问题
在使用软件的过程中总会遇到一些自己无法解决的问题,需要提出来靠大家的力量来解决,我们就是要给您这样一个软件问答的平台。分享知道的东西
回答提问者的提问,可以简单或详尽的解答,提问者和系统会对你的贡献作出一个合理的积分回报。评价和体验
评价他人的提问和回答,不仅仅可以维护一个好的问答环境,也有助于提高你自己的学习和辨别能力。
