今天研究學習SQLite,剛開始創建數據庫,就遇到了一個坑,是自己粗心了,特記錄一下。
實驗環境:
OS:Ubuntu18.04
創建數據庫名稱:test.db
實驗步驟:
1.檢查是否已經安裝了SQLite
進入命令行,切換到准備建立數據庫的文件夾,輸入SQLite3
顯示已經安裝了SQLite
2、創建數據庫
看網上資料,創建數據庫,SQLite3 databaseName
輸入SQLite3 test.db
報錯,錯誤信息:Error: near "sqlite3":syntax error
查網上資料,都是說的是這個指令:sqlite3 databasename
3.在一台Windonws的電腦上,下載安裝了Sqlite,配置好環境變量,進入命令行,輸入SQLite3,順利進入,再輸入sqlite3 test.db,仍然報這錯誤信息。
后來退出sqllite,直接在命令行輸入sqlite3 test.db,成功了,並且進入了sqlite>,創建表,插入輸入,退出后,查看文件夾下,已經有了test.db這個文件
上面是未創建數據庫前的查詢
退出SQLite,直接在命令行輸入:sqlite3 test.db,成功
查詢文件夾下,已經有了test.db這個文件夾
4.參照下圖,進入SQLite后,輸入.open fileName這個方式,也可以創建數據庫,如果filename是已經建立的數據庫文件,則打開。
如果不存在,則建立這個數據庫。
使用.open Test1.db,創建這個數據庫
查看文件夾下,已經有了這個數據庫,Test1.db。
5.如何使用呢?
在命令行輸入sqlite3,進入sqlite>
使用.open filename,filename為你的數據庫文件,打開后,開始使用。
6.我想Ubuntu下,也應該是這個問題,直接切換到待建數據庫的文件夾,輸入sqlite3 test.db
輸入sqlite3 test.db,沒有報錯,但在創建表的時候,卻報錯,Error:unable to open database "test.db":unable to open database file
退出來以后,使用ls命令,發現當前文件夾下也沒有test.db這個文件,這又是什么原因呢?
分析,應該是當前賬號對/opt/database這個文件夾的操作權限不夠,才導致不能在這個文件夾下建立數據庫文件。
設置/opt/database文件夾的操作權限
cd..
sudo chmod 777 database
重新進入database文件夾,cd database
重復按照前面步驟開始建立數據庫
sqlite3 test.db
create table employee(id integer,name text)
insert into employee values(1,'zhang san')
insert into employee values(2,'Li si‘)
select * from employee
.exit
在linux下也成功建立了sqlite的數據庫。
嘗試第2種方式,在linux下建立數據庫,同樣成立,這里就不重復了。