shm*_*613 21 mysql truncate exists
这是更新的问题:
当前查询正在执行以下操作:
$sql1 = "TRUNCATE TABLE fubar";
$sql2 = "CREATE TEMPORARY TABLE IF NOT EXISTS fubar SELECT id, name FROM barfu";
Run Code Online (Sandbox Code Playgroud)
第一次运行包含此方法的方法时,它会在truncate上生成错误消息,因为该表尚不存在.
是我唯一的选择CREATE TABLE,运行TRUNCATE TABLE,然后填写表格?(3个单独的查询)
原来的问题是:
我一直很难在MySql中找出以下内容是否可行,而无需编写块sql:
CREATE TABLE fubar IF NOT EXISTS ELSE TRUNCATE TABLE fubar
Run Code Online (Sandbox Code Playgroud)
如果我在create table之前单独运行truncate,并且该表不存在,那么我会收到一条错误消息.我试图消除该错误消息,而不必添加任何更多的查询.
此代码将使用PHP执行.
mda*_*man 23
shmuel613,最好更新原始问题而不是回复.最好是在一个地方包含完整的问题,而不是在讨论中展开.
本的答案是合理的,除了他似乎有一个'不'他不想要的地方.只有在不存在的情况下才删除表格是不对的.
你确实需要多个陈述.有条件地创建然后填充:
或者只是删除并重新创建
使用纯SQL,这些是您真正的两类解决方案.我更喜欢第二个.
(使用存储过程,您可以将其缩减为单个语句.类似于:TruncateAndPopulate(fubar)但是当您编写TruncateAndPopulate()的代码时,您将花费更多时间而不仅仅使用上面的SQL.)
| 归档时间: |
|
| 查看次数: |
77049 次 |
| 最近记录: |