Reputation: 617
I would like to set up a callback in Python when a table on SQL Server changes, similar to how its done for Oracle here.
http://www.oracle.com/webfolder/technetwork/tutorials/obe/db/oow10/python_db/python_db.htm#t11
Is there a library that allows me to do so in Python, an example would be appreciated.
Upvotes: 14
Views: 2449
Reputation: 71
First, download the ODBC Driver for Linux Then Install pyodbc using pip
pip install pyodbc==3.1.1
Create a py file with this code:
import pyodbc
server = 'yourserver.database.windows.net'
database = 'yourdatabase'
username = 'yourusername'
password = 'yourpassword'
driver= '{ODBC Driver 13 for SQL Server}'
cnxn = pyodbc.connect('DRIVER='+driver+';PORT=1433;SERVER='+server+';PORT=1443;DATABASE='+database+';UID='+username+';PWD='+ password)
cursor = cnxn.cursor()
cursor.execute("select @@VERSION")
row = cursor.fetchone()
if row:
print row
That's your basic connection and call. Then follow the procedures from your oracle link, "Using Continuous Query Notification"
But... maybe b/c I am a SQL guy and a security wonk, it seems you'd be better off to have SQL Server push change notifications to somewhere python can get to it.
Upvotes: 1