[解決済み] Python sqlite3.OperationalError: そのようなテーブルがありません。
2022-02-01 08:44:15
質問
ある学校の生徒に関するデータを保存しようとしています。以前、パスワードや先生など、いくつかのテーブルを作成したことがありますが、後で1つのプログラムにまとめる予定です。
私は、これらのうちの1つからテーブル作成関数をほとんどコピーし、値を生徒の情報用に変更しました。他のプログラムでは問題なく動作しているのですが、このような問題が発生します。
sqlite3.OperationalError: no such table: PupilPremiumTable
を追加しようとすると、行で発生します。
cursor.execute("select MAX(RecordID) from PupilPremiumTable")
フォルダの中を見ると、以下のようなファイルがあります。
PupilPremiumTable.db
で、テーブルは以前からすでに作成されているので、なぜうまくいかないのかわかりません。
もし、もっと必要であれば、遠慮なく言ってください。
with sqlite3.connect("PupilPremiumTable.db") as db:
cursor = db.cursor()
cursor.execute("select MAX(RecordID) from PupilPremiumTable")
Value = cursor.fetchone()
Value = str('.'.join(str(x) for x in Value))
if Value == "None":
Value = int(0)
else:
Value = int('.'.join(str(x) for x in Value))
if Value == 'None,':
Value = 0
TeacherID = Value + 1
print("This RecordID is: ",RecordID)
解決方法は?
現在の作業ディレクトリが、スクリプトが存在するディレクトリと同じであると仮定しているのでしょう。それは、あなたができる仮定ではありません。あなたのスクリプトが開いているディレクトリは 新しい データベースを別のディレクトリ、つまり空のディレクトリに作成します。
データベースファイルには絶対パスを使用します。スクリプトの絶対パスをベースにすることができます。
import os.path
BASE_DIR = os.path.dirname(os.path.abspath(__file__))
db_path = os.path.join(BASE_DIR, "PupilPremiumTable.db")
with sqlite3.connect(db_path) as db:
現在の作業ディレクトリが何であるかを確認するには
os.getcwd()
は、新しいデータベースファイルをどこで開いているのか知りたい場合、おそらくそこで作成した余分なファイルをクリーンアップしたいでしょう。
関連
-
Evidentlyを用いたPythonデータマイニングによる機械学習モデルダッシュボードの作成
-
[解決済み】Django: ImproperlyConfigured: SECRET_KEY 設定は空であってはならない
-
[解決済み】SyntaxError: デフォルト以外の引数がデフォルトの引数に続く
-
[解決済み] Pythonには文字列の'contains'サブストリングメソッドがありますか?
-
[解決済み] Pythonで現在時刻を取得する方法
-
[解決済み] Pythonで2つのリストを連結する方法は?
-
[解決済み] ファイルのコピー方法について教えてください。
-
[解決済み] Pythonで例外を手動で発生(スロー)させる
-
[解決済み】ネストされたディレクトリを安全に作成するには?
-
[解決済み】Pythonに三項条件演算子はありますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
PythonはWordの読み書きの変更操作を実装している
-
python implement mysql add delete check change サンプルコード
-
Python interpreted model libraryによる機械学習モデル出力の可視化 Shap
-
[解決済み】pygame.error: ビデオシステムが初期化されていない
-
[解決済み】 AttributeError: モジュール 'matplotlib' には属性 'plot' がない。
-
[解決済み】Python Error: "ValueError: need more than 1 value to unpack" (バリューエラー:解凍に1つ以上の値が必要です
-
[解決済み】IndexError: invalid index to scalar variableを修正する方法
-
[解決済み】ImportError: bs4という名前のモジュールがない(BeautifulSoup)
-
[解決済み】 'numpy.float64' オブジェクトは反復可能ではない
-
[解決済み】ValueError: xとyは同じサイズでなければならない