Bạn có thể sử dụng .output
hoặc .once
lệnh dấu chấm để lưu kết quả truy vấn của bạn vào tệp văn bản khi sử dụng SQLite CLI.
Lệnh .once
Nếu bạn chỉ muốn lưu một truy vấn vào một tệp, hãy sử dụng .once
lệnh.
.once
lệnh chỉ định rằng truy vấn tiếp theo sẽ được gửi đến tệp được chỉ định. Bất kỳ truy vấn nào khác sẽ trở lại đầu ra tiêu chuẩn (bảng điều khiển).
.headers on
.mode column
.once query_results.txt
SELECT * FROM Products;
Đoạn mã trên xuất kết quả thành tệp văn bản có tên query_results.txt trong thư mục hiện tại. Sử dụng đường dẫn đầy đủ nếu bạn cần chỉ định một thư mục khác.
Trong trường hợp này, tôi cũng đã bật tiêu đề cột và đặt chế độ thành “cột”.
Đây là nội dung của tệp văn bản:
ProductId ProductName Price
---------- ------------- ----------
1 Widget Holder 139.5
2 Widget Opener 89.7
3 Bob's "Best" 374.2
4 Blue Widget 63.0
Thực tế là tôi đã sử dụng .once
có nghĩa là bất kỳ truy vấn nào khác sẽ được xuất ra bảng điều khiển.
Nếu bạn cần lưu tất cả các truy vấn khác vào tệp văn bản, hãy sử dụng .output
.
Lệnh .output
.output
lệnh chỉ định rằng tất cả các đầu ra tiếp theo sẽ được gửi đến tệp được chỉ định.
Mọi kết quả truy vấn tiếp theo sẽ được thêm vào nội dung hiện có.
Lấy ví dụ mã sau:
.output query_results2.txt
SELECT * FROM Products;
SELECT * FROM Products LIMIT 2;
Trong trường hợp này, tôi đã chạy hai truy vấn.
Đây là những gì tệp văn bản kết quả chứa:
ProductId ProductName Price
---------- ------------- ----------
1 Widget Holder 139.5
2 Widget Opener 89.7
3 Bob's "Best" 374.2
4 Blue Widget 63.0
ProductId ProductName Price
---------- ------------- ----------
1 Widget Holder 139.5
2 Widget Opener 89.7
Vì vậy, nó đã bao gồm các kết quả từ cả hai truy vấn. Chúng ta có thể thấy rằng truy vấn thứ hai đã được thêm vào.
Lưu ý rằng tôi không cần chỉ định .headers on
hoặc .mode column
trong ví dụ này vì tôi đã chỉ định điều đó trong ví dụ trước của mình. Các cài đặt đó vẫn còn trong phiên hiện tại cho đến khi chúng được thay đổi rõ ràng.
Đặt lại đầu ra cho màn hình
Bạn có thể sử dụng lệnh sau để hoàn nguyên đầu ra về đầu ra chuẩn (bảng điều khiển):
.output stdout
Ngoài ra, bạn có thể đơn giản bỏ qua bất kỳ đối số nào:
.output
Tự động mở tệp văn bản
Bạn có thể sử dụng .system
lệnh để mở tệp văn bản của bạn. Cú pháp chính xác mà bạn sử dụng sẽ tùy thuộc vào hệ thống của bạn.
Đây là cách mở tệp trước đó trên máy Mac:
.system open query_results2.txt
Điều này giả sử bạn đang ở trong cùng một thư mục với tệp. Nếu không, bạn sẽ cần sử dụng đường dẫn đầy đủ.
Thao tác này sẽ mở tệp trong ứng dụng mặc định của hệ thống để mở tệp văn bản.
Trên hệ thống Windows, mã của bạn có thể trông giống như sau:
.system c:/data/query_results2.txt
Trên Linux / Unix:
.system xdg-open query_results2.txt