使用flyway迁移脚本时如何从文件中填写表格
Posted
技术标签:
【中文标题】使用flyway迁移脚本时如何从文件中填写表格【英文标题】:How can I fill in a table from a file when using flyway migration scripts 【发布时间】:2021-11-20 11:23:56 【问题描述】:我有脚本
/*The extension is used to generate UUID*/
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
-- auto-generated definition
create table users
(
id uuid not null DEFAULT uuid_generate_v4 ()
constraint profile_pkey
primary key,
em varchar(255),
user varchar(255)
);
在 IDE Intellij Idea(带有 Spring Boot 的项目)中:
src/main/resources/db-migration src/main/resources/sql_scripts: 复制.sql 用户.txt我现在只是尝试运行一个简单的 Sql 命令以查看一切是否正常
copy.sqlCOPY profile FROM '/sql_scripts/user.txt'
USING DELIMITERS ',' WITH NULL AS '\null';
user.txt
'm@mai.com', 'sara'
's@yandex.ru', 'jacobs'
但是当我运行复制命令时,我得到一个错误
错误:无法打开文件...
也许谁知道它应该如何工作以及需要修复什么?
【问题讨论】:
【参考方案1】:很有可能它是一个路径问题;你可以试试,而不是
COPY profile FROM '/sql_scripts/user.txt'
在做
COPY profile FROM './sql_scripts/user.txt'
(或绝对路径)
【讨论】:
我有错误:错误:无法打开文件“./sql_scripts/user.txt”进行阅读:没有这样的文件或.... ...当准备从底层操作系统复制文件时,请记住指定的文件必须可由 postmaster 进程(即运行 PostgreSQL 的用户)读取,因为后端直接读取文件。此外,文件名必须提供绝对路径;尝试使用相对路径将导致错误...以上是关于使用flyway迁移脚本时如何从文件中填写表格的主要内容,如果未能解决你的问题,请参考以下文章