使用Python将虚拟数据填充到MySQL表中

使用Python将虚拟数据填充到MySQL表中,python,mysql,Python,Mysql,我正在摆弄Sakila DB,我使用与actor表相同的模式创建了一个director表 对于那些不熟悉的人,actor表有4列: 演员身份证 名字 姓 最后更新 我创建的director表的结构类似 现在还有一个film\u actor表,我认为它用作连接表,因为它有复合主键,用于将actor表链接到film表 现在我想创建一个director\u film表。。。你猜对了!与相关导演建立与电影的联系 问题是Sakila有1000部电影。我希望每个导演(我创建了15个)都链接到每部电影 有

我正在摆弄Sakila DB,我使用与
actor
表相同的模式创建了一个
director

对于那些不熟悉的人,
actor
表有4列:

  • 演员身份证
  • 名字
  • 最后更新
我创建的
director
表的结构类似

现在还有一个
film\u actor
表,我认为它用作连接表,因为它有复合主键,用于将
actor
表链接到
film

现在我想创建一个
director\u film
表。。。你猜对了!与相关导演建立与电影的联系

问题是Sakila有1000部电影。我希望每个导演(我创建了15个)都链接到每部电影

有没有一种方法可以使用Python将导演随机分配给电影?这是在本地主机上,我目前使用默认的3306端口,使用root作为用户


导演
电影
的主键从1开始自动递增

如果假设每部电影只有一名导演,则最好在
电影
表中添加一个字段
导演

然后,您可以运行以下SQL查询,为每部影片设置一个随机导演(从1到15的整数):

UPDATE film SET director = FLOOR( 1 + RAND( ) *15 ) 
编辑:

film\u actor
的内容复制到
director\u film

INSERT INTO director_film (SELECT * FROM film_actor ) 
然后生成一个随机控制器:

UPDATE director_film SET director = FLOOR( 1 + RAND( ) *15 ) 

为什么不做一个循环,生成两个随机数——第一个<1000,第二个<15——然后分配它呢?你应该更具体地说明你想要什么:与数据库交互的代码?SQL语句?列出1000名董事的代码?以上的一些组合?很抱歉不清楚。是的,与数据库交互的代码。我已经安装了MySQL for Python模块。如果有一种方法可以通过SQL和跳过Python来实现这一点,我也同意。谢谢你的评论。不幸的是,并不是每部电影都是一对一的关系。例如,我的
director
表中有两个Wachowski兄弟,他们共同导演了矩阵系列。