扒开腿挺进岳湿润的花苞视频|将军边走边挺进她H树林|挺进朋友人妻张婉莹身体|岳脱得精光让我挺进去视频|第一次挺进莹莹的身体里视频|脱岳裙子从后面挺进去视频

新疆軟件開發(fā)

本站首頁 軟件開發(fā) 成功案例 公司新聞 公司簡介 客服中心 軟件技術(shù) 網(wǎng)站建設(shè)
  您現(xiàn)在的位置: 新疆二域軟件開發(fā)公司 >> .Net技術(shù) >> 文章正文

SQL-Server訪問類與ORACLE訪問類之間的轉(zhuǎn)換

在實際的企業(yè)級應(yīng)用時,可能會用到兩種或兩種以上數(shù)據(jù)庫,這就需要在編碼時做兩種數(shù)據(jù)庫的轉(zhuǎn)換,現(xiàn)在提供一種方法,也是微軟示例PetShop提供的解決方式;即使用Assembly反射加載訪問數(shù)據(jù)庫的類,中國自學(xué)編程網(wǎng)整理發(fā)布。

  首先,創(chuàng)建一個空白解決方案,名字為:TestChangeDataBase,然后添加一個C#類庫工程,名字叫DBHelper,然后在類庫工程里創(chuàng)建一個接口IDAL,具體代碼如下:
namespace DBHelper

    public interface IDAL
    {
        DataSet GetDataSet(string query);
    }
}

保存后,關(guān)閉這個接口文件;再創(chuàng)建一個類文件OracleHelper.CS,用以訪問Oracle數(shù)據(jù)庫:此類要實現(xiàn)IDAL接口
示例代碼如下:

using System;
using System.Data;
using System.Configuration;
using System.Web;


using System.Data.OracleClient;

/// <summary>
/// 訪問Oracle數(shù)據(jù)庫
/// </summary>
/// 
namespace DBHelper
{
    public class OracleHelper : IDAL
    {
        public OracleHelper()
        {
            //
            // TODO: 在此處添加構(gòu)造函數(shù)邏輯
            //
        }

        #region IDAL 成員

        public DataSet GetDataSet(string query)
        {         
            OracleConnection con = new OracleConnection(ConfigurationSettings.AppSettings["oracle"]);
            OracleDataAdapter da = new OracleDataAdapter(query, con);
            DataSet ds = new DataSet();
            da.Fill(ds);
            return ds;
        }

        #endregion
    }
}

保存,關(guān)閉此此文件,再創(chuàng)建一個類文件SQLHelper.CS,用以訪問SQL-Server數(shù)據(jù)庫,此類也要實現(xiàn)IDAL接口,示例代碼如下:

using System;
using System.Data;
using System.Configuration;
using System.Web;

using System.Data.SqlClient;
/// <summary>
/// SQLHelper 的摘要說明
/// </summary>


/// 
namespace DBHelper
{
    public class SQLHelper : IDAL
    {
        public SQLHelper()
        {
            //
            // TODO: 在此處添加構(gòu)造函數(shù)邏輯
            //
        }

        #region IDAL 成員

        public DataSet GetDataSet(string query)
        {
            SqlConnection con = new SqlConnection(ConfigurationSettings.AppSettings["sqlserver"]);
            SqlDataAdapter da = new SqlDataAdapter(query, con);
            DataSet ds = new DataSet();
            da.Fill(ds);
            return ds;
        }

        #endregion
    }
}
保存,關(guān)閉此文件.在解決方案視圖,右擊DBHelper,選擇生成,生成工程.

向解決方案中添加一個Web工程,名字叫TestWebSite,

給此Web工程添加引用--項目--選擇DBHelper工程.

并給此Web工程添加Web.Config配置文件,并添加如下節(jié)點:

 <connectionStrings>
  <add name="oracle" connectionString="server=student;user id=scott;password=tiger"/>
  <add name="sqlserver" connectionString="server=thinkpad\sqlexpress;uid=sa;pwd=yang;database=pubs;"/>
 </connectionStrings>
注:這是用VS2005開發(fā)要配置此節(jié),如用VS2003,則配置如下:

 <appSettings>
  <add key="oracle" value="server=student;user id=scott;password=tiger"/>
  <add key="sqlserver" value="server=thinkpad\sqlexpress;uid=sa;pwd=yang;database=pubs;"/>
 </appSettings>

本文是以VS2005為基礎(chǔ)開發(fā)的

