ADO.NET涓嶱owerBuilder
鍙戝竷: 2008-6-26 22:35 | 浣滆: admin | 鏌ョ湅: 15娆
閮戣悓:涓滄柟鏍囧噯鍥介檯杞欢涓撲笟璁插笀
鍘熺編鍥藉井杞(Microsoft)鍏徃瀹為獙瀹ら珮绾ф灦鏋勫笀銆傛浘浣滀负椤圭洰缁忕悊璐熻矗杩囧浗鍐呰憲鍚嶇數鍔涗紒涓氬濂楀ぇ鍨嬬數鍔涘簲鐢ㄧ郴缁熺爺鍙戯紝浠ュ強澶氬鍏徃鐨凜MMI璇勪及锛涘湪 ITUNION鎷呬换椤圭洰缁忕悊锛屽苟瀹屾垚闆宸紝瀹濋┈锛孉CS鍏徃鍐呴儴绠$悊绯荤粺绛夐」鐩簲鐢ㄨ璁°佸疄鐜板拰缁存姢銆傜簿閫氫娇鐢 Microsoft .NET 鐨勪紒涓氳В鍐虫柟妗堟ā寮忥紝澶у瀷鍟嗗姟缃戠珯鏋舵瀯锛孨ET鐨勫簲鐢ㄧ▼搴忕粨鏋勶紝鍏锋湁杞欢寮鍙戠殑涓板瘜缁忛獙鍜屾墡瀹炵殑鐞嗚鍔熷簳銆傚寳浜埅绌鸿埅澶╁ぇ瀛﹁绠楁満纭曞+銆
鏈瘒鏂囩珷浠ヨ瘎娴嬬殑褰㈠紡閫氳繃涓涓潪甯哥畝鍗曠殑渚嬪瓙锛屾妸ADO.NET涓嶱owerBuilder杩涜澶氭柟闈㈢殑姣旇緝锛屼粠鑰屾彮绀轰袱绉嶅钩鍙颁笅鏁版嵁搴撳簲鐢ㄥ紑鍙戣兘鍔涳紝鍖呮嫭鍔熻兘銆佹ц兘銆佷綋绯荤粨鏋勭殑缁煎悎璇勪环銆
1. 璇勬祴瀵硅薄鎻忚堪
.NET妗嗘灦鎻愪緵浜嗗己澶х殑WINDOWS FORMS 宸ュ叿锛屽彲浠ュ揩閫熷紑鍙戠敤鎴风晫闈€
鍚屾椂锛.NET妗嗘灦鎻愪緵浜嗕赴瀵岀殑瀵硅薄鐢ㄦ潵绠$悊鏁版嵁搴撴搷浣滐紝杩欎簺绫绘荤О涓篈DO.NET锛孉DO.NET涓昏鏄竴绉嶉潪杩炴帴鍨嬬殑鏁版嵁鏋舵瀯銆傚湪闈炶繛鎺ュ瀷鏋舵瀯涓紝鏁版嵁浠庢暟鎹簱涓彇鍑猴紝缂撳瓨鍦ㄦ湰鍦版満鍣ㄤ腑锛屽彲浠ュ湪鏈満涓婂鐞嗘暟鎹紝浠呭湪鏀瑰彉璁板綍鎴栬幏鍙栨柊鏁版嵁鏃舵墠涓庢暟鎹簱杩炴帴銆傛暟鎹簱杩炴帴瑕佸崰鐢ㄥぇ閲忚祫婧愶紝鏁版嵁鏋舵瀯涓庢暟鎹簱涓嶄繚鎸佽繛鎺ユ渶澶х殑濂藉灏辨槸姣旇緝鑺傜渷璧勬簮銆傞潪杩炴帴鍨嬫暟鎹璞$殑宸ヤ綔妯″紡涓嶹EB 寰堝儚銆傛墍鏈塛EB浼氳瘽閮芥槸闈炶繛鎺ュ瀷鐨勶紝鐘舵佷笉浼氬湪涓嶅悓鐨勯〉闈㈣姹備箣闂翠繚鐣欙紝鍥犳闈炶繛鎺ュ瀷鏁版嵁鏋舵瀯涓嶹EB鐨勯厤鍚堟洿娓呮櫚銆
PowerBuilder鏄憲鍚嶇殑鏁版嵁搴撳簲鐢ㄥ紑鍙戝伐鍏风敓浜у巶鍟哖owerSoft鍏徃鎺ㄥ嚭鐨勪骇鍝侊紙PowerSoft鐜板凡琚暟鎹簱鍘傚晢Sybase鎵鏀惰喘锛夛紝瀹冨畬鍏ㄦ寜鐓у鎴锋満/鏈嶅姟鍣ㄤ綋绯荤粨鏋勭爺鍒惰璁★紝鍦ㄥ鎴锋満/鏈嶅姟鍣ㄧ粨鏋勪腑锛屽畠浣跨敤鍦ㄥ鎴锋満涓紝浣滀负鏁版嵁搴撳簲鐢ㄧ▼搴忕殑寮鍙戝伐鍏疯屽瓨鍦ㄣ傜敱浜嶱owerBuilder閲囩敤浜嗛潰鍚戝璞″拰鍙鍖栨妧鏈紝鎻愪緵鍙鍖栫殑搴旂敤寮鍙戠幆澧冿紝浣垮緱鎴戜滑鍒╃敤PowerBuilder(鍚庨潰绠绉癙B)锛屽彲浠ユ柟渚垮揩鎹峰湴寮鍙戝嚭鍒╃敤鍚庡彴鏈嶅姟鍣ㄤ腑鐨勬暟鎹拰鏁版嵁搴撶鐞嗙郴缁熺殑鏁版嵁搴撳簲鐢ㄧ▼搴忋
2. 璇勬祴鍐呭
1銆 缂栫▼鏁堢巼锛堜富瑕佷粠windows forms 蹇熷紑鍙戣瘎娴嬶級銆
2銆 鏁版嵁琛ㄧ幇褰㈠紡銆傦紙涓昏浠巜indows forms 蹇熷紑鍙戣瘎娴嬶級
3銆 鏁版嵁鎿嶇旱銆傦紙涓昏浠嶢DO.NET杩炴帴鏁版嵁搴擄紝鎿嶇旱鏁版嵁搴撴暟鎹瘎娴嬶級
4銆 ADO.NET浜嬪姟澶勭悊锛岃繛鎺ユ睜鐨勪娇鐢紝閫氳繃浣跨敤System.Data.SqlClient/OracleClient 鍛藉悕绌洪棿锛屾敼鍙樿繛鎺ュ瓧绗︿覆锛屾祴璇曟暟鎹绱㈤熷害銆
5銆 瀹氭ц瘎浠凤細杩滅▼璁块棶绛夈
3. 璇勬祴鏂规硶
寮鍙戜竴涓暟鎹簱绋嬪簭
1銆 鍒╃敤WINDOWS FORMS 寮鍙戠▼搴忕晫闈€
绋嬪簭鐣岄潰涓昏浣跨敤鏁版嵁缁戝畾鎺т欢DATAGRID,鏂囨湰妗嗭紝鏍囩绛夊父鐢ㄦ帶浠讹紝灏嗘暟鎹簱涓殑鏁版嵁琛ㄧ幇鍑烘潵銆傚拰PB姣旇緝寮鍙戞晥鐜囥
2銆 鍒╃敤ADO.NET 杩炴帴鏁版嵁搴擄紝鎿嶇旱鏁版嵁搴撲腑鏁版嵁銆
閫氳繃ADO.NET杩炴帴鍒版湰鏈烘暟鎹簱涓殑琛ㄢ淕LDW鈥濓紝浣跨敤ADO.NET瀵硅薄妯″瀷涓璂ATASET瀵硅薄鍜孌ATAADAPTER瀵硅薄锛屽疄鐜版暟鎹绱紝鏁版嵁鏇存柊锛屾暟鎹坊鍔狅紝鏁版嵁鍒犻櫎绛夊姛鑳姐傚苟鍜孭B涓璂ATAWINDOW杩欐柟闈㈠姛鑳借繘琛屾瘮杈冿紝鎸囧嚭涓よ呯殑鍖哄埆銆傜敤鍏蜂綋鏁版嵁閲忓仛姣旇緝銆
娴嬭瘯鐢ㄤ緥缂栫爜锛
棣栧厛闇瑕佽繛鎺ユ暟鎹簱锛
鏁版嵁搴撹繛鎺ユ柟娉1锛(浣跨敤OLEDB锛屽悕瀛楃┖闂碨ystem.Data.OleDb)
string connectstr="Provider = MSDAORA.1;Password=gdmis;User ID=gdmis;Data Source=ms_fengguol.bj.xjgc.com";
string conmmandstr="select * from gldw";
OleDbDataAdapter myDataAdpater = new OleDbDataAdapter (conmmandstr,connectstr);
鏁版嵁搴撹繛鎺ユ柟娉2锛氾紙浣跨敤.net Data Provider锛屽悕瀛楃┖闂碨ystem.Data.OracleClient锛
String connectstr=" Password=gdmis;User ID=gdmis;Data Source=ms_demo";
string conmmandstr="select * from gldw ";
OracleDataAdapter myDataAdpater = new OracleDataAdapter (conmmandstr,connectstr);
杩炴帴鏁版嵁搴撳悗锛岀敓鎴愭暟鎹泦锛屾绱㈡暟鎹彧瑕佺敤涓琛岀紪鐮侊細
dataAdapter1.fill(dataSet11);
瀹炵幇娣诲姞鍔熻兘鐨勪唬鐮侊細
DataRow newRow = dataSet11.Tables ["gldw"].NewRow ();
newRow["dwbm"] = textDWH.Text ;
newRow["dwmc"] = textDWMC.Text ;
newRow["bz"] = textBZ.Text ;
newRow["sqbm"] = textSQM.Text ;
newRow["id"] = textID.Text ;
dataSet11.Tables ["gldw"].Rows .Add (newRow);
oleDbDataAdapter1.Update (dataSet11,"gldw") ;
Application.DoEvents ();
dataSet11.AcceptChanges ();
瀹炵幇鍒犻櫎鍔熻兘鐨勪唬鐮侊細
dataSet11.Tables ["gldw"].Rows [dataGrid1.CurrentRowIndex ].Delete ();
oleDbDataAdapter1.Update (dataSet11,"gldw");
dataSet11.AcceptChanges ();
瀹炵幇鏇存柊鍔熻兘鐨勪唬鐮侊細
oleDbDataAdapter1.Update (dataSet11,"gldw");
dataSet11.AcceptChanges ();
娴嬭瘯缁撴灉锛
鐢ㄦ埛鐣岄潰銆

