2011-10-09 22 views
14

Tôi là một rails mới hơn và SQLite.sqlite3 - cách liệt kê tên cơ sở dữ liệu bằng lệnh .databases?

Đây là kịch bản của tôi: Tôi đã cài đặt sqlite3 trên máy tính Windows Vista của mình. Mã ứng dụng blog cũng đã được triển khai tại c:\rails\blog. Tôi đưa ra dấu nhắc lệnh của tôi và đi trực tiếp đến c:\rails\blog\db. Tôi chạy lệnh sqlite3 để vào bảng điều khiển cơ sở dữ liệu. khi tôi sử dụng lệnh .databases, không có cơ sở dữ liệu nào được liệt kê? Tại sao? Tôi đã làm gì sai?

Trả lời

17

Bạn có lẽ không mở cơ sở dữ liệu riêng của mình

sqlite3 database.db 

Hãy nhớ rằng, rằng trong SQLite một cơ sở dữ liệu chỉ là một tập tin. Miễn là bạn không mở hoặc attach một, không có mở. Mặt khác khi bạn chỉ cần mở cơ sở dữ liệu .databases cảm thấy một loại vô dụng, bởi vì bạn biết cái nào bạn vừa mở.

17

Bạn phải cung cấp cơ sở dữ liệu (đường dẫn và) tên cho lệnh sqlite3, ví dụ:

Dev e$ sqlite3 my_test.db 
SQLite version 3.7.7 2011-06-23 19:49:22 
Enter ".help" for instructions 
Enter SQL statements terminated with a ";" 
sqlite> .databases 
seq name    file              
--- --------------- ---------------------------------------------------------- 
0 main    /Users/e/Dev/my_test.db         
sqlite> 
1

Khi bạn chạy sqlite3 không có tham số, cơ sở dữ liệu tạm thời được tạo, sẽ bị hủy ngay khi chương trình thoát. Đây là những gì bạn đã làm.

Để truy cập cơ sở dữ liệu, bạn cần chỉ định tên của tệp chứa cơ sở dữ liệu.

$ sqlite3 my.db 
Các vấn đề liên quan