c# 关于数据库编程的几个要点,与Delphi相比较

我以前是用Delphi+SqL写数据库编程的,现在想转C#,发现有相同的地方,也有不同的地方。现在都记下来,怕一下子又忘记了。

1.显示数据


Delhpi里用Dataset+DataSource+DBGrid,且DBGrid的记录移动会相应更改当前记录;
C#中呢,开始我用DataSet.DataTable+dataGridView,发现很郁闷的事情:界面上移动dataGridView的记录,我却从DataSet中得不到当前的记录,这对于用惯Delphi的我太蛋疼了,唉,用了个笨办法,从dataGridView.CurrentRow.Cells取相关主键字段,然后再建一个DataSet(DS2),根据主键字段去查询。好的方法请往下看

2.操作数据(添加,修改,删除)


Delphi里这些操作实在太简单了,DataSet.Append; DataSet.Edit; DataSet.Delete; 最后用DataSet.Post;
到了C#呢?它的DataSet没有上面类似的函数,我又开始蛋疼了。唉,又用了个最笨的方法,我知道C#有执行命令的Command呀,那我就把语句(什么insert into,update ,delete)写好,把要的值就放在界面上让用户输入,输入完了按确定,先检查一下值的有效性,再赋值给语句的参数,然后执行,执行完后刷新显示的DataSet,还要重新绑定dataGridView。一个字,太累了。好的方法请往下看

3.事务

这个,C#的事务要比Delhpi的事务好控制多了,C#有个事务类

SqlTransaction myst = mydb.BeginTransaction();


后面再把这个myst对象赋值给相关执行命令,最后myst.Commit();或者myst.Rollback();其中可以设置事务级别等,具体可以查看SqlTransaction类的相关帮助。

4.C#比Delphi更酷的数据操作方法

Delphi中的DataSource其实在C#中也有对应的,那就是BindingSource,这个比Delphi的要强很多,且功能可谓广泛,可以绑定很多东西,例如数组等。下面看BindingSource用于数据库操作的方法,

public DataSet DsCustomer;
public BindingSource BsCustomer;
DsCustomer = new DataSet();
DsCustomer = dbManage.getDataSet("select * from Customer", "Customer");//自定义的一个过程,返回DataSet
BsCustomer = new BindingSourc
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值