📄 readme.txt
字号:
spdol简单使用说明和示例代码
a
假设我们使用本机上默认端口的Mysql,用户名root,密码123456,有个数据库叫testdb,那么先创建一个dbi对象
$dbi = new dbi_mysql('localhost', 'root', '123456', 'testdb');
这个数据库里有张表叫 tb_test,要对这张表操作,定义一个 tb_test 类,这个类是table的子类。注意类名和表名一样。
这个类的属性就是表的字段名。
class tb_test extends table{
var $id;
var $name;
var $description;
var $flag;
function tb_test(&$dbi){
parent::table(get_class($this), $dbi);
}
}
现在只要在程序里创建类 tb_test 的实例,我们就可以以对象的方式来操作这个表了,enjoy it。
$t = new tb_test($dbi);
插入:
$t->name = 'ok';
$t->description = 'i am a table.';
$t->insert();
==========================================================================================
删除:
$t->name = 'sfs';
$t->delete();
==========================================================================================
查询:
$t->id = 23;
$ra = $t->select();
foreach ($ra as $row){
echo $row->name;
}
查询并按某字段排序:
$t->flag = 1;
$ra = $t->select('name', 1);
第一个参数为排序字段名,第二个参数为顺序,0为升序1为降序
限量查询:
$t->flag = 1;
$ra = $t->select(-1, -1, 3, 20);
从符合条件的第4条记录起取20条记录
排序并限量:
$t->flag = 1;
$ra = $t->select('name', 0, 0, 5);
注意select()返回的$ra是 tb_test 对象数组,数组元素符合查询条件的 tb_test 对象。
select()更详细用法在详细文档里会有说明。
==========================================================================================
更新:
$t->id = 45;
$ua = array();
$ua['name'] = 'ddd';
$ua['description'] = 'sfsfsdf';
$t->update($ua);
注意update()接受参数为数组,数组键名为想更新的字段名,值为想更新的字段名对应的新值。
==========================================================================================
符合条件行数:
$t->name = 'wang';
echo $t->numrows();
==========================================================================================
对事务的支持:
$dbi->startta();
$t->id = 45;
$t->name = 'wo';
$t->insert();
$dbi->commit(); //或$dbi->rollback();
==========================================================================================
其他:
selectmax(字段名)
selectmin(字段名)
selectsum(字段名)
顾名思义。。。
spdol简单说明
2006.9.15
详细说明文档制作中。。。
补:
那些不能通过table类执行的sql语句的解决方法(例):
$dbi = new dbi_mysql('host', 'user', 'pass', 'dbname');
$sql = 'select c.* from cbme_component c,cbme_cstatus c2 where c.statusid=c2.id';
$rs = $dbi->query($sql);
while ($row = $dbi->getrow($rs)){
echo $row['Name'];
...
}
如果操作单张表,也可以像下面那样:
$ra = $t->query('select count(*) from table1 group by name having count(*)>5');
返回的$ra仍是数组。
foreach ($ra as $row){
echo $row->name;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -