我在讨论是否尝试运行表列表并使用存储过程截断它们。使用MySql会如此简单吗?我该怎么做?
答案 0 :(得分:1)
您需要的主要信息是表格列表。大多数平台都支持这一点:
select table_name from information_schema.tables
但是,在编写sproc代码之前,请先从information_schema.tables中选择*并检查条目,可能会有一些你不期望的 - 系统表等,所以你可能需要设计一个过滤器来获取设定你想要的。
由于我没有那么多我的SQL,我无法向您展示代码,但如果您可以从MS SQL中翻译它,并填写一些空白,您可以使它工作:
declare @table_name varchar(200)
while 1=1 begin
select top 1 @table_name = table_name
from information_schema.tables
where ....possible filter...
if @table_name is null break
-- for this line you may need dynamic sql
truncate table @table_name
end