duckdb批量生成sql

duckdb批量生成并录入sql到数据库

需求,

将某个目录下sql,通过psql全部录入到数据库中

1. 创建一个ll.sh内容如下,并赋予执行权限:

#!/bin/sh
ls -l $1 |awk -F ' ' '{print $9}'

2. 将duckdb以及shellfs扩展安装上(如果没有联网,可以在联网的机器上下载duckdb并install shellfs from community后,将duckdb和.duckdb文件夹一并拷贝上去,相当于绿色安装)

3. 启动duckdb,并加载shellfs

4.  执行如下sql

copy (select 'psql -d dbname -f '||name from read_csv('./ll.sh softmedia |')  as t(name)) to batchsql.sql(format csv,header false);

5. 如果想使用多个sql文件并行执行可以分部分的sql 进行存储如:

a. 先查询记录数量:

 select count(*) from read_csv('./ll.sh softmedia |') ;
┌──────────────┐
│ count_star() │
│    int64     │
├──────────────┤
│      26      │
└──────────────┘

b. 分别每10个文件一个形成一个sql文件

copy (select 'ps
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值