免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
Web C#2.0 DataSet和Reader封裝組件實現(xiàn)自動多數(shù)據(jù)庫切換(含組件源碼和...

WebConf配置:

<?xml version="1.0"?>
<!--
    注意: 除了手動編輯此文件以外,您還可以使用
    Web 管理工具來配置應用程序的設置。可以使用 Visual Studio 中的
     “網站”->“Asp.Net 配置”選項。
    設置和注釋的完整列表在
    machine.config.comments 中,該文件通常位于
    \Windows\Microsoft.Net\Framework\v2.x\Config 中
-->
<configuration>
 <appSettings>
  <!--***************** 數(shù)據(jù)庫的設置 *****************
  !— OperatorDataCode:  數(shù)據(jù)庫操作引擎授權碼(自動判斷域名)
  !— OperatorDataLink:  數(shù)據(jù)庫鏈接參數(shù)(自動判斷類型)
  !— Access類型:     /安裝目錄/Data/數(shù)據(jù)庫名.mdb
  !— SQL Server類型: uid=賬號;pwd=密碼;database=數(shù)據(jù)庫;server=服務器
 **************************************************-->

  <add key="OperatorDataCode"  value="00000000-00000000"/>
  <!add key="OperatorDataLink"  value="dbAcc.mdb"/>
        <!--add key="OperatorDataLink"  value="uid=sa;pwd=sa;database=dbSQL;server=."/-->

  <!--***********************************************-->
 </appSettings>
 <connectionStrings/>
 <system.web>
  <!--
            設置 compilation debug="true" 將調試符號插入
            已編譯的頁面中。但由于這會
            影響性能,因此只在開發(fā)過程中將此值
            設置為 true。
        -->
  <compilation debug="true"/>
  <!--
            通過 <authentication> 節(jié)可以配置 ASP.NET 使用的
            安全身份驗證模式,
            以標識傳入的用戶。
        -->
  <authentication mode="Windows"/>
       
        <customErrors mode="RemoteOnly"/>
  <!--
            如果在執(zhí)行請求的過程中出現(xiàn)未處理的錯誤,
            則通過 <customErrors> 節(jié)可以配置相應的處理步驟。具體說來,
            開發(fā)人員通過該節(jié)可以配置
            要顯示的 html 錯誤頁
            以代替錯誤堆棧跟蹤。

        <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
            <error statusCode="403" redirect="NoAccess.htm" />
            <error statusCode="404" redirect="FileNotFound.htm" />
        </customErrors>
        -->
 </system.web>
</configuration>

/* ——————————————————————————?
   | Title:  智能判斷數(shù)據(jù)源                            |
   | Project: DBOperatorService.Data                   |
   | Subarea: DataSet                                  |
   | Author: ξ簫音ξ                                  |
   | Website: www.crfly.com;bbs.52happy.net            |
   | Created date: 01/16/2007                          |
   | Changed date: 01/17/2007                          |
   ——————————————————————————? 
*/


using System;
using
 System.Configuration;
using
 System.Web.UI;
using
 DBOperator.Data;

