Python/MySQL 查询错误:“未知列”

2024-03-08

该脚本旨在充当命令行前端,将记录添加到本地托管的 MySQL 数据库。

我收到此错误:

mysql.connector.errors.ProgrammingError: 1054 (42S22): Unknown column 'watermelon' in 'field list'

But 西瓜是我要输入的值,而不是列名称!

这是脚本:

#! /usr/bin/python

#use command line as front end to enter new rows into locally hosted mysql database

import mysql.connector

#create inputs
new_fruit = raw_input('What fruit do you want to add? ')
new_fruit_type = raw_input('Which type of ' + new_fruit + '? ')

#connect to dbase
conn = mysql.connector.connect(user='root', password='xxxx', database='play')

#instansiate cursor
cursor = conn.cursor()

#define sql statement
add_record = "INSERT INTO fruit (name, variety) VALUES (%s, %s)" % (new_fruit, new_fruit_type)

#execute sql
cursor.execute(add_record)

#close out
conn.commit()
cursor.close()
conn.close()

以及表架构:

mysql> describe fruit;
+---------+----------+------+-----+---------+----------------+
| Field   | Type     | Null | Key | Default | Extra          |
+---------+----------+------+-----+---------+----------------+
| id      | int(11)  | NO   | PRI | NULL    | auto_increment |
| name    | char(30) | YES  |     | NULL    |                |
| variety | char(30) | YES  |     | NULL    |                |
+---------+----------+------+-----+---------+----------------+
3 rows in set (0.00 sec)

"INSERT INTO fruit (name, variety) VALUES (%s, %s)" % ("watermelon", "melon")

从字面上看就变成了

INSERT INTO fruit (name, variety) VALUES (watermelon, melon)

而不是字符串,watermelon and melon是列。要解决此问题,请在您的%s.

"INSERT INTO fruit (name, variety) VALUES ('%s', '%s')" % (new_fruit, new_fruit_type)

但是,您应该将其运行为:

cursor.execute("INSERT INTO fruit (name, variety) VALUES (%s, %s)", (new_fruit, new_fruit_type));

请注意,我们删除了周围的报价%s并将变量作为第二个参数传递给execute方法。Execute防止来自变量的 sql 注入并将字符串括在引号中。

