是否存在我可以利用的现有库/框架,这将允许我从查询结果生成INSERT
mysql脚本。
例如,在HQL中我有:
SELECT book FROM book b WHERE b.created >= :today
而不是List<Book>
,我所拥有的是文本:
INSERT INTO book VALUES (...)
或者无论如何我可以将hibernate实体列表转换为mysql脚本INSERT INTO
脚本。
任何帮助将不胜感激。
谢谢!
答案 0 :(得分:1)
您可以像这样编写SELECT查询:
SELECT 'INSERT INTO book (id, name, isbn) VALUES ('|| b.id ||','|| b.name ||','|| b.isbn ||');' FROM book b;
您需要注意VARCHAR列,因为值需要使用引号进行转义。
答案 1 :(得分:0)
您可以使用mysqldump
:
mysqldump -u username -p dbname book --compact --no-create-info --where="created >= '2014-10-01'" > dump.sql
这将为与WHERE子句INSERT INTO
匹配的表行生成book.created >= '2014-10-01'
语句