gpt4 book ai didi

python - 使用 Python 将表从 KDB+ 更新到 SQL Server

转载 作者:太空宇宙 更新时间:2023-11-03 15:06:55 26 4
gpt4 key购买 nike

我希望 SQL Server 中的一个表每天都会从 KDB 中每天更新的表中更新。我已将 ny SQL 数据库连接到 python,并计划对 KDB 数据库执行相同的操作,但我不确定下一步是什么让 KDB 表更新 SQL 表。

这是我迄今为止成功连接到数据库的代码

import pyodbc
db = pyodbc.connect(
r'DRIVER={SQL Server Native Client 10.0};'
r'SERVER=serverName;'
r'DATABASE=DBName;'
r'UID=UN;'
r'PWD=PW')
cur = db.cursor()
SQLCommand = ("SELECT * "
"FROM Table1")
cur.execute(SQLCommand)
results = cur.fetchone()
while results:
results = cur.fetchall()

最佳答案

因此,虽然您可以使用 Python 作为中介,但为什么还要麻烦呢?您可以改为在 kdb+ 中使用 native ODBC 驱动程序,如所述 here .

您需要编写一些内容来创建用于插入、选择等的查询字符串,但这很容易完成。

如果您确实必须使用Python,exxeleron's qpython package是处理 python <-> q IPC 的最简单方法(您可以像上面一样使用 pyQ,但如果您死心塌地使用 Python,那么您可能只需要一个插件 Python 模块)。

\l odbc.k
odbcHandle: .odbc.open"Driver={SQL Server Native Client 10.0};SERVER=serverName;DATABASE=DBName;UID=UN;PWD=PW";
makeCall: .odbc.eval[odbcHandle];
data: makeCall"SELECT * FROM tableName";
countQuery:"SELECT COUNT(*) AS ct FROM otherTable";
ct: first exec ct from makeCall countQuery;
makeCall"INSERT INTO otherTable (col1, col2) VALUES ('a', 'b');"; //you can also generate this string dynamically - this is an exercise for the reader
ct2: first exec ct from makeCall countQuery;
ct - ct2; // 1
.odbc.close odbcHandle

关于python - 使用 Python 将表从 KDB+ 更新到 SQL Server,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44576619/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com