某位老先生,自比如比尔*盖茨,能够以几十岁高龄与天斗,倒也其乐融融。
本是爱好也就罢了,不会就不会,还喜欢教训人,拿一个简单的CursorAdpater(俗称CA)到处唬人,我曾经扯下JSON的神秘面纱,告诉大家JSON本质是个字符串,特殊格式的字符串,怕它做什么。
1. CA的本质是一个对象类,跟表单是同级,本质是一样的。
不信的话,你新建一个类,看一下是不是CursorAdapter的级别是跟FORM一样的。
它只是一个用来做数据处理的类,没有其它作用,跟BS,CS没有半毛钱关系, 某位老先生吹牛还说:CA就是BS的核心,他要让手机也跑上CA,然后就实现了APP,不过,一晃过去了好过年,似乎没有看到半点动静。
2. CA为什么不会用,因为你的指导思想错了
误区1:
以为开发软件拖一拖拉一拉就行了。可视化只给了你拐杖,没有让你一直用拐杖行走而不自知。
误区2:
以为写程序就是一条道走到黑,曾有人跟我说,我写程序动不动几千行,VFP表单都放下不。过程,函数,类都是让你做组件,不写重复代码。
3. 来场简单的DEMO
- 照样拿起猫框,配置一下数据库参数(用猫框是顺便教一下社群会员,不用猫框也可以,看你的悟性了)
- 命令窗口输入
- 新建一个表单,并右键数据环境
- 数据环境中添加CursorAdpater
- 在cursoradapter1右键,生成器
其实这个生成器,食之无味,弃之弃之
- 把刚刚在命令行创建的MSSQLHelper数据访问类,放到这里来。
- 选择要操作的表
8.设置一下自动更新
-
就可以拖进表单了
-
运行一下看看
-
加个添加和保存功能
-
运行看看,修改保存没问题,新增没有刷新ID
-
加上ID刷新功能
Ca是不是很简单,其实只是它要配置的参数比较长而已。
上面的步骤,换个纯手写长这样
oca.SelectCmd=“select id,name from customer”
oca.CursorSchema=“id I ,NAME C(50)”
oca.UpdatableFieldList="ID,NAME "
oca.UpdateNameList=“ID CURSORADPATER1.ID, NAME CURSORADAPTER1.NAME”
自刷新ID,加上这个属性
oca.InsertCmdRefreshFieldList=“ID”
oca.InsertCmdRefreshCmd=“SELECT @@IDENTITY”
它跟BS有半毛关系吗? 一点也没有嘛。一个数据访问类而已。
我只是一个技术而已,不会把CA吹得神神秘秘,好像天顶星科技一样。
如果点赞多的话,我教大家自己做CA,自己撸一套,当然不是重复发明轮子。