<?PHP //创建ADO连接 $conn = @new COM("ADODB.Connection") or die ("ADO连接失败!"); $connstr = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" . realpath("temp/TempData.mdb"); $conn->Open($connstr); //创建记录集查询 $rs = @new COM("ADODB.RecordSet"); $rs->Open("select * from blog_Content",$conn,1,3); echo $rs->Fields["log_Title"]->Value; //输出log_Title字段 echo "<br/>"; $rs->Movenext(); //将记录集指针下移 echo $rs->Fields["log_Title"]->Value; $rs->close(); ?>
이 방법은 Microsoft.Jet.OLEDB.4.0을 사용하여 연결할 수도 있으며 속도가 더 빠릅니다.
참고: conn = @new COM("ADODB.Connection") 또는 die("ADO 연결 실패!");
COM은 대문자여야 합니다. 이전에는 소문자를 사용했습니다. Windows XP에서 불법적인 연산이 발생하였고, 여기서는 @기호를 사용하는데, 주요 기능은 내결함성입니다!
다른 데이터베이스 연산 방식은 ASP와 유사하므로 자세히 소개하지 않겠습니다~
2·
ASP와 PHP를 사용한다 네, 같이 비교해 보겠습니다..
ASP 프로그램
프로그램 코드
1.conn= "DRIVER=Microsoft Access Driver( *.mdb);DBQ=" & Server.MapPath ("*.mdb")
2.set conn = server.createobject("adodb.connection")
3.conn.open conn
4 .set rs = Server.CreateObject("adodb.recordset ")
5.sql = "테이블 이름에서 * 선택"
6.rs.Open sql, conn, 3, 1
7.rs. 닫기
PHP 프로그램
프로그램 코드
<?PHP 1.$conn = @new COM("ADODB.Connection") or die ("ADO连接失败!"); 2.$connstr = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" . realpath("temp/TempData.mdb"); 3.$conn->Open($connstr); 4.$rs = @new COM("ADODB.RecordSet"); 5.$sql ="select * from blog_Content"; 6.$rs->Open($sql,$conn,1,3); 7.$rs->close(); ?>
两个程序都相对应....很好理解了吧.嘿....然后就是ASP和PHP操作记录集了...有什么不同,,看资料了事5~
php: $rs[name/index];
asp: rs(name/index);
php: $rs->Fields["name"]->Value / fields[index]->Value;
asp: rs.fields(index)/rs.field(name);
php中的方法和ASP中基本一致,只是写法上不一样,,注意:PHP区分大小写,写时后面一定要加;号
asp:
修改记录集中的记录
rs.AddNew 向记录集中添加一条新记录
rs.Delete 从记录集中删除一条记录
rs.{fieldName/fieldIndex}=指定值;
rs.Update 保存对当前记录所做的修改
CancelBatch 当记录集处在批量更新模式时)取消一批更新
CancelUpdate 调用Update之前)取消对当前记录所做的所有修改
UpdateBatch 当记录集处于批量更新模式时)保存对一个或多个记录的修改
遍历记录集
Move NumRecords 在记录集中向前或向后移动指定数目的记录数。
MoveFirst 移动到记录集的第一条记录
MoveNext 移动到记录集的下一条记录
MovePrevious 移动到记录集中的上一条记录
MoveLast 移动到记录集的最后一条记录
记录集对象属性
AbsolutePosition 用来设置或读取当前记录在记录集中的位置顺序号
BOF 标明当前位置在记录集中的第一条记录之前
EOF 标明当前位置在记录集中的最后一条记录之后
RecordCount 表示一个记录集中的记录总数
记录集进行分页
AbsolutePage 指定当前的页
PagePount 返回记录集中的逻辑页数
PageSize 指定一个逻辑页中的记录个数,缺省值是10
GetRows() 记录取到数组
MaxRecords 记录集的最大容量