【发布时间】:2019-03-20 22:14:37
【问题描述】:
我在 watson 助手中进行了一次对话,我希望能够从 IBM 云函数中调用一个操作来对我的数据库 (Azure) 进行一些查询。我不熟悉云功能,所以这可能是一个愚蠢的问题,我不明白如何与数据库建立连接,我尝试编写一些 nodejs 代码但我当然错了,因为它返回“内部错误” ”。 我还尝试用 python 而不是 nodejs 编写一些代码。 这又是一个愚蠢的问题,所以请原谅我。谢谢!
var mysql = require('mysql');
var connection = mysql.createConnection({
host: 'my_host',
user: 'my_user',
password: 'my_psw',
database: 'my_db'
});
connection.connect();
rows = connection.query('my_query')
if (!err) {
console.log(typeof(rows));
console.log('The solution is: ', rows);
} else {
console.log(typeof(rows));
console.log('Error while performing Query.');
}
connection.end();
{
"error": "Internal error."
}
import pyodbc as pyodbc
conn = pyodbc.connect('DRIVER={SQL Server};SERVER=my_server;DATABASE=my_db;UID=my_user;PWD=my_pwd')
cursor = conn.cursor()
sql = "my_sql"
cursor.execute(sql)
result = cursor.fetchall()
print(result)
csr = conn.cursor()
csr.close()
del csr
conn.close()
{
"error": "The action did not return a dictionary."
}
【问题讨论】:
-
这两个教程都使用 Cloud Functions 连接数据库:console.bluemix.net/docs/tutorials/… 和 console.bluemix.net/docs/tutorials/… 代码可在 GitHub 上获得
标签: node.js sql-server ibm-cloud watson-conversation ibm-cloud-functions