- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
所以我有一个存储过程,我想连接到它并在 python 中执行,这样我就可以将数据导出为一个精美的表。
这是我使用的代码,注释是我尝试过的代码。
import plotly as py
import plotly.figure_factory as ff
import pandas as pd
import pypyodbc
import pyodbc
import datetime
import seaborn as sns
import matplotlib.pyplot as plt
#force the ODBC driver to use case-sensitive column names
pypyodbc.lowercase = True
startdate = '2018-10-23 08:00'
enddate = '2018-10-24 12:00'
params = startdate,enddate
##Establishing a connection to SQL database
connection = pypyodbc.connect('Driver={SQL Server};'
'Server=LOLOL;'
'Database=LOL_Collection;'
'trusted_connection=yes;')
crsr = connection.cursor()
SQL = """
SET NOCOUNT ON
declare @start = '2018-10-23 08:00'
declare @end = '2018-10-24 12:00'
exec [dbo].[AM_SIGNAL_Histogram] @start, @end
"""
#SQL = """
#
#exec [dbo].[AM_SIGNAL_Histogram] @start, @end
#
#"""
#result = crsr.execute(SQL)
#
#print(result.fetchall())
df = pd.read_sql(SQL,connection)
connection.close()
这是我不断收到的错误:
ProgrammingError: ('42000', "[42000] [Microsoft][ODBC SQL Server Driver][SQL Server]Incorrect syntax near '='.")
感谢您的帮助,肯尼思
最佳答案
问题不在于您的 Python 代码,而在于您的 T-SQL。直接在 SQL Server Management Studio (SSMS) 中运行它,
SET NOCOUNT ON
declare @start = '2018-10-23 08:00'
declare @end = '2018-10-24 12:00'
exec [dbo].[AM_SIGNAL_Histogram] @start, @end
产生
Msg 102, Level 15, State 1, Line 2
Incorrect syntax near '='.
Msg 137, Level 15, State 2, Line 4
Must declare the scalar variable "@start".
您的declare
语句缺少数据类型。以下修改对我有用:
SET NOCOUNT ON;
declare @start varchar(50) = '2018-10-23 08:00';
declare @end varchar(50) = '2018-10-24 12:00';
exec [dbo].[AM_SIGNAL_Histogram] @start, @end;
关于python - pypyodbc - 使用存储过程并将数据存储到数据框中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52973196/
我有一个 SQLServer TSQL 查询,其中包含多个 INSERT 语句,这些语句的范围从非常基本到有些复杂。 此查询适用于 SQLServer Management Studio。 当我使用
我正在使用 Python 3.3、pypyodbc 1.2.1 和一个通过 Flexquarters QODBC 版本 14 访问的 Quickbooks Enterprise 12 公司文件。我是编
我有两个问题: 问题 1: 假设我有两个 .py File-1 和 File-2 File-1 包含以下语句: try: cononnection = pypyodbc.connect
使用 FreeTDS 和 Python3.5 库 PyPyodbc 当我尝试在 SQL Server 数据库(驻留在 Windows 上)中插入一行时,我得到了一个“字节串太长”。在 FreeTDS
所以我有一个存储过程,我想连接到它并在 python 中执行,这样我就可以将数据导出为一个精美的表。 这是我使用的代码,注释是我尝试过的代码。 import plotly as py import p
我正在运行一个相对简单的 python 脚本,该脚本旨在读取一个包含一系列存储过程的文本文件 - 每行一个。该脚本应该在第一行运行存储过程,移动到第二行,在第二行运行存储过程,等等。运行这些存储过程应
我在使用 pypyodbc 模块更新数据库时面临挑战。没有出现任何错误,代码执行成功;但 SQL-Server DB 未更新。正在从数据库获取数据。 请检查: connection = pypyodb
我想弄清楚为什么我的 python 测试程序无法运行。我可以从 MySql Workbench 访问数据库,我认为我在编程部分做的一切都是正确的,我还去了管理工具并将我的数据库添加到 ODBC 数据库
这个命令工作正常.. count = conn.cursor().execute("select COUNT(*) FROM Orders;").fetchall() 但是这个命令会返回一个错误 co
在这种情况下,我创建了一个方法来在数据库中插入行。我向该方法提供列、值和表名。 COLUMNS = [['NAME','SURNAME','AGE'],['SURNAME','NAME','AGE']
使用 PyPyodbc 导入连接到我的 Azure SQL 数据存储。用它来检索数据,效果非常好。尝试添加 Flask 应用程序将数据添加到 SQL 数据存储的功能,但出了问题。 ` from fla
很晚了,我累了 - 我希望我只是犯了一个愚蠢的错误,但我似乎看不到它。谁能看到我可能做错了什么?如果我在 SQL Server Management studio 上运行 SQL,它工作得很好。我可以
我想序列化查询结果。这是我的例子: import pypyodbc import pickle connection_string ='Driver={SQL Server Native Client
在_mssql.connect 中,有一个添加appname 的选项。我想知道 pypyodbc.connect 是否有类似的东西。 谢谢。 最佳答案 是的,作为连接字符串的一部分: DSN=myDa
尝试使用 pypyodbc 连接到 sql server,但我不断收到“未找到数据源名称且未指定默认驱动程序”错误。请参阅下面的尝试。我对这一切还很陌生,但仍然认为至少测试连接会更容易。 import
>>> pypyodbc.win_create_mdb('E:/Database/Japan/201112.mdb') 它在双层文件夹中工作正常,但是当我创建 tripper-level 文件夹错误时
pypyodbc 过去曾为我工作过,但由于某种原因它不起作用。我在 ~/.odbc.ini 中定义了这个 [as400]
我知道pyodbc是一个较旧的项目,可能更具特色和健壮性,但它的设计(基于编译的 C 代码的组件)是否有任何东西使其优于纯 Python 实现,例如 pypyodbc ? 我做了很多 ETL 工作,并
我是 Python 的新手,并编写了这段用于将数据插入 SQL 服务器的简单代码: import pypyodbc connect = pypyodbc.connect('Driver={Sql Se
我正在尝试在 Python 脚本中使用 OPENJSON 将一些基本的 JSON 导入到 SQL 数据库中。我最初尝试使用更复杂的 JSON 文件,但为了这篇文章对其进行了简化。这是我拥有的: sql
我是一名优秀的程序员,十分优秀!