当前位置: 首页 > 面试题库 >

学习从哪里准备语句的选择

东门阳飇
2023-03-14
问题内容

有人可以将下面的代码重写为准备好的语句吗?

result = mysqli_query($con,"SELECT * FROM note_system WHERE note = '$cnote'") 
or die("Error: ".mysqli_error($con));

while($row = mysqli_fetch_array($result))
{
$nid = $row['id'];

}

我正在尝试学习准备好的语句,但是从搜索时发现的许多示例中很难理解它的工作原理。我希望,如果我看到一些我熟悉的代码,可以将其重写为一条准备好的语句,它可能会点击我。请不要使用PDO,就我目前的知识水平而言,这太让我感到困惑了。谢谢。


问题答案:

您好ButterDog让我逐步引导您完成PDO。

步骤1)

创建一个名为connect.php的文件(或任何您想要的文件)。每个需要数据库交互的PHP文件中都需要此文件。

让我们开始也请注意我的评论:

?php

//We set up our database configuration
$username="xxxxx"; // Mysql username
$password="xxxxx"; // Mysql password


// Connect to server via PHP Data Object
$dbh = new PDO("mysql:host=xxxxx;dbname=xxxxx", $username, $password); // Construct the PDO variable using $dbh
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // Set attributes for error reporting very IMPORTANT!
$dbh->setAttribute(PDO::ATTR_EMULATE_PREPARES, FALSE); // Set this to false so you can allow the actual PDO driver to do all the work, further adding abstraction to your data interactions.
?>

步骤2)需要connect.php,请看一下:

require ('....../........./...../connect.php'); // Require the connect script that made your PDO variable $dbh

第三步

要开始数据库交互,只需执行以下操作,还请阅读代码注释。目前,我们将不再担心数组!充分利用PDO,然后担心使其更容易使用!通过重复,“漫长的路要走”对代码有了更多的了解。一开始不要走捷径,一旦您了解自己在做什么,就把它们砍掉!

$query = $dbh->prepare("SELECT * FROM note_system WHERE note = :cnote"); // This will call the variable $dbh in the required file setting up your database connection and also preparing the query!

$query->bindParam(':cnote', $cnote); // This is the bread and butter of PDO named binding, this is one of the biggest selling points of PDO! Please remember that now this step will take what ever variable ($cnote) and relate that to (:cnote)

$query->execute(); // This will then take what ever $query is execute aka run a query against the database

$row = $query->fetch(PDO::FETCH_ASSOC); // Use a simple fetch and store the variables in a array

echo $row['yourvalue']; // This will take the variable above (which is a array) and call on 'yourvalue' and then echo it.

多数民众赞成在所有PDO。希望能有所帮助!

也看看这个。那对我有很大帮助!

我有时也将其用作参考-
网站看起来像废话,但那里有关于PDO的质量信息。我也用这个,我发誓这是最后一个链接!因此,在此之后,您只需问任何问题,但希望它可以成为有关PDO的一些参考指南。(希望大声笑)



 类似资料:
  • 我正在使用我生成的一个准备好的语句,但在Java抛出的语句上出现了语法错误。然而,当我将PS的toString复制并粘贴到数据库的phpmyadmin中时,它的执行完美无缺。有什么想法会出错吗,我很难理解? 编辑:更改为PS.ExecuteUpdate(查询);还是不起作用。

  • Python标准库是Python强大的动力所在,我们已经在前文中有所介绍。由于标准库所涉及的应用很广,所以需要学习一定的背景知识。 硬件原理 这一部份需要了解内存,CPU,磁盘存储以及IO的功能和性能,了解计算机工作的流程,了解指令的概念。这些内容基础而重要。 Python标准库的一部份是为了提高系统的性能(比如mmap),所以有必要了解基本的计算机各个组成部分的性能。 操作系统 在了解操作系统时

  • 1. 浏览器选择 所有章节中的例子都基于 Chrome 浏览器环境。 推荐读者也使用 Chrome 进行调试学习,保证所有案例效果统一。 同时 Chrome 也是所有主流浏览器中支持 JavaScript 特性较多的、速度相对较快的浏览器。 获取Chrome浏览器 Chrome 浏览器 2. 开发工具 开发工具一般会分为两种,一种为 IDE (Integrated Development Envi

  • 问题内容: 今天有人告诉我,我确实应该在应用程序中使用PDO和准备好的语句。在我了解好处的同时,我也在努力了解如何将其实现到我的工作流程中。除了它使代码更简洁外,我是否应该有一个特定的数据库类来容纳所有准备好的语句,还是应该在每次运行查询时都创建一个?我发现很难理解何时应使用标准PDO查询以及何时应使用准备好的语句。任何示例,技巧或教程链接将不胜感激。 问题答案: pdo :: prepare()

  • 我有以下数据库模型: 在Spring数据规范中,当B.status为'X'时,我想返回A的实例。JPQL代码如下: 这些是模型类: Spring规范中的JPA标准是什么?