java - SQLite 从 Java 执行 .import cmd

标签 java database shell sqlite

我想使用 sqlite3 shell 命令 .import 将制表符分隔的文件加载到我的数据库中。

从shell执行命令没问题!

编写包含该命令的 shell 脚本并从 Java 运行它是没有问题的!

#! /bin/bash
# Script for loading a specific file ($1) into a SQLite DBS table ($2)
{
    sqlite3 database.db -cmd ".mode tab" -cmd ".import $1 $2" -cmd ".quit" &
} 2> /dev/null
exit 0

但是如何直接从 Java 执行该命令? 这是我尝试过的:但不知何故,没有任何内容加载到数据库中

String[] cmd={"sqlite3","database.db -cmd \".mode tab\" -cmd \".import\" "+file.getPath()+" "+table+" -cmd \".quit\""};
Runtime.getRuntime().exec(cmd);

最佳答案

尝试执行用双引号括起来的命令。

sqlite3 database.db ".mode tab" ".import $1 $2"

关于java - SQLite 从 Java 执行 .import cmd,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37969768/

相关文章:

java - 无法运行 java -cp antlr4-4.0.jar org.anlr.v4.Tool

mysql - 如果变量中不存在则删除行

database - Solr最佳实践: All data in Solr or periodically copy to Solr?

mysql - 将 Mysql 表复制到 Oracle 时非法使用 LONG 数据类型

linux - 有没有办法检查 USB 驱动器是否已停止?

java - 在 glassfish 服务器上部署完成的 jsf 应用程序

java - 使用 Log4j SyslogAppender 时定义 PatternLayout 的最佳实践

java - 如何使用 hibernate 保存数组值

bash - 普罗米修斯:zsh:未找到匹配项:server.remoteWrite[0].url

shell - 有 Golang 终端 shell 吗?编译语言有可能吗?