我正在查找(或系列)来截断我的模式(有几百个表格)中的所有表格,除了4个特定的表格。我该怎么做呢?谢谢!有没有办法在MySQL模式中截断大多数表?
1
A
回答
1
我相信你必须用最喜欢的语言写一个脚本。您可以从information_schema db中获取模式中的表的列表,然后对它们进行迭代,截断任何您感觉的内容。
查询会是这样的:
SELECT table_name FROM information_schema.tables WHERE table_schema = 'test' AND table_name NOT IN ('table1', 'table2');
编辑:下面是一个使用Perl的一个例子:
use strict;
use warnings;
use DBI;
my $dbh = DBI->connect("some_dsn");
my $sth = $dbh->prepare(q{SELECT table_name FROM information_schema.tables WHERE table_schema = 'test' AND table_name NOT IN ('table1', 'table2')});
$sth->execute();
$sth->bind_columns(\my $table_name);
while($sth->fetch) { $dbh->do(q{TRUNCATE TABLE } . $table_name) }
0
另一种方法可能是你复制这四个表中的一个新的架构,然后删除原始数据库模式。
0
* nix中的一行:
for i in `mysql -e "show tables MY_DB" | grep -vE "(table1|table2)"`; do mysql -e"TRUNCATE ${i}" MY_DB; done
相关问题
- 1. 有没有办法检查截断表?
- 2. 有没有办法在jQuery中截断元素的文本?
- 3. 有没有办法在Javascript中截断科学记数法数字?
- 4. 有没有办法截断(隐藏)宽表格?
- 5. 有没有办法让网页以100%的宽度截断?
- 6. 有没有办法搜索mySQL数据库中的所有表?
- 7. 有没有办法用一个“模式”
- 8. [PHP/MySQL]:有没有办法在MySQL表格中以RTF格式存储文本?
- 9. 有没有办法检查列表中的某个模式?
- 10. 有没有办法使用MySQL Workbench建模表继承?
- 11. 有没有办法通过API截断getstream应用程序的数据?
- 12. 有没有办法从XML模式中移除幻数?
- 13. 有没有办法在一次与MySQL的通话中从大量的一对多表中提取数据?
- 14. 有没有办法确定java中有多大的对象?
- 15. 有没有办法在mysql表中编写文档?
- 16. 有没有办法在mysql中输入每个表的描述?
- 17. 有没有办法在MySQL中没有锁定?
- 18. 有没有办法在Frege中启用n + k模式?
- 19. 有没有办法让ArrowAssoc在模式匹配中工作?
- 20. 有没有办法在F#中封装一个模式?
- 21. mySQL:截断所有表的命令
- 22. shell脚本截断所有MySql表
- 23. 有没有办法从Draft-4 JSON模式生成HTML表单?
- 24. 有没有办法将BigQuery表格的模式导出为JSON?
- 25. 有没有办法计算TestNG中断言的数量?
- 26. 有没有办法在MySQL的第二列上模拟auto_increment?
- 27. 有没有办法将模型导出到mysql workbench中的csv?
- 28. 有没有办法在Sails中同时查询多个表?
- 29. 有没有办法按时间表恢复MySQL数据库
- 30. 使用截断表,没有结果
有趣。但是,我究竟如何迭代它们呢? – Monster 2009-06-01 15:41:25