Как использовать блокнот jupyter с google colab на диске google с файлом sqlite db? - PullRequest
1 голос
/ 25 марта 2020

Я загрузил файл базы данных sqlite с именем factbook.db. В записной книжке я начал с:

from google.colab import drive
drive.mount('/content/drive')

my_path = '/content/drive/My Drive/Analyzing_CIA_Factbook_Data_Using SQL_1/'

%%capture
%load_ext sql
%sql sqlite:///my_path + factbook.db

После этого мне захотелось увидеть список таблиц:

%%sql
SELECT * FROM sqlite_master WHERE type='table';

Но он показывает:

sqlite:///factbook.db
   sqlite:///my_path
Done.
type    name    tbl_name    rootpage    sql

Я даже попытался переместить файл из дополнительной папки и вставить в My Drive. Но это тоже не сработало.

Я запустил этот запрос:

%%sql
SELECT * 
FROM facts
LIMIT 5;

Но он показывает это:

* sqlite:///factbook.db
   sqlite:///my_path
(sqlite3.OperationalError) no such table: facts
[SQL: SELECT * 
FROM facts
LIMIT 5;]
(Background on this error at: http://sqlalche.me/e/e3q8)

Заранее спасибо.

1 Ответ

0 голосов
/ 25 марта 2020

Ваша команда здесь не будет работать.

%sql sqlite:///my_path + factbook.db

Она не будет содержать строку. Сначала вы должны проверить его с текущим каталогом.

!cp '/content/drive/My Drive/Analyzing_CIA_Factbook_Data_Using SQL_1/factbook.db' /content
%sql sqlite:////content/factbook.db

Проверьте, работает ли он первым, затем попробуйте изменить каталог. Если выйти из космоса слишком сложно, вы можете создать символическую ссылку, чтобы упростить его.

!ln -s '/content/drive/My Drive/Analyzing_CIA_Factbook_Data_Using SQL_1' /content/sql
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...