我正在查找(或系列)来截断我的模式(有几百个表格)中的所有表格,除了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. 有没有办法在XML模式中重复使用断言?
- 3. 有没有办法在jQuery中截断元素的文本?
- 4. 有没有办法在Javascript中截断科学记数法数字?
- 5. 有没有办法截断(隐藏)宽表格?
- 6. 有没有办法访问截断(未显示)的文字?
- 7. 有没有办法用PIL读取截断的gif?
- 8. 有没有办法截断打开的文件流?
- 9. 有没有办法让网页以100%的宽度截断?
- 10. 有没有办法在mysql数据库中创建链接表?
- 11. 有没有办法搜索mySQL数据库中的所有表?
- 12. 有没有办法用一个“模式”
- 13. 有没有办法拦截`document.write`?
- 14. [PHP/MySQL]:有没有办法在MySQL表格中以RTF格式存储文本?
- 15. 有没有办法检查列表中的某个模式?
- 16. 在PostgreSQL中截断模式中的所有表
- 17. 有没有办法在MySql中模拟GROUP BY WITH CUBE?
- 18. 有没有办法使用MySQL Workbench建模表继承?
- 19. 有没有办法通过API截断getstream应用程序的数据?
- 20. 有没有办法从XML模式中移除幻数?
- 21. 在DB2中的模式下截断所有表格
- 22. 有没有办法在一次与MySQL的通话中从大量的一对多表中提取数据?
- 23. 有没有办法拦截木偶路线和模型提取?
- 24. 有没有办法确定java中有多大的对象?
- 25. 有没有办法在最大为
- 26. 有没有办法避免在很多文件中实例化大量模板?
- 27. PHP中没有截断函数 - 选项?
- 28. 有没有办法在mysql表中编写文档?
- 29. 有没有办法使用CSS或JS截断中间的字符串?
- 30. 有没有办法在MySQL中没有锁定?
有趣。但是,我究竟如何迭代它们呢? – Monster 2009-06-01 15:41:25