sqlite3 path\test.db^
-cmd "DELETE FROM sales;"^
-cmd ".mode csv"^
-cmd "CREATE TABLE sales_tmp (col1, col2);"^
-cmd ".import 'path2\sales.csv' 'sales_tmp'"^
-cmd "INSERT INTO sales SELECT * FROM sales_tmp;"^
-cmd "DROP TABLE IF EXISTS sales_tmp;"^
-cmd "vacuum;"^
""
-cmd COMMAND
будет запускаться COMMAND
перед чтением стандартного ввода.
^
в конце строки является символом продолжения, поэтому можно избежать длинной командной строки.
Вам необходимо создать таблицу sales_tmp
перед импортом данных, поэтому я добавил оператор создания таблицы.При необходимости измените имена столбцов.
""
в конце - это оператор sql, который, если он пуст, позволяет sqlite3
выйти.Если аргумент пропущен, он переходит в интерактивный режим.
Для справки командной строки с sqlite3
введите sqlite3 --help
в приглашении cmd
.
Для интерактивной справки с sqlite3
, введите .help
в интерактивной подсказке sqlite3
.