sqlite - 如何在python中选择名称中带有句点的SQLite表
问题描述
我将一堆 pandas 数据框作为单独的表添加到 SQLite 数据库中,但我没有意识到其中一个名称中有句点。当我尝试SELECT
阅读该表时,出现以下错误:
pandas.io.sql.DatabaseError: Execution failed on sql 'SELECT * from A.J._Doe': near ".": syntax error
我的问题:有没有办法读取名称中带有句点的表格?没有句点的其他名称工作得很好。
name = "A.J._Doe"
pd.read_sql_query("SELECT * from " + name, conn) # Gives the above error message
解决方案
在 SQLite 中,您可以使用双引号转义对象名称(例如表、列、数据库等),因此请尝试:
name = "A.J._Doe"
sql = 'SELECT * FROM "' + name + '"'
pd.read_sql_query(sql, conn)
推荐阅读
- html - 我可以为元素设置动画,使其仅在到达屏幕上的某个位置时才显示?
- c++ - 即使头文件中没有定义静态变量,重定义错误?
- c# - 使用 if 条件检查参数的最有效和最优雅的方法
- sql-server - 如何在 C# 中实用地生成 SQL 脚本
- android - Android Studio 更新 setDependencyCacheDir 错误
- python-3.x - 在 python3 中,如何在不知道函数名称的情况下从该函数的范围内引用该函数?
- c++ - C++:做一个循环重复
- java - 在考勤应用程序中处理日期和时间
- groovy - HCI XmlSlurper Groovy 找不到同一日期的 job_information 记录
- javascript - 如何在不变异的情况下正确更新 redux 数组中的项目?