tz-lom / hsphp
MySQL HandlerSocket 扩展客户端库。
v1.21
2013-01-20 10:59 UTC
This package is not auto-updated.
Last update: 2024-09-14 13:31:39 UTC
README
PHP 的 HandlerSocket 库
此库提供了与 MySQL 兼容数据库(MySQL、MariaDB、Percona)的 HandlerSocket 插件进行通信的 API。
有关 HandlerSocket 的更多信息,请参阅此处 MariaDB 的 HandlerSocket 文档。
安装
一旦您已安装 composer,请在您的 php 项目目录中运行以下命令
php composer.phar require tz-lom/hsphp --no-update
使用示例
选择
$c = new \HSPHP\ReadSocket(); $c->connect(); $id = $c->getIndexId('data_base_name', 'table_name', '', 'id,name,some,thing,more'); $c->select($id, '=', array(42)); // SELECT WITH PRIMARY KEY $response = $c->readResponse(); //SELECT with IN statement $c = new \HSPHP\ReadSocket(); $c->connect(); $id = $c->getIndexId('data_base_name', 'table_name', '', 'id,name,some,thing,more'); $c->select($id, '=', array(0), 0, 0, array(1,42,3)); $response = $c->readResponse();
更新
$c = new \HSPHP\WriteSocket(); $c->connect('localhost',9999); $id = $c->getIndexId('data_base_name','table_name','','k,v'); $c->update($id,'=',array(100500),array(100500,42)); // Update row(k,v) with id 100500 to k = 100500, v = 42 $response = $c->readResponse(); // Has 1 if OK
批量更新
$c = new \HSPHP\WriteSocket(); $c->connect('localhost',9999); $id = $c->getIndexId('data_base_name','table_name','','k,v'); $c->update($id,'=',array(100500),array(100500,42), 2, 0, array(100501, 100502)); // Update rows where k IN (100501, 100502) $response = $c->readResponse(); // Has 1 if OK
删除
$c = new \HSPHP\WriteSocket(); $c->connect('localhost',9999); $id = $c->getIndexId('data_base_name','table_name','','k,v'); $c->delete($id,'=',array(100500)); $response = $c->readResponse(); //return 1 if OK
插入
$c = new \HSPHP\WriteSocket(); $c->connect('localhost',9999); $id = $c->getIndexId('data_base_name','table_name','','k,v'); $c->insert($id,array(100500,'test\nvalue')); $response = $c->readResponse(); //return array() if OK
增加
$c = new \HSPHP\WriteSocket(); $c->connect('localhost',9999); $id = $c->getIndexId('data_base_name','table_name','','v'); $c->increment($id,'=',array(100500),array(2)); // Increment v column by 2 $response = $c->readResponse(); // Has 1 if OK
减少
$c = new \HSPHP\WriteSocket(); $c->connect('localhost',9999); $id = $c->getIndexId('data_base_name','table_name','','v'); $c->decrement($id,'=',array(100500),array(2)); // Decrement v column by 2 $response = $c->readResponse(); // Has 1 if OK