我有一个SQL查询:SQL查询的输出写入文件
SELECT 'DROP TABLE ' || tablename
FROM pg_catalog.pg_tables where tablename like 'r_395%';
,其输出是这样的:
?column?
--------------------
DROP TABLE r_395_0
DROP TABLE r_395_1
DROP TABLE r_395_2
DROP TABLE r_395_3
DROP TABLE r_395_4
DROP TABLE r_395_5
DROP TABLE r_395_6
DROP TABLE r_395_7
DROP TABLE r_395_8
DROP TABLE r_395_9
(10 rows)
我使用实体管理器执行这个查询:
StringBuffer query = new StringBuffer();
query.append("SELECT 'DROP TABLE ' || tablename
FROM pg_catalog.pg_tables where tablename like 'r_395%'");
entityManager.createNativeQuery(query.toString()).executeUpdate();
我想写这个输出到一个文件。如果它仅仅是一个文本文件,我会使用文件写入器和缓冲写入器。但现在它是一个SQL生成的文件,我有点困惑。有没有办法在Java中实现这一点?
数据的源是不重要的。听起来像输出文件的确是一个文本文件。 – trojanfoe
是的,trojanfoe是对的。你只需要将你的数据写入一个文本文件。 –