有关更多信息,请参阅http://mysql-python.sourceforge.net/MySQLdb.html#some-examples http://mysql-python.sourceforge.net/MySQLdb.html#some-examples

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python/MySQL 查询错误:“未知列” 的相关文章

  • 使用python编辑html,但是lxml将漂亮的html实体转换为奇怪的编码

    我正在尝试使用 python 带有 pyquery 和 lxml 来更改和清理一些 html Eg html div p It 146 s a spicy meatball p div lxml html clean 函数 clean ht
  • 根据 MySQL 列内容的长度创建索引?

    如何根据值的长度在 MySQL v 5 0 myisam 数据库引擎 中的列上创建索引 它是文本数据类型 最多 7000 个字符 我是否必须添加具有第一列长度的另一列 是的 因为 MySQL 不支持基于函数的索引 例如ADD INDEX m
  • 将 numpy 数组及其大小写入二进制文件

    我需要将 2D numpy 数组写入文件 包括其尺寸 以便我可以从 C 程序中读取它并创建相应的数组 我编写了一些简单的代码来保存数组 并且可以从 C 读取它 但是如果我尝试先写入数组的大小 它总是会给我一个错误 这是我的简单 python
  • 导入 CSV 以更新表中的行

    大约有 26K 个产品 帖子 每个产品都有如下元值 post id 列是数据库中的产品 ID sku meta key 是每个产品的唯一 ID 我收到了一个新的 CSV 文件 该文件更新了每个产品的 sale price meta key
  • pandas DataFrame 中行的高效成对比较

    我目前正在处理一个较小的数据集 大约 900 万行 不幸的是 大多数条目都是字符串 即使强制类别 框架在内存中也只有几 GB 我想做的是将每一行与其他行进行比较 并对内容进行直接比较 例如 给定 A B C D 0 cat blue old
  • Python正则表达式替换引号中的文本(引号本身除外)

    例如 我有一个测试字符串 content I opened my mouth Good morning I said cheerfully 我想使用正则表达式删除双语音标记之间的文本 但不删除语音标记本身 所以它会返回 I opened m
  • 私有属性,但却是一个神秘的领域

    我想将属性设为私有 但带有 pydantic 字段 from pydantic import BaseModel Field PrivateAttr validator class A BaseModel a str I want a py
  • 在 Python 中引发异常的正确方法是什么? [复制]

    这个问题在这里已经有答案了 这是简单的代码 import sys class EmptyArgs StandardError pass if name main The first way to raise an exception if
  • 类型错误:无法连接“str”和“int”对象有人可以帮助新手使用他们的代码吗?

    感谢任何帮助 还有任何重大缺陷或您在格式或基本方面看到的任何重大缺陷 请指出 谢谢 day raw input How many days locations raw input Where to days str day location
  • 在基本 Tensorflow 2.0 中运行简单回归

    我正在学习 Tensorflow 2 0 我认为在 Tensorflow 中实现最基本的简单线性回归是一个好主意 不幸的是 我遇到了几个问题 我想知道这里是否有人可以提供帮助 考虑以下设置 import tensorflow as tf 2
  • 配置 Django 和 Google 云存储?

    I am not使用应用引擎 我有一个在虚拟机上运行的普通 Django 应用程序 我想使用 Google Cloud Storage 来提供静态文件 以及上传 提供媒体文件 我有一个水桶 如何将 Django 应用程序链接到我的存储桶 我
  • Python:如何“杀死”类实例/对象?

    我希望 Roach 类在达到一定量的 饥饿 时 死亡 但我不知道如何删除该实例 我的术语可能有误 但我的意思是 窗户上有大量 蟑螂 我希望特定的蟑螂完全消失 我会向您展示代码 但它很长 我将蟑螂类添加到策划者类蟑螂种群列表中 一般来说 每个
  • 数据类和属性装饰器

    我一直在阅读 Python 3 7 的数据类 作为命名元组的替代品 我通常在必须将数据分组到结构中时使用它 我想知道数据类是否与属性装饰器兼容 以便为数据类的数据元素定义 getter 和 setter 函数 如果是这样 是否在某处进行了描
  • 我应该在哪里对对象和字段进行 django 验证?

    我正在创建一个 Django 应用程序 它使用 Django Rest Framework 和普通的 django views 作为用户的入口点 我想对模型的独立字段以及整个对象进行验证 例如 字段 根据正则表达式函数输入的车牌是否正确 与
  • 根据标签位置计算 Pandas DataFrame 的索引

    我正在尝试计算标签的索引Pandas https pandas pydata org DataFrame在每一列中 基本上我有以下内容DataFrame d col1 label1 label2 label3 col2 label2 lab
  • 从函数在 python 3 中创建全局变量

    我想知道为什么在函数结束后我无法访问变量 variable for raw data 代码是这样的 def htmlfrom Website URL import urllib request response urllib request
  • 将整数转换为特定格式的十六进制字符串

    我是 python 新手 有以下问题 我需要将整数转换为 6 个字节的十六进制字符串 例如 281473900746245 gt xFF xFF xBF xDE x16 x05 十六进制字符串的格式很重要 int 值的长度是可变的 格式 0
  • 无法将 librosa 与 python 3 一起使用

    我已经在 Windows 上的 ubuntu 子系统上使用 pip3 正确安装了 librosa 但是当我尝试执行像这样的简单程序时 import librosa data sr librosa load sound mp3 print d
  • 从 HDF5 文件中删除信息

    我意识到 SO 用户以前曾问过这个问题question https stackoverflow com questions 1124994 removing data from a hdf5 file rq 1但它是在 2009 年被问到的
  • 如何从 Pandas 数据框函数调用中回顾之前的行?

    我正在研究 回测交易系统 我有一个包含 OHLC 数据的 Pandas 数据框 并添加了几个计算列 https stackoverflow com questions 12376863 adding calculated columns t

