四大天王之變形金剛(SqlHelper),變形金剛sqlhelper

來源:互聯網
上載者:User

四大天王之變形金剛(SqlHelper),變形金剛sqlhelper

</pre>        1、基礎介紹<p></p><p><span style="color:rgb(51,51,51); font-family:arial,宋體,sans-serif; line-height:24px; text-indent:28px"><span style="font-size:18px">        SqlHelper是一個基於·NET Framework的資料庫操作組件。組件中包含資料庫操作方法。SqlHelper用於簡化你重複的去寫那些資料庫連接(SqlConnection),SqlCommand,SqlDataReader等等。SqlHelper 封裝過後通常是只需要給方法傳入一些參數如資料庫連接字串,SQL參數等,就可以訪問資料庫了,很方便。</span></span></p><p><span style="color:rgb(51,51,51); font-family:arial,宋體,sans-serif; line-height:24px; text-indent:28px"><span style="font-size:18px">        簡單的講,就是將“四大天王”中具有共性的東西,封裝起來,從而讓我們的代碼變得簡單,易於擴充。</span></span></p><p><span style="color:rgb(51,51,51); font-family:arial,宋體,sans-serif; line-height:24px; text-indent:28px"><span style="font-size:18px">       <strong>2、實現方法(Vb.Net版)</strong></span></span></p><p><span style="color:rgb(51,51,51); font-family:arial,宋體,sans-serif; line-height:24px; text-indent:28px"><span style="font-size:18px"><strong>         (1)</strong>配製檔案(U層)</span></span></p><p><span style="color:rgb(51,51,51); font-family:arial,宋體,sans-serif; line-height:24px; text-indent:28px"><span style="font-size:18px">                 在建立的應用表單項目下,有一個App.Config檔案,開啟,然後在</startup>後邊添加如下代碼</span></span></p><p><span style="color:rgb(51,51,51); font-family:arial,宋體,sans-serif; line-height:24px; text-indent:28px"><span style="font-size:18px"></span></span></p><pre name="code" class="vb">    <appSettings>    <clear/>    <add key="ConnStr" value="server=localhost;Database=Login;User=sa;Password=123456;"/>     </appSettings>

                添加完以後,如

<?xml version="1.0" encoding="utf-8" ?><configuration>    <startup>        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />    </startup>    <appSettings>    <clear/>    <add key="ConnStr" value="server=localhost;Database=Login;User=sa;Password=123456;"/>     </appSettings>  </configuration>


         其他方法另外參照 VB.Net—設定檔

         (2)實現SqlHelper類(D層)

