相关文章推荐
强健的南瓜  ·  MySQL之TPC压缩-CSDN博客·  5 月前    · 
帅气的小摩托  ·  Mysql ...·  1 年前    · 

安裝 pyodbc Python 驅動程式 安裝 pymssql Python 驅動程式

這個範例只應被視為一個概念證明。 為了清楚起見,已將範例程式碼簡化,而其不一定代表 Microsoft 建議的最佳做法。

步驟 1:連線

pymssql.connect 函式可用來連接到 SQL Database。

    import pymssql  
    conn = pymssql.connect(server='yourserver.database.windows.net', user='yourusername@yourserver', password='yourpassword', database='AdventureWorks')  

步驟 2:執行查詢

cursor.execute 函式可用來擷取對 SQL Database 查詢的結果集。 這個函式基本上會接受任何查詢並傳回結果集,您可以使用 cursor.fetchone() 反覆查詢結果集。

    import pymssql  
    conn = pymssql.connect(server='yourserver.database.windows.net', user='yourusername@yourserver', password='yourpassword', database='AdventureWorks')  
    cursor = conn.cursor()  
    cursor.execute('SELECT c.CustomerID, c.CompanyName,COUNT(soh.SalesOrderID) AS OrderCount FROM SalesLT.Customer AS c LEFT OUTER JOIN SalesLT.SalesOrderHeader AS soh ON c.CustomerID = soh.CustomerID GROUP BY c.CustomerID, c.CompanyName ORDER BY OrderCount DESC;')  
    row = cursor.fetchone()  
    while row:  
        print(str(row[0]) + " " + str(row[1]) + " " + str(row[2]))     
        row = cursor.fetchone()  

步驟 3:插入資料列

在此範例中,您將了解如何安全地執行 INSERT 陳述式,並傳遞參數。 將參數作為值傳遞,可協助您的應用程式防禦 SQL 插入

    import pymssql  
    conn = pymssql.connect(server='yourserver.database.windows.net', user='yourusername@yourserver', password='yourpassword', database='AdventureWorks')  
    cursor = conn.cursor()  
    cursor.execute("INSERT SalesLT.Product (Name, ProductNumber, StandardCost, ListPrice, SellStartDate) OUTPUT INSERTED.ProductID VALUES ('SQL Server Express', 'SQLEXPRESS', 0, 0, CURRENT_TIMESTAMP)")  
    row = cursor.fetchone()  
    while row:  
        print("Inserted Product ID : " +str(row[0]))
        row = cursor.fetchone()  
    conn.commit()
    conn.close()

步驟 4:復原交易

這個程式碼範例示範如何使用交易,您將:

  • 插入一列資料
  • 復原您的交易以復原插入
  •     import pymssql  
        conn = pymssql.connect(server='yourserver.database.windows.net', user='yourusername@yourserver', password='yourpassword', database='AdventureWorks')  
        cursor = conn.cursor()  
        cursor.execute("BEGIN TRANSACTION")  
        cursor.execute("INSERT SalesLT.Product (Name, ProductNumber, StandardCost, ListPrice, SellStartDate) OUTPUT INSERTED.ProductID VALUES ('SQL Server Express New', 'SQLEXPRESS New', 0, 0, CURRENT_TIMESTAMP)")  
        conn.rollback()  
        conn.close()
    

    如需詳細資訊,請參閱 Python 開發人員中心