测试DuckDB-rs项目中的示例程序

下载最新源代码
进入解压后的目录,执行运行命令,结果链接出错,没有找到duckdb库

:/par/duckdb-rs-main# cargo run --example basic

  = note: mold: fatal: library not found: duckdb
          collect2: error: ld returned 1 exit status

下载最新duckdb动态库https://github.com/duckdb/duckdb/releases/download/v1.4.0/libduckdb-linux-amd64.zip
解压缩到/par/libduckdb目录,然后将其添加到LIBRARY_PATH, 重新运行示例即可。

export LIBRARY_PATH=$LIBRARY_PATH:/par/libduckdb
/par/duckdb-rs-main# export LD_LIBRARY_PATH=$LIBRARY_PATH
/par/duckdb-rs-main# cargo run --example basic --release

    Finished `release` profile [optimized] target(s) in 56.46s
     Running `target/release/examples/basic`
Found person Person { _id: 1, name: "Steven", data: None }
+----+--------+------+
| id | name   | data |
+----+--------+------+
| 1  | Steven |      |
+----+--------+------+

还有其他几个示例,repl是一个CLI工具,hello-ext是一个插件

/par/duckdb-rs-main# cargo run --example hello-ext --release
error: example target `hello-ext` is a library and cannot be executed
/par/duckdb-rs-main# cargo run --example repl --release
   Compiling libduckdb-sys v1.4.0 (/par/duckdb-rs-main/crates/libduckdb-sys)
   Compiling duckdb v1.4.0 (/par/duckdb-rs-main/crates/duckdb)
    Finished `release` profile [optimized] target(s) in 9.22s
     Running `target/release/examples/repl`
duckdb-rs v1.4.0 🦀
Type '.help' for help.
> create table t(i int,a varchar);
> insert into t values(1,'a');
> from t;
+-------+------+
| i     | a    |
| Int32 | Utf8 |
+-------+------+
| 1     | a    |
+-------+------+
>

appender 示例原来是往内存表插入,把它改成实体表,可以从repl中读取。

/par/duckdb-rs-main# cargo run --example appender --release
   Compiling duckdb v1.4.0 (/par/duckdb-rs-main/crates/duckdb)
    Finished `release` profile [optimized] target(s) in 6.11s
     Running `target/release/examples/appender`
/par/duckdb-rs-main# cargo run --example repl --release
   Compiling duckdb v1.4.0 (/par/duckdb-rs-main/crates/duckdb)
    Finished `release` profile [optimized] target(s) in 6.66s
     Running `target/release/examples/repl`
duckdb-rs v1.4.0 🦀
Type '.help' for help.
> attach '10m.db' as db10m;
> use db10m;
> show tables;
+------+
| name |
| Utf8 |
+------+
| test |
+------+
> select count(*) from test;
+--------------+
| count_star() |
| Int64        |
+--------------+
| 10000000     |
+--------------+
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值