Saya memulai sqlite3 versi 3.7.7, unix 11.4.2 menggunakan perintah ini:
sqlite3 auction.db
dimana auction.db belum dibuat.
sqlite> auction.db < create.sql;
beri saya kesalahan ini: near "auction": syntax error
Bagaimana cara menjalankan skrip?
.read
perintah langsung darisqlite3
perintah:sqlite3 autction.db '.read create.sql'
.Anda ingin memasukkan
create.sql
ke dalamsqlite3
dari shell, bukan dari dalam SQLite itu sendiri:Versi SQLite dari SQL tidak memahami
<
file, shell Anda mengerti .sumber
<
pengalihan input. (Misalnya, PowerShell.)<
akan segera keluar dari prompt SQLite dan mengembalikan kode kesalahan ke shell..read file.sql
akan meninggalkan prompt dan-init file.sql
akan selalu mengembalikan 0, jadi<
yang terbaik untuk scripting. Juga lintas platform tidak seperti.read
yang tidak mendukung jalur Windows.Untuk menjalankan kueri sederhana dan kembali ke skrip shell saya, saya pikir ini berfungsi dengan baik:
$ sqlite3 example.db 'SELECT * FROM some_table;'
sumber
sqlite3 example.db 'SELECT * FROM some_table;'
, daripadasqlite3
membaca perintah untuk dieksekusi tidak hanya daristdin
, tetapi juga dari argumen terakhir.Bagi mereka yang menggunakan PowerShell
sumber
Jika Anda menggunakan CMD windows, Anda dapat menggunakan perintah ini untuk membuat database menggunakan sqlite3
Jika Anda tidak memiliki database dengan nama itu sqlite3 akan membuatnya, dan jika Anda sudah memilikinya, itu akan tetap berjalan tetapi dengan kesalahan "TABLENAME sudah ada", saya pikir Anda juga dapat menggunakan perintah ini untuk mengubah yang sudah ada database (tapi saya tidak yakin)
sumber