Medoo

开始

更新日志

Where 语句

查询

聚合

Fetch

事务

管理

原生SQL查询

Raw object

PDO object

Debug

数据库信息

Query

执行自定义原始查询。

query($query)

返回: [object] PDOStatement 对象。

Medoo 使用 SQL-92 标准处理所有查询。您应该记住查询中的引号,或尽可能使用预处理语句来防止 SQL 注入。

$database->query("CREATE TABLE table (
	c1 INT STORAGE DISK,
	c2 INT STORAGE MEMORY
) ENGINE NDB;");
 
$data = $database->query("SELECT email FROM account")->fetchAll();
print_r($data);

引号语法

原始 SQL 表达式为表名和列名提供了快捷引号和前缀,因此您不必关心引号和维护表前缀。您所要做的就是使用 来说明它们是表或列名。Medoo 将分析它们是表还是列,并用正确的引号和前缀转换它们。

$data = $database->query("SELECT  FROM ")->fetchAll();
// 此查询将被转换为:
// SELECT "email" FROM "account"
 
// 如果您在初始化时设置了表前缀,上述查询将被转换为:
$database = new Medoo([
	....
	"prefix" => "WP_"
]);
 
$data = $database->query("SELECT ,
	FROM 
	WHERE  != 100
")->fetchAll();
SELECT "WP_account"."email", "WP_account"."nickname"
FROM "WP_account"
WHERE "id" != 100

预处理语句

query() 也支持预处理语句。Medoo 将自动检测输入参数的数据类型。

$data = $database->query(
	"SELECT * FROM  WHERE  = :user_name AND  = :age", [
		":user_name" => "John Smite",
		":age" => 20
	]
)->fetchAll();
 
print_r($data);