注意!任何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. Linux系统下如何优雅地关闭Java进程?

    资料出处: http://www.sohu.com/a/329564560_700886 https://www.cnblogs.com/nuccch/p/10903162.html 前言 Linux ...

  2. SAS学习笔记26 方差分析

    对于多于两组(k>2)样本均数的比较,t检验不再适用,方差分析(analysis of variance, ANOVA)则是解决上述问题的重要分析方法.方差分析由R.A.Fisher(1923) ...

  3. 关于spring中配置文件路径的那些事儿

    在项目中我们经常会需要读一些配置文件来获取配置信息,然而对于这些配置文件在项目中存放的位置以及获取这些配置文件的存放路径却经常搞不清楚,自己研究了一下,记录下来以备后用. 测试代码如下 package ...

  4. 在论坛中出现的比较难的sql问题:1(字符串分拆+行转列问题 SQL遍历截取字符串)

    原文:在论坛中出现的比较难的sql问题:1(字符串分拆+行转列问题 SQL遍历截取字符串) 最近,在论坛中,遇到了不少比较难的sql问题,虽然自己都能解决,但发现过几天后,就记不起来了,也忘记解决的方 ...

  5. eclipse怎样修改同名包(package)的显示样式、格式

    打开我们的项目,可以看到左侧的package看上去特别多,没有层级. 点击Package Explorer右上角的箭头图标. 可以看到“Flat(扁平)”,“Hierarchical(分层)”两个选项 ...

  6. Visual Studio 2017修改编码UTF-8

    转载自:https://blog.csdn.net/qq_36848370/article/details/82597157 VS 2017隐藏了高级保存功能,导致没办法直接去设置代码编码 UTF-8 ...

  7. 1、java集合:java集合详解及类关系图

    List和Set继承自Collection接口. Set无序不允许元素重复.HashSet和TreeSet是两个主要的实现类. List有序且允许元素重复,支持null对象.ArrayList.Lin ...

  8. 使用 ElasticSearch Aggregations 进行统计分析(转)

    https://blog.csdn.net/cs729298/article/details/68926969 ElasticSearch 的特点随处可见:基于 Lucene 的分布式搜索引擎,友好的 ...

  9. Python 多进程拷贝文件夹案例

    import os import multiprocessing def copy_file(q, file_name, old_folder_name, new_folder_name): &quo ...

  10. 使用NSFileManager管理文件系统

    文件系统作为被所有进程使用的基本资源之一,在macOS和iOS中主要用于处理数据文件.应用程序以及与操作系统自身相关的持久存储. iOS中的文件系统格式为HFS Plus,macOS中的主要格式也是H ...