3銆 鏁版嵁璁块棶銆
4銆 鏁版嵁琛ㄧ幇褰㈠紡銆侫DO.net鐨勬暟鎹〃鐜板舰寮忎笉鏄緢涓板瘜锛屾病鏈塒B鐨勬暟鎹獥鍙d赴瀵屻
5銆 杩炴帴姹狅細锛堟棤娉曞姣旓紝鍥犱负PB娌℃湁姝ゅ姛鑳姐傛澶勫彧鏄鏄庤繛鎺ユ睜鐨勫垱寤猴紝绉婚櫎杩囩▼銆傦級
鍒涘缓锛歄LE DB .NET 鏁版嵁鎻愪緵绋嬪簭浣跨敤 OLE DB 浼氳瘽姹犳潵鑷姩绠$悊杩炴帴姹狅紝褰撹繛鎺ユ墦寮鏃讹紝灏嗘牴鎹竴绉嶇簿纭殑鍖归厤绠楁硶鏉ュ垱寤鸿繛鎺ユ睜锛岃绠楁硶浼氫娇杩炴帴姹犱笌杩炴帴涓殑瀛楃涓茬浉鍏宠仈銆傛瘡涓繛鎺ユ睜閮戒笌涓涓笉鍚岀殑杩炴帴瀛楃涓茬浉鍏宠仈銆傚綋鏂拌繛鎺ユ墦寮鏃讹紝濡傛灉杩炴帴瀛楃涓蹭笉绮剧‘鍖归厤鐜版湁姹狅紝鍒欏皢鍒涘缓涓涓柊姹犮傝繛鎺ユ睜鏄负姣忎釜鍞竴鐨勮繛鎺ュ瓧绗︿覆鍒涘缓鐨勩傚綋鍒涘缓涓涓睜鍚庯紝灏嗗垱寤哄涓繛鎺ュ璞″苟灏嗗叾娣诲姞鍒拌姹犱腑锛屼互婊¤冻鏈灏忔睜澶у皬鐨勮姹傘傝繛鎺ュ皢鏍规嵁闇瑕佹坊鍔犲埌姹犱腑锛岀洿鑷宠揪鍒版渶澶ф睜澶у皬銆
绉婚櫎锛氬鏋滆繛鎺ョ敓瀛樻湡宸茶繃鎴栬呮睜绠$悊绋嬪簭妫娴嬪埌涓庢湇鍔″櫒鐨勮繛鎺ュ凡琚柇寮锛屽垯瀵硅薄姹犵鐞嗙▼搴忓皢浠庢睜涓Щ闄よ杩炴帴銆傝娉ㄦ剰锛屽彧鏈夊湪灏濊瘯涓庢湇鍔″櫒杩涜閫氳鍚庯紝鎵嶅彲浠ユ娴嬪埌杩欑鎯呭喌銆傚鏋滃彂鐜版煇杩炴帴涓嶅啀杩炴帴鍒版湇鍔″櫒锛屽垯浼氬皢鍏舵爣璁颁负鏃犳晥銆傚璞℃睜绠$悊绋嬪簭浼氬畾鏈熸壂鎻忚繛鎺ユ睜锛屼互鏌ユ壘宸茶閲婃斁鍒版睜涓苟鏍囪涓烘棤鏁堢殑瀵硅薄銆傛壘鍒板悗锛岃繖浜涜繛鎺ュ皢琚案涔呯Щ闄ゃ傚湪缂栫▼杩囩▼涓敖鍙兘鐭殑鏃堕棿浣跨敤杩炴帴锛岃鍙婃椂鐨勫叧闂繛鎺ャ傚叧闂繛鎺ュ悗锛岃嚜鍔ㄦ斁鍏ヨ繛鎺ユ睜銆
6銆 浜嬪姟澶勭悊
PB蹇呴』鎵嬪伐瀹炵幇浜嬪姟澶勭悊锛屽鍥炴粴绛夈
ADO.NET 涓湁涓ょ浜嬪姟澶勭悊鏂规硶锛
鎵嬪伐浜嬪姟锛氱敤SqlConnection.BeginTransaction 鏂规硶鏉ュ惎鍔ㄤ簨鍔★紝杩斿洖鍏宠仈鐨凷qlTransaction 瀵硅薄銆傚皢浜嬪姟瀵硅薄鍏宠仈鍒板弬涓庝簨鍔$殑鍛戒护涓婏紝鐢⊿qlTtansaction.Commit 鏂规硶鎻愪氦浜嬪姟锛岀敤SqlTransaction.Rollback 鏂规硶鏉ュ洖婊氫簨鍔°傛杩囩▼涓嶱B鐩稿悓銆
鑷姩浜嬪姟锛氳嚜鍔ㄤ簨鍔℃槸COM+ 鎻愪緵鐨勪竴涓湇鍔★紝濡傛灉瑕佷娇鐢ㄦ鏈嶅姟锛岀被闇瑕侀伒浠庯細1銆佸繀椤荤洿鎺ユ垨闂存帴浠嶴ystemEnterpriseServicedComponent娲剧敓銆2銆佸皢TransactionAttribute 搴旂敤姝ょ被鏉ユ帶鍒剁被鐨勪簨鍔¤涓恒3銆佷娇鐢ㄥ己鍚嶇О涓虹粍浠剁鍚嶃4銆佸皢[AutoComplete] 鐗规э紙灞炴т俊鎭級搴旂敤浜庣被涓殑鏂规硶銆傚鏋滃惈鏈塠AutoComplete] 鐗规х殑鏂规硶璋冪敤瀹屾垚鑰屾病鏈夐敊璇紝鍒欎簨鍔¤鎻愪氦锛屽惁鍒欒鍥炴粴銆
娴嬭瘯杩囩▼璁板綍锛
寮濮嬬敤鏃禼#鍋氳嚜鍔ㄤ簨鍔℃祴璇曞疄渚嬶紝鍦ㄤ娇鐢ㄥ己鍚嶄负缁勪欢绛惧悕鏃讹紝缂栬瘧鏃跺嚭鐜扳滈噸澶嶅睘鎬assembly: AssemblyKeyFile("f:complusexample1.snk")]鈥濋敊璇傜敤vb.net 鍋氭祴璇曞疄渚嬶紝涓鍒囨甯搞
浠旂粏鐮旂┒C# 鍙戠幇宸ョ▼涓嚜宸辩敓鎴愮殑鏂囦欢锛欰ssemblyInfo.cs涓凡缁忓寘鍚玔assembly: AssemblyKeyFile("")]鏉$洰锛屾妸姝ゆ潯鐩敼涓猴細[assembly: AssemblyKeyFile("f:\\complusexample1.snk")]锛屽悓鏃讹紝鍘绘帀鍦–omPlusExample1 涓殑瀵瑰簲灞炴т俊鎭
using System;
using System.EnterpriseServices ;
using System.Reflection ;
///[assembly: AssemblyKeyFile("f:complusexample1.snk")]锛堟閮ㄤ欢灞炴т俊鎭鏀惧埌AssemblyInfo.cs鏂囦欢涓傦級
[assembly:ApplicationName("ComPlusExample1")]
namespace ComPlusExample1
{
[Transaction(TransactionOption.Required )]public class ComPlusExample1 :
ServicedComponent
{
public ComPlusExample1():base()
{
}
[AutoComplete] public string DoTrans()
{
return "my god!";
}
}
}
7銆佽繙绋嬭闂細
ADO 鐨 杩 绋 鏁 鎹 璁 闂(RDS) 鍔 鑳 鏄兘 澶 閫 杩 涓 涓 寰 杩 浼 杈 灏 鏁 鎹 浠 鏈 鍔 鍣 绉 鍔 鍒 瀹 鎴 绔 搴 鐢 绋 搴 鎴朩eb 椤 涓紝 鐒 鍚 鍦 瀹 鎴 绔 瀵 鏁 鎹 杩 琛 鎿 浣滐紝 鏈 鍚 灏 鏇 鏂 鏁 鎹 杩 鍥 鏈 鍔 鍣ㄣ
鑰孉DO.NET鏄竴绉嶉潪杩炴帴鍨嬬殑鏁版嵁鏋舵瀯锛屾暟鎹粠鏁版嵁搴撳彇鍑猴紝缂撳瓨鍦ㄦ湰鍦版満鍣ㄤ腑锛屾墍浠ヤ粠ADO.NET鐨勬灦鏋勬湰韬氨寰堝ソ鐨勬敮鎸佽繙绋嬫暟鎹闂
4. 鎬讳綋缁撹
VS.NET 鐨刉INDOWS FORMS 鍦ㄧ敤鎴风晫闈㈠紑鍙戜笂姣擯B鏈夋槑鏄剧殑蹇嵎鎬э紝楂樻晥鎬э紝鑰屼笖鏇翠赴瀵屻傚湪浠g爜閲忔柟闈紝VS.NET 绋嶅己浜嶱B锛涘湪閫熷害涓庢暟鎹〃鐜板舰寮忔柟闈紝VS.NET 绋嶅井閫婅壊浜嶱B銆
鐢变簬浣撶郴缁撴瀯涓婄殑宸紓锛孷S.NET鐨勫姛鑳芥洿涓哄己澶с俈S.NET鍦ㄦ暟鎹簱杩炴帴鏂归潰锛岄氳繃鑷姩绠$悊杩炴帴姹狅紝閰嶅悎鏁版嵁閫傞厤鍣紝鏁版嵁闆嗙瓑锛屾彁渚涗簡鏇村姞鐏垫椿锛屾洿鍔犲己澶э紝鏇村姞閫傚悎鍒嗗竷寮/澶氬眰杞欢绯荤粺鐨勬柟娉曘備簨鍔″鐞嗕笉浣嗘敮鎸佸父鐢ㄧ殑鎵嬪伐澶勭悊鏂瑰紡锛屽悓鏃惰繕鎻愪緵浜嗚嚜鍔ㄤ簨鍔″鐞嗘満鍒讹紝闄嶄綆浜嗗紑鍙戜汉鍛樺嚭閿欑殑姒傜巼銆




发表于 2009-1-5 19:48
| 