namespace
 System.Data
{
    
public class
 osdData : Page
    
{
        
// Statics

        public static string DataLink;

        
// Constructors

        static osdData ()
        
{
            osdData.DataLink 
= ConfigurationManager.AppSettings["OperatorDataLink"
];
        }

        
        
public osdData ()
        
{
        }

                
        
// Methods
        public static DataSet DataSet (string sql, int startindex, int num, string dataname)
        
{
            
if (osdData.DataLink.ToUpper().IndexOf(";SERVER="!= -1
)
            
{
                
return
 OperatorSql.ExecuteDataSet(sql, startindex, num, dataname);
            }

            
return OperatorAcc.ExecuteDataSet(sql, startindex, num, dataname);
        }

        
        
public static void ExecuteNonQuery (string sql)
        
{
            
if (osdData.DataLink.ToUpper().IndexOf("SERVER"!= -1
)
            
{
                OperatorSql.ExecuteNonQuery(sql);
            }

            
else
            
{
                OperatorAcc.ExecuteNonQuery(sql);
            }

        }

        
        
public static object Executescalar (string SQL, int i)
        
{
            
if (osdData.DataLink.ToUpper().IndexOf(";SERVER="!= -1
)
            
{
                
return
 OperatorSql.ExecuteScalar(SQL, i);
            }

            
return OperatorAcc.ExecuteScalar(SQL, i);
        }

    }

}



using System;
using
 System.Data.OleDb;
using
 System.Data.SqlClient;
using
 System.Reflection;
using
 DBOperator.Data;

namespace
 System.Data
{
    
//[DefaultMember("Item")]

    public class osdReader
    
{
        
// Instance Fields

        public osdData myData;
        
public
 OperatorAcc myAcc;
        
public
 OperatorSql mySql;
        
private
 OleDbDataReader OleDR;
        
private
 SqlDataReader SqlDR;

        
// Constructors

        public osdReader (OleDbDataReader dr)
        
{
            
this.myData = new
 osdData();
            
this.myAcc = new
 OperatorAcc();
            
this.mySql = new
 OperatorSql();
            
if (osdData.DataLink.ToUpper().IndexOf(";SERVER="== -1
)
            
{
                
this.OleDR =
 dr;
            }

        }

        
        
public osdReader (SqlDataReader dr)
        
{
            
this.myData = new
 osdData();
            
this.myAcc = new
 OperatorAcc();
            
this.mySql = new
 OperatorSql();
            
if (osdData.DataLink.ToUpper().IndexOf(";SERVER="!= -1
)
            
{
                
this.SqlDR =
 dr;
            }

        }


        
public osdReader(string SQL)
        
{
            
this.myData = new
 osdData();
            
this.myAcc = new
 OperatorAcc();
            
this.mySql = new
 OperatorSql();
            
if (osdData.DataLink.ToUpper().IndexOf(";SERVER="!= -1
)
            
{
                OperatorSql.Open();
                
this.SqlDR = new
 SqlCommand(SQL, OperatorSql.ConnSql).ExecuteReader();
            }

            
else
            
{
                OperatorAcc.Open();
                
this.OleDR = new
 OleDbCommand(SQL, OperatorAcc.ConnAcc).ExecuteReader();
            }

        }

        
        
        
// Methods
        public bool Read ()
        
{
            
if (osdData.DataLink.ToUpper().IndexOf(";SERVER="!= -1
)
            
{
                
return this
.SqlDR.Read();
            }

            
return this.OleDR.Read();
        }

        
        
public void Close ()
        
{
            
if (osdData.DataLink.ToUpper().IndexOf(";SERVER="!= -1
)
            
{
                
this
.SqlDR.Close();
                OperatorSql.Close();
            }

            
else
            
{
                
this
.OleDR.Close();
                OperatorAcc.Close();
            }

        }

        
        
        
// Properties
        public object this[string cs]
        
{
            
get

            
{
                
if (osdData.DataLink.ToUpper().IndexOf(";SERVER="!= -1
)
                
{
                    
return this
.SqlDR[cs];
                }

                
return this.OleDR[cs];
            }

        }

    }

}



使用方法簡單說明:
1、代碼對比

1)傳統(tǒng)Web網站數(shù)據(jù)庫編程代碼

GridView1.DataSource = ds.Tables[TableName1].DefaultView;
GridView1.DataBind();

2)使用DBOperator.Data數(shù)據(jù)庫組件

        GridView1.DataSource = ds;
        GridView1.DataBind();

2、數(shù)據(jù)庫配置
WebConfig里使用哪個數(shù)據(jù)庫,就打開哪個。
 <!add key="OperatorDataLink"  value="dbAcc.mdb"/>
        <!--add key="OperatorDataLink"  value="uid=sa;pwd=sa;database=dbSQL;server=."/-->

3、數(shù)據(jù)源調用
例如:1) DataSet調用方法:
    protected void Page_Load(object sender, EventArgs e)
    {
        DataSet ds = osdData.DataSet("SELECT * FROM XiaoYin_User", 0, 0, "dsTable");//使用組

       件的scData類,實現(xiàn)DataSet功能

        //數(shù)據(jù)源
        GridView1.DataSource = ds;

        //為GridView綁定數(shù)據(jù)
        GridView1.DataBind();
    }

      2) Reader調用方法:

      protected void Page_Load(object sender, EventArgs e)
      {
        //使用scReader類,實現(xiàn)DataReader功能
        osdReader dr = new osdReader("SELECT * FROM XiaoYin_User");

        //循環(huán)啟動閱讀器
        while (dr.Read())
        {
            //輸出指定列
            Response.Write(dr["u_name"] + "<br>");
        }
        dr.Close();//關閉閱讀器
      }


實現(xiàn)功能:
     
osdDataSet類
     讀取(DataSet方式),插入,更新,刪除,統(tǒng)計
     1,讀取
       DataSet ds=osdData.DataSet("SELECT * FROM 表 WHERE 條件",開始行,多少行,"虛擬表名");
     2,插入
       osdData.ExecuteNonQuery("INSERT INTO 表 (列1,列2) VALUES (變量1,變量2)");
     3,更新
       osdData.ExecuteNonQuery("UPDATE 表 SET 列1=變量A,列2=變量B WHERE 條件");
     4,刪除
       osdData.ExecuteNonQuery("DELETE 表 WHERE 條件");
     5,統(tǒng)計
       osdData.ExecuteScalar("SELECT * FROM 表 WHERE 條件",統(tǒng)計類型)
統(tǒng)計類型分兩種:
       int 整型:1
       double 帶小數(shù)點:2

//---------- osdReader類 --------------------
實現(xiàn)功能:讀取(DataReader閱讀器方式)
調用方法:
osdReader dr=new osdReader("SELECT * FROM 表 WHERE 條件");
//--------------------------------------------
if(dr.Read())
{
   //如果特定條件的值存在,立即終止下一行的讀取
}
//--------------------------------------------
while(dr.Read)
{
   //循環(huán)讀取符合條件的值
}
//--------------------------------------------
調用讀取出來的值:
dr["列名"].ToString();
使用完后關閉:
dr.Close();

全部源碼與實例打包下載地址:

http://bbs.crfly.com/19591/ShowPost.aspx

本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
C#2.0全能數(shù)據(jù)庫組件 (通俗易懂)
TDataSet / TDataSource / TDateLink 的關系
String中文字替換<遞歸算法>
VB.net數(shù)據(jù)庫編程(01):簡單的入門實例
三層.數(shù)據(jù)層
dataset如何批量更新添加數(shù)據(jù)庫
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服