使用Python 2.7.5,我已經寫了下面的代碼到編譯過的基於網絡課程的我走,顯示瞭如何sqlite3的作品與Python現在Python的sqlite3的執行錯誤
import sqlite3 as sql
database1 = sql.connect('test1.db')
db1_cursor = database1.cursor()
cmd = 'CREATE TABLE IF NOT EXISTS users(username TEXT,password TEXT)'
cmd2 = 'INSERT INTO users(username,password) VALUES("testuser,testpassword")'
cmd3 = 'SELECT username,password FROM users'
db1_cursor.execute(cmd)
db1_cursor.execute(cmd2)
db1_cursor.execute(cmd3)
database1.commit()
for x in db1_cursor:
print(x)
,在這段代碼運行它給了我下面的操作錯誤:
Traceback (most recent call last):
File "C:\Users\Ryan\My Code Projects\Learning\udemycourse.py", line 11, in <module>
db1_cursor.execute(cmd2)
OperationalError: 1 values for 2 columns
爲什麼它給這個錯誤db1_cursor.execute(CMD2),但不是db1_cursor.execute(CMD1),我該如何解決這一問題?
這有效,但我決定使用上面的答案,因爲它不會改變代碼的語法以及我的udemy課程。雖然在這個過程中它會打印出'(u'testuser',u'testpassword')兩次,而不是在課程中顯示的內容只在控制檯中打印一次。爲什麼是這樣? –