Imports System.DataImports System.Data.SqlClientImports System.Configuration          '添加必要引用Public Class SqlHelper    '定義變數    '獲得資料庫連結字串    Private ReadOnly strConnection As String = ("ConnStr")    '設定連結    Dim conn As SqlConnection = New SqlConnection(strConnection)    '定義Command命令    Dim cmd As New SqlCommand    ' <summary>        ' 執行增刪改三個操作,(有參)傳回值為Boolean類型,確認是否執行成功        ' </summary>        ' <param name="cmdText">需要執行語句,一般是Sql語句,也有預存程序</param>        ' <param name="cmdType">判斷Sql語句的類型,一般都不是預存程序</param>        ' <param name="paras">參數數組,無法確認有多少參數</param>        ' <returns></returns>        ' <remarks></remarks>    Public Function ExecAddDelUpdate(ByVal cmdText As String, ByVal cmdType As CommandType, ByVal paras As SqlParameter()) As Integer        '將傳入的值,分別為cmd的屬性賦值        cmd.Parameters.AddRange(paras)        '將參數傳入        cmd.CommandType = cmdType             '設定一個值,解釋cmdText        cmd.Connection = conn                 '設定串連,全域變數        cmd.CommandText = cmdText             '設定SQL語句        Try            conn.Open()                       '開啟連結            Return cmd.ExecuteNonQuery()      '執行增刪改操作            cmd.Parameters.Clear()            '清除參數        Catch ex As Exception            Return 0                          '如果出錯就返回0        Finally            Call CloseConn(conn)            Call CloseCmd(cmd)        End Try    End Function    ' <summary>        ' 執行增刪改三個操作,(無參)        ' </summary>        ' <param name="cmdText">需要執行語句,一般是Sql語句,也有預存程序</param>        ' <param name="cmdType">判斷Sql語句的類型,一般都不是預存程序</param>        ' <returns>Interger,受影響的行數</returns>        ' <remarks>2013年2月2日8:19:59</remarks>       Public Function ExecAddDelUpdateNo(ByVal cmdText As String, ByVal cmdType As CommandType) As Integer        '為要執行的命令cmd賦值        cmd.CommandText = cmdText               '傳入查詢語句        cmd.CommandType = cmdType               '設定Sql語句如何解釋        cmd.Connection = conn                   '設定串連        '執行操作        Try            conn.Open()            Return cmd.ExecuteNonQuery        Catch ex As Exception            Return 0        Finally            Call CloseConn(conn)            Call CloseCmd(cmd)        End Try    End Function    ' <summary>        ' 執行查詢的操作,(有參),參數不限        ' </summary>        ' <param name="cmdText">需要執行語句,一般是Sql語句,也有預存程序</param>        ' <param name="cmdType">判斷Sql語句的類型,一般都不是預存程序</param>        ' <param name="paras">傳入的參數</param>        ' <returns></returns>        ' <remarks></remarks>     Public Function ExecSeletct(ByVal cmdText As String, ByVal cmdType As CommandType, ByVal paras As SqlParameter()) As DataTable        Dim sqlAdpter As SqlDataAdapter            '是 DataSet和 SQL Server之間的橋接器,用於檢索和儲存資料        Dim dt As New DataTable        Dim ds As New DataSet        '還是給cmd賦值        cmd.CommandText = cmdText                  '設定查詢語句        cmd.CommandType = cmdType                  '設定Cmd對象的類型        cmd.Connection = conn                      '資料庫連接語句        cmd.Parameters.AddRange(paras)             '傳入參數        sqlAdpter = New SqlDataAdapter(cmd)        '執行個體化適配器        Try            sqlAdpter.Fill(ds)                     '用adapter將dataSet填充            dt = ds.Tables(0)                      'dataTable是dataSet的第一個表            cmd.Parameters.Clear()                 '清除參數        Catch ex As Exception            MsgBox("查詢失敗", CType(vbOKOnly + MsgBoxStyle.Exclamation, MsgBoxStyle), "警告!")        Finally            Call CloseCmd(cmd)                     '最後一定要釋放cmd        End Try        Return dt      '返回查到的資料    End Function    ' <summary>        ' 執行查詢的操作,(無參)        ' </summary>        ' <param name="cmdText">需要執行語句,一般是Sql語句,也有預存程序</param>        ' <param name="cmdType">判斷Sql語句的類型,一般都不是預存程序</param>        ' <returns>dataTable,查詢到的表格</returns>        ' <remarks></remarks>       Public Function ExecSelectNo(ByVal cmdText As String, ByVal cmdType As CommandType) As DataTable        Dim sqlAdapter As SqlDataAdapter        Dim ds As New DataSet        '給cmd賦值        cmd.CommandText = cmdText        cmd.CommandType = cmdType        cmd.Connection = conn        sqlAdapter = New SqlDataAdapter(cmd)         '執行個體化適配器        Try            sqlAdapter.Fill(ds)                      '用adapter將dataSet填充            Return ds.Tables(0)                      '返回dataSet的第一個表        Catch ex As Exception            Return Nothing        Finally            Call CloseCmd(cmd)                       '關閉cmd        End Try    End Function    ' <summary>        ' 關閉串連        ' </summary>        ' <param name="conn">需要關閉的串連</param>        ' <remarks></remarks>       Public Sub CloseConn(ByVal conn As SqlConnection)        If (conn.State <> ConnectionState.Closed) Then  '如果沒有關閉            conn.Close()                                '關閉串連            conn = Nothing                              '不指向原對象        End If    End Sub    ' <summary>        ' 關閉命令        ' </summary>        ' <param name="cmd">需要關閉的命令</param>        ' <remarks></remarks>        Public Sub CloseCmd(ByVal cmd As SqlCommand)        If Not IsNothing(cmd) Then                      '如果cmd命令還存在            cmd.Dispose()                               '釋放資源            cmd = Nothing                               '不指向原對象        End If    End SubEnd Class














C#:SqlConnection 當前上下文中不存在名稱SqlHelper

看看你的App_Code裡有沒有SqlHelper這個CS

SqlHelper是一個資料庫操作類,網上有可以下載一個。
 
sqlhelper是幹什的

SqlHelper是一個基於.NET Framework的資料庫操作組件。組件中包含資料庫操作方法,目前SqlHelper有很多版本,主要以微軟一開始發布的SqlHelper類,後麵包含進了Enterprise Library開源包中了。還有一個主要版本是dbhelper.org開源的sqlhelper組件,優點是簡潔,高效能,不僅僅支援sqlserver,同時支援sqlserver、oracle、access、Mysql資料庫,也是一個開源項目,提供免費下載。   SqlHelper用於簡化你重複的去寫那些資料庫連接(SqlConnection),SqlCommand,SqlDataReader等等。SqlHelper 封裝過後通常是只需要給方法傳入一些參數如資料庫連接字串,SQL參數等,就可以訪問資料庫了,很方便。   SqlHelper 類用於通過一組靜態方法來封裝資料訪問功能。該類不能被繼承或執行個體化,因此將其聲明為包含專用建構函式的不可繼承類。在 SqlHelper 類中實現的每種方法都提供了一組一致的重載。這提供了一種很好的使用 SqlHelper 類來執行命令的模式,同時為開發人員選擇訪問資料的方式提供了必要的靈活性。每種方法的重載都支援不同的方法參數,因此開發人員可以確定傳遞串連、事務和參數資訊的方式。
 

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.