如何使用 PDO 在一个数据库行程中插入多条记录?

2023-11-26

我有一张桌子叫propAmenities其中包含两列amenity_id and property_id基本上该表保存外键。

现在我必须使用以下语句的命名占位符生成 PDO 查询。

INSERT INTO propAmenities (amenity_id, property_id) VALUES (1, 1), (2, 1), (3, 1)

我尝试使用以下语法,但我不确定这是否有效。

$sth->$this->dbh->prepare('INSERT INTO 
                           propAmenities 
                           (amenity_id, property_id) 
                           VALUES 
                           (:amenity_id, :property_id), 
                           (:amenity_id, :property_id), 
                           (:amenity_id, :property_id)');

对于上面的查询,我不确定如何使用 PDO 的 bindParam() ?我该如何使用 PDO 处理这种情况?我是否使用了错误的 PDO 占位符?


您可以为占位符指定任何您想要的名称,因此您的 SQL 如下所示:

INSERT INTO propAmenities 
(amenity_id, property_id) 
VALUES 
(:amenity_id1, :property_id1), 
(:amenity_id2, :property_id2), 
(:amenity_id3, :property_id3)

进而:

$stmt->bindParam(':amenity_id1',  1);
$stmt->bindParam(':property_id1', 1);
$stmt->bindParam(':amenity_id2',  2);
$stmt->bindParam(':property_id2', 1);
$stmt->bindParam(':amenity_id3',  3);
$stmt->bindParam(':property_id3', 1);

或者,当然,构建适当的数组execute。在这种情况下,未命名的占位符可能更容易使用:

INSERT INTO propAmenities 
(amenity_id, property_id) 
VALUES 
(?, ?),
(?, ?),
(?, ?)

然后你可以循环你的值并调用execute使用适当的数组:

$stmt->execute(array(1, 1, 2, 1, 3, 1));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 PDO 在一个数据库行程中插入多条记录? 的相关文章

  • Hibernate 对集合的查询过滤器

    我想执行以下查询 from Item i where i categoryItems catalogId catId 然而 这会产生以下异常 非法尝试取消引用集合 所以我用谷歌搜索 找到了这个 Hibernate 论坛帖子https for
  • 如何使用 Facebook SDK API 为页面/网址“点赞”?

    我正在使用这段代码 facebook gt api me likes post array url gt http www google com 我收到以下错误 Fatal error Uncaught OAuthException 200
  • 当sql连接中存在两个同名列时,如何从一个表列中获取值

    当我连接两个具有相同名称列的表时 我目前面临着尝试获取值的问题 例如 table1 date和table2 date 每个表中的日期不同 我将如何获取 日期 本例中的表1 我目前正在跑步 while row mysqliquery gt f
  • MySQL Connector/C++ 库链接错误问题

    PROBLEM 好吧 我一直在尝试遵循 MySQL Forge Wiki 和其他一些网站上的示例代码 这些网站提供了有关如何获得简单数据库连接的教程 但由于某种原因 我的项目总是因链接错误而失败 我可以我自己不明白为什么或如何解决它 我仍在
  • 如何在类似 MVC 的页面中加载基于漂亮 URL 的类?

    我想请教一些关于如何解决这个问题的提示 我正在尝试构建自己的 MVC 网站 我了解了 URL 的基础知识 http example com blog cosplay cosplayer expo today 博客 gt 控制器cosplay
  • 如何使用 Twig 的属性函数访问嵌套对象属性

    我试图使用一个树枝变量来访问另一个树枝变量的属性 直到我找到 属性 函数为止 该变量才起作用 除了需要访问嵌套属性的情况外 效果很好 当包含属性的变量实际上是对象 属性时 它不起作用 例如 attribute object1 variabl
  • MySQL 使用 ALTER IGNORE TABLE 出现重复错误

    我的 MySQL 中有一个有重复项的表 我尝试删除重复项并保留一项 我没有主键 我可以通过以下方式找到重复项 select user id server id count as NumDuplicates from user server
  • 语法错误,第 288 行出现意外的“endif”(T_ENDIF)[关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我一直在离线处理我的 WordPress 网站的此代码错误 解析错误 语法错误 homez 541 photoher marie
  • 为什么我的 if 语句没有按我预期的方式工作?

    我正在尝试实现以下目标 我向我的 SQL 数据库询问使用SELECT FROM subjects 这样做之后我要求使用数组mysqli fetch assoc 在那之前一切都很好 现在的问题是 当我尝试在每个循环中修改 genero 的值
  • 无法通过套接字“/var/lib/mysql/mysql.sock”连接到本地 MySQL 服务器 (2)

    当我尝试连接 mysql 时出现以下错误 Can t connect to local MySQL server through socket var lib mysql mysql sock 2 这个错误有解决办法吗 其背后的原因可能是什
  • 强制 Composer 下载 git repo 而不是 zip

    我对作曲家有一些问题 require php gt 5 3 2 kriswallsmith buzz 0 7 Repo https github com kriswallsmith Buzz tree v0 7 https github c
  • apache_request_headers() 与 $_SERVER

    据我所知 apache request headers 提供与以下相同的信息 SERVER 但按键略有不同 为什么有人应该使用apache request headers 而不仅仅是从那里获取这些信息 SERVER 我在 Centos 上使
  • 自动建议 php 的 ajax

    我有一个 html 表单 php 脚本和 jquery 我需要一个 ajax 代码来从我的 php 脚本中进行自动建议 以下是代码 表单 html
  • Mysql 中 UNION 子句的替代方案

    我有两张桌子 表 a 表 b table a ID 1 2 3 4 5 7 table b ID 2 3 4 5 6 我必须得到这样的输出而无需UNION命令 ID 1 2 3 4 5 6 7 注意 我有一个联合解决方案 select fr
  • suhosin.mt_srand.ignore 在 PHP 中一致洗牌数组的解决方法?

    我有一个 PHP 脚本 需要随机化一个具有一致结果的数组 这样它就可以向用户呈现前几个项目 然后如果他们愿意 他们可以从同一个打乱的集合中提取更多结果 我目前使用的是这个 基于我相信的 Fisher Yates 算法 function sh
  • 在 MySQL 中使用 COUNT 时如何返回 0 而不是 null

    我使用此查询返回存储在 sTable 中的歌曲列表以及存储在 sTable2 中的总项目数 SQL queries Get data to display sQuery SELECT SQL CALC FOUND ROWS str repl
  • Laravel leftJoin 仅右表的最后一条记录

    我是 Laravel 的新手 我有两张桌子 1 产品 2 价格 products id product int p key name varchar prices id price int p key id product int
  • MySQL 按重复项从上到下排序

    我有一个lammer问题 因为我不是mysql专业人士 我有类似的字段 id color 1 red 2 green 3 yellow 4 green 5 green 6 red 我想按重复项进行分组 最常见的重复项先进行分组 所以应该这样
  • 检查 $_POST 数据

    我正在对表单进行一些垃圾邮件检查 下面的代码在我的本地主机上正常工作 如果为 true 则重定向到 google com 但是 当它在生产服务器上时却不起作用 执行脚本的其余部分并且不重定向到 Google com if POST SERV
  • 如何在laravel中注册后自动登录

    我在 laravel 中注册用户时遇到问题 user假设是包含所有数组元素的数组 同时自动登录以下代码结果false 数据库中保存的密码是hash make password user id this gt user model gt ad

随机推荐

  • 在 iPhone Simulator 4.3/XCode 4.2 和 4.0.2 中使用 Blocks 会导致应用程序崩溃

    还有其他人在 XCode 4 2 lion 或 4 0 2 中使用 4 3 iPhone 模拟器时遇到问题吗 我的代码已经长期运行 测试并在生产中使用块来指定完成操作 例如 我使用 UIView animate 淡出标签顶部的一些文本 如下
  • 关于如何在 python 中使用属性功能的真实示例?

    我对如何使用感兴趣 property在Python中 我已经阅读了 python 文档 在我看来 其中的示例只是一个玩具代码 class C object def init self self x None property def x s
  • int.from_bytes() 是如何计算的?

    我试图理解什么from bytes 事实上确实如此 The 文档提到了这一点 byteorder 参数确定用于表示整数的字节顺序 如果字节顺序为 big 则最高有效字节位于字节数组的开头 如果字节顺序为 little 则最高有效字节位于字节
  • 使用 TypeScript 样式化组件的 'css' 属性

    styled components有一个插件可以实现以下功能 div props theme colors text gt 有什么办法可以告诉 TypeScriptcss是所有元素上的有效属性吗 将以下行添加到项目内的 TypeScript
  • .Net Core中间件-从请求中获取表单数据

    在 NET Core Web 应用程序中 我使用中间件 app UseMyMiddleware 在每个请求上添加一些日志记录 public void Configure IApplicationBuilder app IHostingEnv
  • 单击单元格外部后如何退出文本框

    我意外地在网上找到了这段代码 它解决了我的大部分问题 但是我想在这段代码中添加一件事 但我不知道我的问题是什么 如何在用户后退出文本框双击它还是在用户完成编辑之后
  • android edittext onchange监听器

    我知道一点点TextWatcher但这会触发您输入的每个角色 我想要一个在用户完成编辑时触发的侦听器 是否可以 也在TextWatcher我得到一个实例Editable但我需要一个实例EditText 我怎样才能得到它 EDIT 首先 您可
  • 如何打开以 JDesktopPane 为中心的 JInternalFrame?

    我正在添加一堆JInternalFrame变成一个JDesktopPane 当用户选择通过菜单打开各种功能时 但我希望内部框架在桌面窗格的中心打开 而不是在左上角 它们似乎是默认的 如何指定 JInternalFrames 居中打开 或打开
  • 如何拉伸图像以填充此 WPF / XAML 应用程序?

    当我的程序显示小于 XAML 中定义的图像 GUI 对象的图像时 它不会像我希望的那样拉伸以适合 例如 256x256 图像仅占据 512x512 图像 GUI 对象的左上象限 我很困惑 因为我在 XAML 代码中设置了 Stretch F
  • Flutter 中的 StreamBuilder 陷入 ConnectionState.waiting 并仅显示加载标记

    您好 我正在尝试将 Firebase 文档内的数据动态显示到我的 Flutter 中 并使用循环进行渲染 所以我做了一个List
  • cPickle - 对同一对象进行酸洗的不同结果

    有谁能解释一下下面的评论吗testLookups 在这个代码片段 我已经运行了代码 确实评论所说的是真的 不过我想了解为什么这是真的 即为什么 cPickle 根据引用方式为同一对象输出不同的值 它与引用计数有什么关系吗 如果是这样 这不是
  • C# 无法使用类型约束推断泛型类型参数,是否有解决方法?

    埃里克 利珀特 Eric Lippert 在他的博客文章中解释道 http blogs msdn com b ericlippert archive 2009 12 10 constraints are not part of the si
  • 删除/移动 Google Chrome 左下角状态栏(链接地址栏)

    我正在开发一个网站 其设计的左下角有一个关键的导航元素 在 Google Chrome 中 左下角有一个状态栏 当您将鼠标悬停在页面上的链接上时 会出现该状态栏并显示该页面的 URL 不过 如果你足够接近 它会移动到右下角 这妨碍了该导航元
  • 为什么Java 2D原点位于左上角?

    我不是抱怨 只是好奇 为什么Java使用绘图表面的左上角作为原点 我认为更自然的是选择左下角作为原点并随着它们向上和向右增加轴 类似于石英 自古以来 计算机图形学就起源于左上角 其中包括 QuickDraw 使用左下角 如在数学中 是 Po
  • 从 float 转换为 QByteArray

    有没有一种快速方法可以将浮点值转换为字节形式 十六进制 表示形式QByteArray 做过类似的事情memcpy 在使用数组之前 但这似乎不太适用QByteArray 例如 memcpy byteArrayData floatData si
  • 如何找到数组的维数?

    下面是一段代码 我需要通过遍历传递的消息来存储有关警告消息的一些信息 传递的参数本身是一个变体 由 API 调用设置SAPListOfMessages它返回一个数组String 然而我注意到 每当有超过 1 个警告时 列表都是二维的 mes
  • jQuery mobile:在 ListView 中启用自动换行

    我有一个列表视图 见下图 我想将所有内容自动换行 而不是添加 到长行 这是怎么做到的 您只需要更新 CSS ui li desc保存列表项中文本的元素 ui page ui content ui listview ui li desc wh
  • QtService 应用程序作为服务运行时无法连接到系统总线

    我已经重新编译了Qt与集成的dbus对于窗户 此外 我还实施了QtService应用程序在系统总线上注册服务和对象 如下所示 QDBusConnection systemBus registerService com mycompany C
  • 从 R 中的许多列中减去数据框中的一列

    我有一个数据框 我想从所有其他列中减去第二列 我可以循环执行此操作 但我想在一次调用中执行此操作 这是我的工作循环代码 df lt data frame x 100 101 y 2 3 z 3 4 a 1 0 b 4 5 for i in
  • 如何使用 PDO 在一个数据库行程中插入多条记录?

    我有一张桌子叫propAmenities其中包含两列amenity id and property id基本上该表保存外键 现在我必须使用以下语句的命名占位符生成 PDO 查询 INSERT INTO propAmenities ameni