pymysql 使用 python 将随机数插入到列中

pymysql inserting random numbers into a column using python

我想将随机数插入到 MySQL 列 rnd_value 中,其中有 100 个随机数,包括 1 到 100 之间使用 python。

我将使用

从 python 生成随机数
random.randrange(1,100)

我已将 MYSQL 查询添加到数据库

 CREATE SCHEMA `random_values` ;
CREATE TABLE `exercise`.`random_values` (
  `id` INT NOT NULL AUTO_INCREMENT COMMENT '',
  `rnd_value` INT NULL COMMENT '',
  PRIMARY KEY (`id`)  COMMENT '');

我使用 pymysql 连接器将数据插入 MySQL 数据库。谁能建议我如何使用 python 将这些随机数插入 MySQL 列?

这个简单的方法怎么样?连接到数据库(假设 localhost 和数据库名称是 exercise)。然后将 100 个值 1 乘 1 地推入?

import pymysql
import random

with pymysql.connect(host='localhost', db='exercise') as db:
   for i in random.randrange(1,100):
      qry = "INSERT INTO random_values (rnd_value) VALUES ({})".format(i)
      with db.cursor() as cur:
         cur.execute(qry)
         db.commit()

引用了一些部分: Pymysql Insert Into not working

安装pymysql

pip install pymysql

在mysql

CREATE TABLE `t1` (`c1` INT NULL,`c2` INT NULL )

python 节目

import pymysql
from random import randint
conn = pymysql.connect(host='localhost', port=3306, user="root")
cursor = conn.cursor()
for i in range (1, 101): # since you want to add 100 entries
  v1 = randint(1,100)
  v2 = randint(1,100)
  sql_statement = "INSERT INTO test.t1(c1, c2) VALUES (" + str(v1) + "," + str(v2)  + ")"
  cursor.execute(sql_statement)
conn.commit() # commit to insert records into database
cursor.close()
conn.close()
对于多个插入,使用某种循环机制,或使用多插入方法

然后切换到 mysql 控制台并触发 select 语句以查看是否插入成功

感谢所有回复,这段代码似乎对我有用,

import pymysql
import random

connection=pymysql.connect(host='localhost',user='root',password='server',
                           db='exercise',charset='utf8mb4',
                             cursorclass=pymysql.cursors.DictCursor)


try:
    with connection.cursor() as cursor:
        for i in range (1, 101):
            j=random.randrange(1,100)
            sql = "INSERT INTO exercise.random_values(rnd_value) VALUES (%s)"
            cursor.execute(sql,(j))
            connection.commit()

finally:
    connection.close()