注意!任何swoole函数都应该包含在go(function(){})

  • 经典查询方法query()
go(function (){
$swoole_mysql = new Swoole\Coroutine\MySQL();
$swoole_mysql->connect([
'host' => '127.0.0.1',
'port' => ,
'user' => 'root',
'password' => 'xxxx',
'database' => 'xxxxdb',
]);
$res = $swoole_mysql->query('select * from colname');
if($res === false) {
return;
}
foreach ($res as $value) {
echo $value['comment'].PHP_EOL;
}
});
  • 增强型---防止SQL注入攻击的方法
<?php
use Swoole\Coroutine as co;
co::create(function (){
$db = new co\MySQL();
$config=array(
'host'=>'localhost',
'database'=>'xxxxdb',
'user'=>'root',
'password'=>'xxxx',
'fetch_mode' => true,
);
$db->connect($config);
$stmt = $db->prepare("select * from colname");
$stmt->execute();
$res=$stmt->fetchAll();
var_dump($res);
});
  • 增强型---带参数的查询样例
<?php
use Swoole\Coroutine as co;
co::create(function (){
$db = new co\MySQL();
$config=array(
'host'=>'localhost',
'user'=>'root',
'database'=>'xxxxdb',
'password'=>'xxxx',
'fetch_mode'=>true,
);
$db->connect($config);
$stmt = $db->prepare('select * from colname where tblbelongs=? and bz=?');
var_dump($stmt);
$stmt->execute(array('incomedoc_mx','s'));
var_dump($stmt->fetchAll());
});
  • 插入语句---普通版本
<?php

go(function (){
$swoole_mysql = new Swoole\Coroutine\MySQL();
$swoole_mysql->connect([
'host' => '127.0.0.1',
'port' => ,
'user' => 'root',
'password' => 'xxxx',
'database' => 'xxxxdb',
]);
$swoole_mysql->begin();
$swoole_mysql->query("insert into testpic set topic=1 ");
$swoole_mysql->commit();
});
  • 插入语句---带预先处理
<?php
use Swoole\Coroutine as co; go(function (){
co::create(function() {
$db = new co\MySQL();
$server = array(
'host' => '127.0.0.1',
'user' => 'root',
'password' => 'xxxx',
'database' => 'xxxdb',
); $ret1 = $db->connect($server);
$stmt = $db->prepare('insert into testpic set topic=?, recdate=?');
if ($stmt == false)
{
var_dump($db->errno, $db->error);
}
else
{
$ret2 = $stmt->execute(array('cpc and cj will marry me','2019-10-08'));
var_dump($ret2);
}
}); });

swoole组件----mysql查询,插入数据的更多相关文章

  1. MySQL数据库插入数据出现 ERROR 1526 (HY000): Table has no partition for value xxx

    MySQL数据库插入数据出现ERROR 1526 (HY000): Table has no partition for value xxx工作的时候发现无法插入数据,报错:ERROR 1526 (H ...

  2. Python向mysql数据库插入数据

    一.向表tcolor中插入数据的主要流程如下: import datetimeimport pymysql.cursorsconnection = pymysql.connect(host='loca ...

  3. MySQL查询关键数据方法

    MySQL查询关键数据方法 操作表的SQL语句补充 1.修改表名 alter table 表名 reame 新表名: 2.新增字段名 alter table 表名 add 字段名 字段类型(数字) 约 ...

  4. MySQL大批量插入数据

    MySQL大批量插入数据 1. 对于Myisam类型的表,可以通过以下方式快速的导入大量的数据. ALTER  TABLE  tblname  DISABLE  KEYS; loading  the  ...

  5. Visual Studio 2017 - Windows应用程序打包成exe文件(2)- Advanced Installer 关于Newtonsoft.Json,LINQ to JSON的一个小demo mysql循环插入数据、生成随机数及CONCAT函数 .NET记录-获取外网IP以及判断该IP是属于网通还是电信 Guid的生成和数据修整(去除空格和小写字符)

    Visual Studio 2017 - Windows应用程序打包成exe文件(2)- Advanced Installer   Advanced Installer :Free for 30 da ...

  6. MySql查询分页数据

    MySql查询分页数据

  7. MySQL之插入数据(添加数据)-INSERT

    基本语法: INSERT 语句有两种语法形式,分别是 INSERT…VALUES 语句和 INSERT…SET 语句. 1.INSERT...VLAUES语句 INSERT VLAUES的语法格式如下 ...

  8. 关于mysql数据库插入数据,不能插入中文和出现中文乱码问题

    首先,推荐一篇博客:http://www.cnblogs.com/sunzn/archive/2013/03/14/2960248.html 当时,我安装完mysql数据库后,新建一个数据库后插入数据 ...

  9. eclipse连接mysql,插入数据时乱码

    问题:如果eclipse中项目的编码方式为utf-8 插入数据后,在数据库中查看后,汉字出现乱码情况 解决方法: 1.在获取连接的时候将conn = DriverManager.getConnecti ...

随机推荐

  1. MakeFile文件是什么——内容、工作原理、作用、使用

    MakeFile文件是什么?它里面包含什么内容.具有什么作用.怎么使用?下面就来具体说说. 什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你 ...

  2. javascript当中火狐的firebug如何单步调试程序?

    [学习笔记] 2)火狐的firebug如何单步调试程序 马克-to-win:火狐中:工具/web 开发者/调试器,开始时没有文件,在浏览器当中点刷新按钮,文件就加载进来了. 文章转载自原文:https ...

  3. SQLite之rowid与sqlite3_last_insert_rowid()

    //返回最后一次insert的rowid,如果没有插入就返回0 (DB session断开后也返回0, 是保存在进程的内存中) SELECT LAST_INSERT_ROWID(); //找到最大的r ...

  4. PHP和Memcached - Memcached的介绍及常用命令

    1.什么是Memcached 自由开源的,高性能,分布式内存对象缓存系统,分布式是基于客户的缓存系统,服务器之间是不相互通讯的. 2.Memcached的使用场景 储存session. 缓存数据. 解 ...

  5. Python笔记004-Python最基本内置数据类型和运算符

    第二章(1)Python编程基础概念 1. 最基本内置数据类型和运算符 每个对象都有类型,Python 中最基本的内置数据类型: 1. 整数 整数,2345 ,10 ,50 2. 浮点型 小数,3.1 ...

  6. css之word-wrap和word-break的区别

    对于英文单词,如果有一个连写且长度很长的英文单词,在第一行显示不下的情况下,浏览器默认不会截断显示,而是把这个单词整体挪到下一行.但是当整体挪到下一行还是显示不完全该肿么办呢?有如下两个方法: wor ...

  7. 2019牛客多校三 A. Graph Games (图分块)

    大意: 给定无向图, 定义$S(x)$为$x$的邻接点集合. 每次操作翻转$[L,R]$范围的边, 询问$S(x)$与$S(y)$是否相等. 快速判断集合相等可以用$CF 799F$的技巧. 采用$h ...

  8. Java数据结构ArrayList

    Java数据结构ArrayList /** * <html> * <body> * <P> Copyright JasonInternational</p&g ...

  9. ligerui tab 部分记载

    打开一个Tab $(".strength_box").click(function () { var id = $(this).attr("data"); va ...

  10. Ocelot + Consul的demo(二)集群部署

    把服务A和服务B接口分别部署在两个ip地址上 修改 services.json文件, { "encrypt": "7TnJPB4lKtjEcCWWjN6jSA==&quo ...