2010-05-05 25 views
17

我嘗試使用以下命令在提示符下創建數據庫文件,但它們都不起作用。在提示符下創建sqlite3數據庫

$ sqlite3 test.db 
sqlite3 test.db 
test.db 

它需要在後面加上一個分號抑或是很難創建一個使用提示SQLITE3數據庫文件?

編輯:

當我開始了sqlite3的提示,我得到

SQLite version 3.6.22 
Enter ".help" for instructions 
Enter SQL statements terminated with a ";" 
sqlite> 

當型 「的sqlite3 test.db的」 我知道,

SQLite version 3.6.22 
Enter ".help" for instructions 
Enter SQL statements terminated with a ";" 
sqlite> sqlite3 test.db 
    ...> 

這裏應該是考驗。數據庫文件在磁盤上?

+0

當你鍵入'sqlite3 test.db'時,它應該在磁盤上創建數據庫,併爲你提供一個REPL環境來直接在數據庫上執行查詢 - 它是否執行任何操作? – 2010-05-05 06:23:49

回答

3

真奇怪,只需鍵入

sqlite3 test.db 

應該建立它爲我的SQLite數據庫,它顯示出任何錯誤?

當使用該命令我得到以下輸出

$ sqlite3 test.db 
SQLite version 3.6.12 
Enter ".help" for instructions 
Enter SQL statements terminated with a ";" 
sqlite> 

這是SQLite的命令行界面

在回答您的編輯,你需要從你的命令行不會打字的sqlite3 test.db的從sqlite提示符中。

當您在命令提示符下鍵入它時,它將在您工作的目錄中創建數據庫並打開sqlite命令提示符。

-1

這聽起來像你的環境變量尚未安裝使用SQLite3。現在我不確定你的操作系統,但是這裏是如何設置它在WinXP下:

- Start -> Right-click 'My Computer' 
- Select 'Properties' 
- Select the 'Advanced' tab 
- Click 'Environment Variables' 
- (Under 'System Variables') Select 'Path' 
- Click 'Edit' 
- (Under 'Variable Value') Go to the end of the line and enter the path to your sqlite3.exe (minus sqlite3.exe) For example: C:\bin\sqlite3\; 

就是這樣!但請記住,「變量值」下的每個路徑都用分號分隔,因此請確保在您的新路徑之前有一個路徑。

11

我認爲這個問題實際上可能是該文件似乎並沒有在磁盤上創建,直到執行諸如CREATE TABLE之類的操作之後。

我的行動:

C:\path\to\sqlite3.exe test.db 
SQLite version 3.7.13 2012-06-11 02:05:22 
Enter ".help" for instructions 
Enter SQL statements terminated with a ";" 
sqlite> .quit 

沒有文件被創建。

然後:

C:\path\to\sqlite3.exe test.db 

SQLite version 3.7.13 2012-06-11 02:05:22 
Enter ".help" for instructions 
Enter SQL statements terminated with a ";" 
sqlite> create table t1(t1key integer); 
sqlite> .quit 

文件顯示出來!

+0

工作........ :) – nobalG 2014-08-07 10:10:47

20

如果你想有一個空白的.db文件只需使用:

touch stuff.db 
5

對於未來的讀者來說,這是SQLite的。組織的網站,併爲我工作:

SQLite version 3.8.5 2014-05-29 12:36:14 
Enter ".help" for usage hints. 
Connected to a transient in-memory database. 
Use ".open FILENAME" to reopen on a persistent database. 
sqlite> .open ex1.db 
sqlite> 

上面的例子導致名爲「ex1.db」被打開和使用,創造,如果它不存在以前的數據庫文件。您可能想要使用完整路徑名來確保該文件位於您認爲其所在的目錄中。使用forward-slashes作爲目錄分隔符。換句話說,使用「c:/work/ex1.db」,而不是「c:\ work \ ex1.db」。

訪問http://www.sqlite.org/cli.html瞭解更多詳情。

1

您可以使用Linux的SQLite數據庫文件:touch db_name.db
如果要執行的命令,例如創建表,你必須打開DATABSE文件
首先使用:.open db_name.db

0

我也觀察到同樣的。 當我輸入sqlite3 test.db時,我輸入sqlite3提示符。 然後使用命令.databases檢查數據庫。 Yahooo!它顯示test.db,並在目錄中顯示test.db文件。

我認爲db文件只有在我們對新的數據庫文件進行任何操作後纔可見。 (不知道)

4

希望這將有助於..

  1. 進入命令提示符
  2. 鍵入cd \(按Enter鍵)
  3. CD源碼(按回車鍵)
  4. sqlite3的mydb.db (按回車鍵)
  5. .databases(按回車鍵)
2

我面臨同樣的問題,然後我是勞以「以管理員身份運行」權限登錄到命令提示符,問題就消失了。 希望這可以幫助別人。

1

你有什麼不正確:

SQLite version 3.6.22 
Enter ".help" for instructions 
Enter SQL statements terminated with a ";" 
sqlite> sqlite3 test.db 
...> 

特別行:sqlite的>的sqlite3 test.db的。它也不符合你的說法:當輸入「sqlite3 test.db」時,我得到

的命令應該如下:

sqlite3 test.db 

這將然後給你以下的輸出:

SQLite version 3.20.0 2017-08-01 13:24:15 
Enter ".help" for usage hints. 
sqlite> 

在此之後,您可以必須鍵入.databases它會顯示你的完整路徑到 您的文件,然後鍵入.quit退出此提示。如果您至少沒有在 處執行.database命令,則不會創建該文件。

該文件將在您輸入 命令的目錄中創建。

這顯然是showns這裏:sqlite tutoriaspoint

希望這有助於。

相關問題