当前位置: 首页 > news >正文

松江网站建设多少钱网络营销推广的八大核心

松江网站建设多少钱,网络营销推广的八大核心,建筑工程起名吉祥大气,wordpress 内存[c#]代码库代码中使用事务前提#xff1a;务必保证一个功能(或用例)在同一个打开的数据连接上#xff0c;放到同一个事务里面操作。首先是在D层添加一个类为了保存当前操作的这一个连接放到一个事务中执行#xff0c;并事务执行打开同一个连接、事务完成关闭同一个连接的一个…[c#]代码库代码中使用事务前提务必保证一个功能(或用例)在同一个打开的数据连接上放到同一个事务里面操作。首先是在D层添加一个类为了保存当前操作的这一个连接放到一个事务中执行并事务执行打开同一个连接、事务完成关闭同一个连接的一个共有类[csharp] view plaincopyprint?01.using System;02.using System.Collections.Generic;03.using System.Linq;04.using System.Text;05.using System.Data;06.using System.Data.SqlClient;07.using Maticsoft.DBUtility;08.namespace PersonalFiles.DAL09.{10. public class DBTransaction11. {12. private DbHelperSQL SqlHelper null;13.14.15.16. public DBTransaction()17. {18. SqlHelper new DbHelperSQL();19. }20.21. /// 22. /// 获取数据库连接23. /// 24. /// 25. public SqlConnection GetConnection()26. {27. return SqlHelper.GetCon();28. }29.30. /// 31. /// 获取事务32. /// 33. /// 34. public SqlTransaction GetTransaction(SqlConnection conn)35. {36. return conn.BeginTransaction();37. }38.39. /// 40. /// 提交事务41. /// 42. public void Commit(SqlTransaction sqlTransaction)43. {44. sqlTransaction.Commit();45. }46.47. /// 48. /// 回滚事务49. /// 50. public void Rollback(SqlTransaction sqlTransaction)51. {52. sqlTransaction.Rollback();53. }54.55. /// 56. /// 关闭连接57. /// 58. public void Close(SqlConnection conn)59. {60.61. if (conn.State ConnectionState.Open)62. {63. conn.Close();64. }65.66. }67. }68.}69.界面层的后台代码和以前一样直接调去就行了现在来看主要是在B层中的代码发生了很大的变化需要向下层传递事务与获取的连接[csharp] view plaincopyprint?01./// 02. /// 增加一条数据03. /// 04. public void Add(PersonalFiles.Model.BasicInformation modelBasic, PersonalFiles.Model.T_HumanAgency model)05. {06. int flag 0;07.08. DBTransaction DbTran new DBTransaction();09.10.11. //获得连接12. SqlConnection conn DbTran.GetConnection();13.14.15.16. //开启事务17. SqlTransaction trans DbTran.GetTransaction(conn);18. try19. {20. //把获得的同一个连接与事务一共传下去21. //dalBasic.Add(modelBasic,conn,trans);22.23. //把获得的同一个连接与事务一共传下去24.25. dalAgency.Add(model,conn,trans);26.27.28.29.30. //事务提交31. DbTran.Commit(trans);32. //return true;33. }34.35. catch (Exception ex)36. {37. //回滚事务38. DbTran.Rollback(trans);39. }40. finally41. {42. DbTran.Close(conn);43. }44. }注意的是向D层传是我们需要传的是B层获取的同一个连接于开启的是一个事务[csharp] view plaincopyprint?01./// 02. /// 增加一条数据03. /// 04. public void Add(PersonalFiles.Model.T_HumanAgency model,SqlConnection conn,SqlTransaction trans)05. {06. StringBuilder strSql new StringBuilder();07. strSql.Append(insert into T_HumanAgency();08. strSql.Append(myidentity,relation,receivemode,workingtime,intotime,oldworkplace,nowworkplace,inervice,registered,registeredcardid,registeredid,householder,isrecord,fileintotime,fileouttime,filetowhere,relationouttime,Paymentstandard,paymentsmonth,payments,stoptime,state,pri,admin,ID));09. strSql.Append( values ();10. strSql.Append(myidentity,relation,receivemode,workingtime,intotime,oldworkplace,nowworkplace,inervice,registered,registeredcardid,registeredid,householder,isrecord,fileintotime,fileouttime,filetowhere,relationouttime,Paymentstandard,paymentsmonth,payments,stoptime,state,pri,admin,ID));11. SqlParameter[] parameters {12. new SqlParameter(myidentity, SqlDbType.VarChar,50),13. new SqlParameter(relation, SqlDbType.VarChar,50),14. new SqlParameter(receivemode, SqlDbType.VarChar,50),15. new SqlParameter(workingtime, SqlDbType.VarChar,50),16. new SqlParameter(intotime, SqlDbType.VarChar,50),17. new SqlParameter(oldworkplace, SqlDbType.VarChar,50),18. new SqlParameter(nowworkplace, SqlDbType.VarChar,50),19. new SqlParameter(inervice, SqlDbType.VarChar,50),20. new SqlParameter(registered, SqlDbType.VarChar,50),21. new SqlParameter(registeredcardid, SqlDbType.VarChar,50),22. new SqlParameter(registeredid, SqlDbType.VarChar,50),23. new SqlParameter(householder, SqlDbType.VarChar,50),24. new SqlParameter(isrecord, SqlDbType.VarChar,50),25. new SqlParameter(fileintotime, SqlDbType.VarChar,50),26. new SqlParameter(fileouttime, SqlDbType.VarChar,50),27. new SqlParameter(filetowhere, SqlDbType.VarChar,50),28. new SqlParameter(relationouttime, SqlDbType.VarChar,50),29. new SqlParameter(Paymentstandard, SqlDbType.VarChar,50),30. new SqlParameter(paymentsmonth, SqlDbType.VarChar,50),31. new SqlParameter(payments, SqlDbType.VarChar,50),32. new SqlParameter(stoptime, SqlDbType.VarChar,50),33. new SqlParameter(state, SqlDbType.VarChar,50),34. new SqlParameter(admin, SqlDbType.VarChar,50),35. new SqlParameter(pri, SqlDbType.VarChar,50),36. new SqlParameter(ID, SqlDbType.VarChar,50)};37. parameters[0].Value model.myidentity;38. parameters[1].Value model.relation;39. parameters[2].Value model.receivemode;40. parameters[3].Value model.workingtime;41. parameters[4].Value model.intotime;42. parameters[5].Value model.oldworkplace;43. parameters[6].Value model.nowworkplace;44. parameters[7].Value model.inervice;45. parameters[8].Value model.registered;46. parameters[9].Value model.registeredcardid;47. parameters[10].Value model.registeredid;48. parameters[11].Value model.householder;49. parameters[12].Value model.isrecord;50. parameters[13].Value model.fileintotime;51. parameters[14].Value model.fileouttime;52. parameters[15].Value model.filetowhere;53. parameters[16].Value model.relationouttime;54. parameters[17].Value model.Paymentstandard;55. parameters[18].Value model.paymentsmonth;56. parameters[19].Value model.payments;57. parameters[20].Value model.stoptime;58. parameters[21].Value model.state;59. parameters[22].Value model.pri;60. parameters[23].Value model.admin;61. parameters[24].Value model.ID;62.63.64. //DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);65. DbHelperSQL.ExecuteSql(strSql.ToString(),conn,trans, parameters);66. }在代码中添加事务与存储过程中添加事务的异同相同点1都能够保证数据的一致性。不同点1代码中添加事务的好处是增加了代码的可读性、与可维护性方便后期人员维护系统看代码能够一目了然的看懂代码而在数据库中添加存储过程的可读性不是很好。2为什么不建议使用数据库自带的存储过程事务呢主要是一个项目过多的依赖数据库这样对后期的数据库迁移都会带来一定的影响与不便(sql向oracle迁移)好多转换不是很容易兼容性和不是很好(以后再深入学习)。3合作开发时如果是代码中添加事务遵循了代码上传的原则这样方便大家的交流。为什么使用事务可以保证同一个连接向数据库多个表写信息的正确性与一致性的原理事务的原子性事务的原子性指的是事务中包含的程序作为数据库的逻辑工作单位它所做的对数据改操作要全部执行要么全部不执行。这种特性称为原子性。 事务的原子性要求如果把一个事务看作是一个程序它要么完整的被执行要么完全执行。就是说事务的操纵序列或者完全应用到数据库或者完全不影响数据库。这种特性称为原则性 假如用户在一个事务内完成了对数据库的更新这时所有的更新对外部世界必须是可见的或者完全没有更新。前者称事务已提交后者称事务撤销。DBMS必须确保由成功提交的事物完成的所有操作在数据库内有完全的反映而失败的事务对数据库完全没有影响事务的隔离性事务开始执行了但是没有提交事务数据并没有真正的写到数据库里面当我去断点测试的时候当第一个程序向数据库发出写完时我去查找数据库不能打开数据库不能查找提示连接超时由于事务的隔离性数据并没有真正的写到数据库里面等事务提交才可以查到数据库可见同一个连接下执行的程序在同一个事务执行的开始于结束后才真正写到数据库里面如果过程当中保存事务回滚数据不会写到数据库里面。保证数据的一致性与正确性。数据的准确性与一致性是我们要时刻考虑的一个好的系统必须有较好的准确性才能保证用户的使用。
http://www.zqtcl.cn/news/642102/

相关文章:

  • asp.net动态的网站开发个人业务网站带后台
  • 控制网站的大量访问关于实验室建设的英文网站
  • 中国容桂品牌网站建设怎么自己做个网站做链接跳转
  • 安徽省建设工程协会网站昆明官网seo厂家
  • 品牌整合推广搜狗优化好的网站
  • 娄底手机网站制作深圳网站建设怎么做
  • 好的龙岗网站建设附近装修公司电话和地址
  • 网站后台生成文章很慢网络营销毕业设计
  • 如何把资料上传到网站什么叫高端网站定制
  • 郑州企业网站建设团队什么是交换链接
  • 如何建立一个外贸公司网站活动营销的方式有哪些
  • 上海工程造价咨询公司余姚网站seo运营
  • 小加工厂做网站wordpress免费主题破解版
  • 网站打开风险怎么解决企业建设网站网站建设公司
  • 随州网站建设公司wordpress怎样上传主题
  • 做外链等于网站更新么台州椒江网站建设
  • 自己搭建一个博客网站网络营销是什么大类
  • 10元网站备案php企业网站开发实训报告
  • 建筑网站设计大全wordpress模板死循环
  • 网站优化排名软件泌阳网站建设
  • 网站反向绑定域名企业网站的建立网络虚拟社区时对于企业
  • 重庆大渡口网站建设解决方案梓潼 网站建设 有限公司
  • 高端平面网站东营住房和城乡建设厅网站
  • 品牌网站建设e小蝌蚪易时代网站
  • 做搜狗手机网站点击软网站建设有哪些种类
  • 想自学做网站太原要做网站的公司
  • 站内seo优化淘宝网站推广策划方案
  • 福建建设执业注册中心网站网址格式怎么写
  • 网站开发外包公司坑襄垣城乡建设管理局的网站
  • 网络公司怎么做网站常州新北区网站建设