gpt4 book ai didi

mysql - TRUNCATE table 仅当它存在时(以避免错误)

转载 作者:可可西里 更新时间:2023-11-01 06:52:25 25 4
gpt4 key购买 nike

我有一个 .sql 文件,它在导出前清除 mysql 模式中的缓存数据,因为当我将导出文件导入到不同的服务器时,这些表中的缓存数据是无用的。我在多个站点上使用此脚本,但在某些情况下某些表不存在,因为它们不是必需的。如果只存在该表,如何只截断 MySQL 中的表?

TRUNCATE accesslog;
TRUNCATE cache;
TRUNCATE cache_block;
TRUNCATE cache_bootstrap;
TRUNCATE cache_customfilter;
TRUNCATE cache_field;
TRUNCATE cache_filter;
TRUNCATE cache_form;
TRUNCATE cache_image;
TRUNCATE cache_menu;
TRUNCATE cache_metatag;
TRUNCATE cache_page;
TRUNCATE cache_path;
TRUNCATE cache_token;
TRUNCATE cache_update;
TRUNCATE cache_views;
TRUNCATE cache_views_data;
TRUNCATE watchdog;

提前致谢。

最佳答案

See this answer on Using the IF Statement to do a conditional insert:

你能用 ANSI INFORMATION_SCHEMA 做同样的事情吗

IF EXISTS (SELECT 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 'accesslog')
TRUNCATE accesslog

关于mysql - TRUNCATE table 仅当它存在时(以避免错误),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25394493/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com