一、MySoft.Data說(shuō)明
站在用戶的角度思考問(wèn)題,與客戶深入溝通,找到歷城網(wǎng)站設(shè)計(jì)與歷城網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:成都網(wǎng)站建設(shè)、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名與空間、網(wǎng)絡(luò)空間、企業(yè)郵箱。業(yè)務(wù)覆蓋歷城地區(qū)。
1、簡(jiǎn)介
MySoft是一套開源小型框架,包含ORM、Ajax、MVC、Net、Web等。MySoft.Data就是其中的ORM框架。支持多種不同數(shù)據(jù)庫(kù),如SqlServer、Oracle、MySql、SQLite、Firebird、Access等。MySoft.Data是一種輕量級(jí)的能替代SQL語(yǔ)句的易用的ORM框架
二、MySoft.Data使用步驟說(shuō)明
a) 安裝SetupEntityVsPlugin
雙擊SetupEntityVsPlugin把插件安裝到相應(yīng)的目錄。如果使用的是VS2005需要修改SetupEntityVsPlugin.exe文件,把配置項(xiàng)AddInVersionName和AddInVersionNo設(shè)置為正確的數(shù)據(jù)
b) 生成實(shí)體文件MySoft.Tools.EntityDesign
使用MySoft.Tools.EntityDesign生成實(shí)體文件.
1、 選擇使用的數(shù)據(jù)庫(kù):SQLServer、SQLServer2005、、、
2、 設(shè)置正確的數(shù)據(jù)庫(kù)鏈接字符串
3、 點(diǎn)擊“連接服務(wù)器”即把數(shù)據(jù)庫(kù)里的表和視圖顯示在左邊的框里
4、 選擇需要生成實(shí)體的表或視圖
5、 點(diǎn)擊“選擇文件夾”來(lái)選擇要存儲(chǔ)實(shí)體的路徑
6、 點(diǎn)擊“生成實(shí)體接口”來(lái)生成實(shí)體文件,把接口類顯示在文本框內(nèi)
7、 點(diǎn)擊“生成多個(gè)文件”來(lái)生成真正的實(shí)體文件
說(shuō)明:以上步驟是生成實(shí)體接口的步驟,在解決方案里新建一個(gè)項(xiàng)目文件把該生成的實(shí)體文件添加到項(xiàng)目里。該項(xiàng)目文件最好只存放實(shí)體接口類,對(duì)實(shí)體的說(shuō)明性注釋都在接口文件里操作。
c) EntityDesignConifg.xml配置文件
1、 把EntityDesignConifg.xml文件添加到實(shí)體接口類的項(xiàng)目里
2、 根據(jù)需要修改配置項(xiàng)
3、 CompileMode:表示編譯的模式
4、 InputDllName:表示輸入實(shí)體接口類的DLL文件名,即該項(xiàng)目生成的Dll的文件名
5、 OutputLanguage:表示輸出實(shí)體類的語(yǔ)言,默認(rèn)為C#
6、 OutputNamespace:表示輸出實(shí)體類的命名空間
7、 EntityCodePath:表示輸出實(shí)體類文件的路徑,即把由實(shí)體接口類生成的實(shí)體類生成完存放的路徑。
d) 生成實(shí)體文件
以上步驟做完后,編譯實(shí)體接口項(xiàng)目,即生成了實(shí)體類。把生成的實(shí)體類添加到相應(yīng)的項(xiàng)目里即可
e) 編寫代碼
在相應(yīng)的項(xiàng)目里編寫代碼,可以直接引用生成的實(shí)體。注意命名空間。
三、MySoft.Data使用代碼簡(jiǎn)單說(shuō)明
a) DbSession
DbSession是MySoft.Data的數(shù)據(jù)庫(kù)操作會(huì)話對(duì)象,是所有數(shù)據(jù)庫(kù)操作的入口。
實(shí)例化:
1、指定DbSession操作的數(shù)據(jù)庫(kù)
DbSession dbSession = new DbSession(new MySoft.Data.SqlServer9.SqlServer9Provider("數(shù)據(jù)庫(kù)連接字符串"));
2、使DbSession操作默認(rèn)的數(shù)據(jù)庫(kù)
DbSession dbSession = new DbSession(MySoft.Data.ProviderFactory.Default);
3、From 查詢功能
dbSession.From實(shí)體類名()
1、 Count:返回記錄的條數(shù)
2、 Distinct:返回唯一的數(shù)據(jù)
3、 GroupBy:分組
4、 Having:分組條件
5、 OrderBy:排序
6、 Select:選擇某些字段
7、 Where:添加查詢條件
8、 ToReader:返回ISourceReader
9、 ToTable:返回ISourceTable
10、 ToList:返回ISourceList
11、 ToList:返回指定類型的ISourceList
4、Delete 刪除功能
dbSession.Delete實(shí)體類名(new WhereClip("條件"))
5、Update 更新功能
dbSession.Update實(shí)體類名(字段參數(shù)組,值參數(shù)組,new WhereClip("條件"))
6、Save 插入功能
dbSession.Save實(shí)體類名(實(shí)體實(shí)例)
7、Insert 插入功能
dbSession.Insert實(shí)體類名(字段參數(shù)組,值參數(shù)組)
8、Exists 檢查是否存在功能
dbSession.Exists實(shí)體類名(new WhereClip("條件"))
9、Single 得到數(shù)據(jù)功能
dbSession.Single實(shí)體類名(new WhereClip("條件"))
10、Count 統(tǒng)計(jì)條數(shù)功能
dbSession.Count實(shí)體類名(new WhereClip("條件"))
11、Max 統(tǒng)計(jì)最大功能
dbSession.Max實(shí)體類名(實(shí)體字段, new WhereClip("條件"))
12、Min統(tǒng)計(jì)最小功能
dbSession.Min實(shí)體類名(實(shí)體字段, new WhereClip("條件"))
13、AVG 統(tǒng)計(jì)平均功能
dbSession. AVG 實(shí)體類名(實(shí)體字段, new WhereClip("條件"))
14、Sum 統(tǒng)計(jì)總合功能
dbSession.Min實(shí)體類名(實(shí)體字段, new WhereClip("條件"))
b) DbBatch
批量執(zhí)行操作
DbBatch batch = dbSession.BeginBatch();
1、 batch.DeleteStockConfig 做刪除操作
2、 batch.InsertStockConfig 做插入操作
3、 batch.UpdateStockConfig 做更新操作
4、 batch.SaveStockConfig 做插入操作
5、 batch.Process() 真正的執(zhí)行操作
說(shuō)明:該操作一個(gè)批量只用使用相同一操作,Delete,Insert,Update,Save只是標(biāo)識(shí)操作,只有執(zhí)行了Process才是真正的操作了
c) DbHelper
執(zhí)行DB幫忙操作
DbHelper helper = new DbHelper("連接字符串", ProviderFactory.Default);
d) DbTrans
事務(wù)
DbTrans tran = dbSession.BeginTrans();
其它操作和VS自帶事務(wù)操作一樣,只是操作數(shù)據(jù)用tran來(lái)操作.
e) ProviderFactory
數(shù)據(jù)庫(kù)提供者工廠類
ProviderFactory.Default
ProviderFactory. CreateDbProvider
用DW 連接ORACLE視圖:
創(chuàng)建數(shù)據(jù)庫(kù)連接“ dwconn ”。切換到數(shù)據(jù)庫(kù)面板,單擊【+】按鈕,在彈出的菜單中選擇【 OLE DB 連接】,創(chuàng)建數(shù)據(jù)庫(kù)連接“ dwconn ”,如圖:
提示:在圖所示的步驟中,由于這里連接的數(shù)據(jù)庫(kù)是 Access 數(shù)據(jù)庫(kù),所以應(yīng)選擇【 OLE DB 連接】,而當(dāng)要連接的數(shù)據(jù)庫(kù)是 SQL SERVER 時(shí),則應(yīng)選擇【 SQL 服務(wù)器連接】。
起碼有兩種辦法:
1、在 Oracle 中導(dǎo)出數(shù)據(jù),然后導(dǎo)入到 SQL Server;
2、在 SQL Server 中使用鏈接服務(wù)器(linked server)方式連接 Oracle,然后就可以那個(gè)視圖像本地視圖一樣使用了;
既然是課程設(shè)計(jì),那就好好學(xué)學(xué)吧。
需要給調(diào)用者提供Oracle數(shù)據(jù)庫(kù)用戶
圖是基于一個(gè)表或多個(gè)表或視圖的邏輯表,本身不包含數(shù)據(jù),通過(guò)它可以對(duì)表里面的數(shù)據(jù)進(jìn)行查詢和修改。視圖基于的表稱為基表,Oracle的數(shù)據(jù)庫(kù)對(duì)象分為五種:表,視圖,序列,索引和同義詞。
視圖是存儲(chǔ)在數(shù)據(jù)字典里的一條select語(yǔ)句。通過(guò)創(chuàng)建視圖可以提取數(shù)據(jù)的邏輯上的集合或組合。