配置完畢后,保存,關(guān)閉文件,打開默認(rèn)的頁Default.aspx,要設(shè)計視圖,向此頁添加一個GridView控件,再打開代碼隱藏文件:Default.aspx.cs,編輯代碼

完整代碼如下:

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;


using System.Web.UI.HtmlControls;
using System.Reflection;
using DBHelper;

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
       //在此處可以采用讀取配置文件的方式,則可以實現(xiàn)動態(tài)加載,這里僅做個示例

       /* *  IDAL dbHelper = (IDAL)Assembly.Load("DBHelper").CreateInstance(ConfigurationSettings.AppSettings["sqlHelper"]);

*/
        IDAL dbHelper = (IDAL)Assembly.Load("DBHelper").CreateInstance("DBHelper.OracleHelper");

//SQL 語句也可以在配置文件中配置
        DataSet ds = dbHelper.GetDataSet("select * from emp");
        this.GridView1.DataSource = ds;
        this.GridView1.DataBind();
    }
}

全部完成后,選擇Web工程為啟動項目,啟動測試,OK!

這個僅是個示例工程,可以做的再好一點,加大配置文件的作用,以適應(yīng)真正開發(fā)的需要

 

作者:未知 | 文章來源:未知 | 更新時間:2007-12-12 17:26:39

  • 上一篇文章:

  • 下一篇文章:

  • 相關(guān)文章:
    oracle不能連接本地庫的解決方案
    數(shù)據(jù)庫學(xué)習(xí):Oracle應(yīng)用程序性能優(yōu)化
    ADO.Net中如何優(yōu)化Oracle大批量數(shù)據(jù)更新時的性能
    Oracle 10g同字節(jié)序跨平臺數(shù)據(jù)遷移的測試
    ORACLE中的日志值轉(zhuǎn)換成time_t
    如何利用sp_addlinkersrvlogin從oracle查詢數(shù)據(jù)
    學(xué)習(xí)Oracle10gRelease2新功能之RefCursor
    數(shù)據(jù)學(xué)習(xí):Oracle數(shù)據(jù)庫備份方法之熱備份
    如何獲取Oracle當(dāng)前數(shù)據(jù)庫SCN值
    Oracle數(shù)據(jù)庫幾個常見問題如何解決?
    軟件技術(shù)
    · 開發(fā)語言
    · Java技術(shù)
    · .Net技術(shù)
    · 數(shù)據(jù)庫開發(fā)
    最新文章  
    ·.net技術(shù) asp.net MVC3 Vi
    ·.net將視頻文件格式轉(zhuǎn)換成
    ·NET Framework 2.0 Servic
    ·如何動態(tài)修改winform的app
    ·asp,net軟件結(jié)構(gòu)設(shè)計和相關(guān)
    ·學(xué)習(xí)怎樣使用ASP.NET中的虛
    ·,net基礎(chǔ)類的學(xué)習(xí):system
    ·.net學(xué)習(xí):c#事件的深入分
    ·Facade Pattern學(xué)習(xí)總結(jié)
    ·C#如何設(shè)置或者獲取目錄的
    ·如何使用XSL來定義ASP.NET
    ·理解WCF Data Contract契約
    ·如何能在.net2.0開發(fā)的控件
    ·模式怎樣使用,講解模式的
    ·如何解決Menu菜單被frame遮
    關(guān)于我們 | 軟件開發(fā) | 下載試用 | 客服中心 | 聯(lián)系我們 | 友情鏈接 | 網(wǎng)站地圖 | 新疆電子地圖 | RSS訂閱
    版權(quán)所有 © 2016 新疆二域軟件開發(fā)網(wǎng) m.jdtbank.com All Rights Reserved 新ICP備14003571號
    新疆軟件開發(fā)總機:0991-4842803、4811639.
    客服QQ:596589785 ;地址:新疆烏魯木齊北京中路華聯(lián)大廈A-5C 郵編:830000
     
    江西省| 崇礼县| 大田县| 林西县| 古交市| 盐山县| 麟游县| 马公市| 海晏县| 灵川县| 通州区| 沙坪坝区| 甘肃省| 保山市| 武夷山市| 英超| 丰顺县| 磐石市| 米脂县| 绍兴县| 甘泉县| 乌拉特后旗| 盐边县| 武汉市| 阆中市| 马山县| 喜德县| 长海县| 新干县| 顺昌县| 卢氏县| 沁源县| 克东县| 敖汉旗| 青海省| 广州市| 杭州市| 漾濞| 清新县| 江西省| 巴彦淖尔市|