随机推荐

  • Ruby on Rails / Paperclip / AWS::S3::NoSuchBucket 错误

    我安装了回形针插件并能够在本地使用它 当我将其配置为与 amazon S3 一起使用时 我不断收到 NoSuchBucket 指定的存储桶不存在 错误 回形针文档指出 如果存储桶不存在 则会创建该存储桶 但很明显 我的情况出了问题 我首先安
  • Mysql中如何将数据合并到临时表中

    我有一张非常大的桌子 叫做paypal ipn orders 在这个表中 我有 2 个重要的信息 一行称为item name和一行称为sort num 我想使用某些参数从中提取记录paypal ipn orders并将它们放入一个名为的临时
  • MS Access SQL 中是否有与 SUBSTRING 函数等效的函数?

    我想在 MS Access 查询中执行类似的操作 但 SUBSTRING 是一个未定义的函数 SELECT DISTINCT SUBSTRING LastName 1 1 FROM Authors 您可以使用 VBA 字符串函数 正如 on
  • Django静态媒体不显示图片

    在寻找解决方案几个小时后未能解决我的问题后 我发布了此内容 我的媒体根目录中的图像没有显示在我的 html 上 在 chrome 的控制台中我得到一个404 file not found 尽管图像就在那里 我在 Pycharm 中使用 Py
  • Google 日历 feed timeMin timeMax 不起作用

    我从搜索中推断 限制日期范围的 Google 日历提要的 URI 应包括 timeMin 和 timeMax 还应包括 singleEvents 和 orderBy 这是我构建的 URI 无论我在投影值后放置什么查询参数 我仍然会获取从 8
  • 以编程方式使下载停靠栏图标弹起

    如何以编程方式使 Dock 下载 图标弹起 请注意 我不希望我的应用程序图标弹起 而只希望下载图标弹起 特别是 我正在将文件从我的应用程序下载到 下载 文件夹 这没问题 但我希望下载图标在下载完成时弹起 就像 Safari 完成下载时发生的
  • 通过右值引用返回是否更有效?

    例如 Beta ab Beta toAB const return move Beta ab 1 1 Beta ab Beta toAB const return move Beta ab 1 1 这会返回一个悬空引用 就像左值引用的情况一
  • 多个鼠标/鼠标/光标?

    如何为多个鼠标显示另一个光标 我有两个 TMemo 两个可以输入各自 TMemo 的键盘 2 个鼠标 我需要 2 个光标 如果假设的话 我已经可以检测出哪只老鼠是哪只 我怎样才能让我自己的光标跟着它一起走 使用德尔福 可能沿着多点 http
  • 使用 bootstrap-datepicker 禁用日期范围?

    如何禁用多个日期范围 使用bootstrap datepicker 目前 这是我关于如何专门禁用日期的代码 div class input group input daterange div
  • Linux shell 编程字符串比较语法

    有什么区别 and 在Linux shell编程中比较字符串 也许下面的代码可以工作 if NAME user then echo your name is user fi 但我认为这不是正确的语法 它将用于比较字符串 陈述 什么是正确的
  • webpack --env.product 和 --mode="product" 之间有什么区别

    如果我错了 请纠正我 但据我从文档中了解到 env option https webpack js org guides environment variables 用来ONLY为了能够在webpack config js如果它导出一个函数
  • 插入表视图并添加按钮或空行时最好的是什么?

    当呈现一个简单的表格视图 或者我想甚至是列表视图 时 您输入新数据的首选方法是什么 With add delete buttons like this Or with a blank line indicating a new record
  • UIAlertViewDelegate 方法 didDismissWithButtonIndex 在手机睡眠/锁定时被调用

    我有一个 UIAlertView 它的 didDismissWithButtonIndex 委托方法调用会弹出视图控制器 同一类 它是 AlertView 委托和视图控制器 以使用户返回到上一个屏幕 问题是 当您在 警报显示 之前锁定手机时
  • Docker 化 Spring boot 应用程序以进行 Kubernetes 部署

    我有一个 Spring Boot 应用程序 在我的 application properties 中具有如下一些属性 server ssl keyStore users admin certs appcert jks server ssl
  • 顺时针旋转数组

    我有一个二维数组 需要顺时针旋转 90 度 但是我不断收到 arrayindexoutofbounds public int rotateArray int arr first change the dimensions vertical
  • ASP.NET Core + IIS + SSL

    如果我想在运行 IIS 作为反向代理的 ASP NET Core 应用程序中使用 https 我是否需要在 IIS 或 ASP NET Core 或两者中配置 SSL 证书 我的计划是在 IIS 上安装证书 这够了吗 在 IIS 上安装证书
  • PHP:数组有最大大小吗?

    PHP 中的数组有限制吗 是的 元素的最大数量有限制 哈希表结构 数组基本上是哈希表的包装器 定义如下 PHP 5 3 typedef struct hashtable uint nTableSize uint nTableMask uin
  • Tensorflow 1.9 / 对象检测:model_main.py 仅评估一张图像

    我已更新到 Tensorflow 1 9 和对象检测 API 的最新版本 当运行以前运行良好的训练 评估会话时 我认为版本 1 6 训练似乎按预期进行 但我只获得一个图像 第一个图像 的评估和指标 在 Tensorboard 中 图像标记为
  • 为什么结构体数组比较有不同的结果

    我不知道为什么会发生以下情况 而且我找不到相关的源代码 有人能给我解释一下吗 var s ss struct two empty structs arr1 6 struct s array with empty struct pointer
  • Python/MySQL 查询错误:“未知列”

    该脚本旨在充当命令行前端 将记录添加到本地托管的 MySQL 数据库 我收到此错误 mysql connector errors ProgrammingError 1054 42S22 Unknown column watermelon i