使用Python将数据插入AWS S3数据库表时出错

时间:2018-11-28 13:50:21

标签: python amazon-web-services amazon-s3 jython

我正在尝试使用Python将数据插入到AWS S3数据库表中。 由于某种原因,我得到可选的第二个参数必须是错误的列表或元组, 我的数据没有插入数据库。 代码在下面,

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;

public class twikiripper {


    public static URL url;


    public static void main(String[] args) {
        BufferedReader br = null;

        try{
            url = new URL("http://www.google.com"); // I have changed this line
        }catch(MalformedURLException ex){}
        try {
            url.openConnection();
            br = new BufferedReader(new InputStreamReader(url.openStream()));
            String line;

            StringBuilder sb = new StringBuilder();

            while ((line = br.readLine()) != null) {

                sb.append(line);
                sb.append(System.lineSeparator());
            }

            System.out.println(sb);



        }catch(Exception e){
            System.out.println("Exception: "+e.toString());
        }
    }
}

当我在下面的查询中编写/替换上面的查询时,它可以工作,但是我想从数组中插入数据。

    import boto3
    s3 = boto3.resource('s3')
    bucket = s3.Bucket('testing')
    cursor = context.cursor()
    sql_data = [0,2,3,4,5,6]
    for x in sql_data:
        print(x)
        query =  "INSERT INTO items (id) VALUES (%s);"""
        cursor.execute(query, sql_data)
        #or
        #cursor.execute(query, x)

我得到第二个可选参数必须是列表或元组错误

1 个答案:

答案 0 :(得分:0)

您的语法错误。将%s替换为?