簡體   English   中英

無法使用Python將數據插入sqlite3數據庫

[英]Cannot insert data into an sqlite3 database using Python

我可以成功使用Python創建數據庫並運行execute()方法來創建2個新表並指定列名。 但是,我無法將數據插入數據庫。 這是我嘗試用於將數據插入數據庫的代碼:

#! /usr/bin/env python

import sqlite3

companies = ('GOOG', 'AAPL', 'MSFT')

db = sqlite3.connect('data.db')
c = db.cursor()

for company in companies:
    c.execute('INSERT INTO companies VALUES (?)', (company,))

以下是我用於成功創建數據庫的代碼:

#! /usr/bin/env python

import sqlite3

db = sqlite3.connect('data.db')

db.execute('CREATE TABLE companies ' \
      '( '\
      'company varchar(255) '\
      ')')

db.execute('CREATE TABLE data ' \
      '( '\
      'timestamp int, '\
      'company int, '\
      'shares_held_by_all_insider int, '\
      'shares_held_by_institutional int, '\
      'float_held_by_institutional int, '\
      'num_institutions int '\
      ')')

嘗試添加

db.commit()

插入后。

要插入數據,您不需要光標

只需使用數據庫

db.execute()而不是c.execute()並刪除c = db.cursor()行

游標不用於插入數據,但通常用於讀取數據或更新數據。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM