IronPython使用Sql Server數據庫

本文介紹IronPython使用Sql Server數據庫的方法,並配有Ironpython代碼及相對應的C#代碼。

import clr
clr.AddReference('System.Data')

from System.Data import *
from System.Data.SqlClient import *
  • 連接數據庫
    保持數據庫爲打開狀態,記錄連接字符串(Connecting String),連接字符串樣例:
Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename="C:\Users\Asi\Documents\Visual Studio 2015\Projects\Project1\Project1\Database1.mdf";Integrated Security=True
  • 查詢,返回DataSet
    執行查詢語句,以數據集(DataSet)的形式返回查詢結果(代碼中ConnectingStr爲連接字符串)

IronPython代碼

def RetSet(querystr):
    DataAdapter = SqlDataAdapter(querystr, connectingstr);
    myDataSet = DataSet();
    DataAdapter.Fill(myDataSet);
    return myDataSet;

C#代碼

static public DataSet RetSet(string querystr)
{
    SqlDataAdapter DataAdapter = new SqlDataAdapter(querystr, connectionstr);
    DataSet myDataSet = new DataSet();
    DataAdapter.Fill(myDataSet);
    return myDataSet;
}
  • 查詢個數,返回Int32
    執行查詢語句,查詢滿足條件的個數,以Int32的形式返回查詢結果(代碼中ConnectingStr爲連接字符串)

IronPython代碼

def QueryCount(querystr):
    sc = SqlConnection(connectionstr)
    sc.Open()   
    cmd = SqlCommand(querystr, sc)
    res = cmd.ExecuteScalar()
    sc.Close()
    return res

C#代碼

static public int QueryCount(string querystr)
{
    using (SqlConnection sc = new SqlConnection(connectionstr))
    {
        sc.Open();
        SqlCommand cmd = new SqlCommand(querystr, sc);
        return Convert.ToInt32(cmd.ExecuteScalar());
    }
}
  • 執行非查詢語句
    執行非查詢語句,非查詢語句包括delete,update等操作(代碼中ConnectingStr爲連接字符串)

IronPython代碼

def NonQuery(querystr):
    sc = SqlConnection(connectionstr)
    sc.Open()   
    cmd = SqlCommand(querystr, sc)
    cmd.ExecuteNonQuery()
    sc.Close()

C#代碼

static public void NonQuery(string querystr)
{
    using (SqlConnection sc = new SqlConnection(connectionstr))
    {
        sc.Open();
        SqlCommand cmd = new SqlCommand(querystr, sc);
        cmd.ExecuteNonQuery();
    }
}

上述代碼測試環境:Ironpython2.7

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章