我ssh进入一个远程服务器,在那里我创建了python文件作为测试:一个创建一个数据库,一个从它读取数据。sqlite3 cursor.fetchall()返回一个空数组
用于创建数据库
import os
import sqlite3
# set up database
conn = sqlite3.connect('Materials.db')
c = conn.cursor()
def createTable():
c.execute("DROP TABLE IF EXISTS images")
c.execute("CREATE TABLE images(ID TEXT, url TEXT)")
createTable()
path = os.getcwd()
imagepath = "/home/rootadmin/1080_images"
imagedir = os.listdir(imagepath)
for image in range(0,len(imagedir)):
c.execute('INSERT INTO images(ID, url) VALUES(?,?)',(imagedir[image],'www.google.com'))
print(imagedir[image])
在这里,打印命令所要求的数据,例如该脚本它会生成图像的ID。
在我的脚本从数据库中读取数据:
import sqlite3
conn = sqlite3.connect('Materials.db')
c = conn.cursor()
c.execute('SELECT ID FROM images')
objectId = c.fetchall()
print(objectId)
我有sqlite3的知识有限,但我希望在第二个脚本的打印命令打印ID的图像中的表中找到,从Materials.db,但它返回一个空数组。
你'for'循环也可以顺便改进。在'imagedir:'中为项目执行'并在循环中使用新变量'item'而不是'imagedir [image]' –