CYQ.Data 数据层框架

CYQ.Data 是一款由路过秋天创作的支持多数据库应用[Txt,Xml,Access,MSSQL,Oracle,SQLite,MySql]的底层数据库操作类库,使用本类库可以轻松快速开发项目(QQ群:6033006)。

CYQ.Data 数据框架 常见问题 QA

快速使用帮助 | | | 发表日期 :2010/12/20 20:32:58#楼主  

说明:(以下内容,仅适合早期V4或以下版本,最新V5系列,已经没有以下的限制,可以忽略以下问题)

这里写一下 CYQ.Data 框架 在使用过程,大伙容易由于某种原因使用不当而产生的问题解答。

一:支持说明

1:支持事务

A:V1.4版本及以上支持事务,默认new MAction时即开启事务,直到调用Close/Dispose/EndTransation时提交并关闭事务。

2:支持Winform

A:V1.5版本及以上支持Winform,包括直接绑定和UI操作。

3:支持多数据库版本

A:V1.3、V1.4、V1.5版本仅支持SQL2005。

B:V1.5.5版本支持SQL2000/2005。

C:V2.0版本及以上支持SQL2000/2005、Access、Oracle。

D:V4.3版本及以上支持SQLite、MySql

说明:

从兼容性上说,理论性支持SQL 2008,但要注意关闭区分大小写[分页存储过程参数@SQL和@SQl会引发大小写编绎错误]。

4:支持Aop

A:V2.0版本及以上支持

二:常见应用问题

1:检查是否生成SelectBase分页存储过程[Acess数据库不用(已内置)]

问题:有的人不看使用文章,只是想试一试,一试,Fill或Select不出数据,就开始问问题了。

2:检查数据库设计约定

A:所有数据库表均约定首字段名为“ID",不可为其它名称,同时ID需要设置为关键字

B:MSSQL:ID若为int型,需要为设置为自增ID,若为Guid,则不用设置

C:Oracle:ID约定为int型,自增序列索引默认名称为"AutoID",可配置自定义名称。

问题:有的人的表喜欢设置AID.PID的,请注意下此条问题,有些人也忘了将ID设为关键字,导致枚举生成的ID不在首列。最终在Insert时或取数据时报错。

3:检查生成的枚举

A:确认生成的枚举的表相关字段首位是ID,[默认会按关键字进行排序]

B:注意下枚举是带有名称空间的。

问题:
1:ID若不在首位,则应该检查数据库设计
2:有的新手对名称空间不熟悉,会引起名称空间编绎时报错,这个编绎时的问题,到群里问问即可。

4:我的数据库是SQL2000

A:V1.4版本对SQL 2000支持有一些小Bug,请使用V1.5.5以上版本

问题:有些人用V1.4版本操作sql 2000,出现操作问题。

5:常见问题调试及调试方式

A:V1.3、V1.4版本带源码,遇到问题请先使用源码调试,遇到无法解决的问题,可到群里[群号见左侧公告]问问,或问作者本人。

B:V1.5.5版本为开源版本,但索取源码方式需要提供量CYQ.Data 实际的项目应用介绍及网址[具体后面会相有相关V1.5.5开源说明]

C:V1.5.5、V2.0版本出现问题,先查上面的问题,再到群问题,或问作者本人。

D:V2.N系列版本,有DebugInfo,可以查看具体的执行过的sql所有信息,出现问题时先查看。

6:在Winform下使用需要强签名的解决方案[由Johnses提供]
1.打开SDK 命令提示窗口;
2.创建一个新的随机密钥对:
sn -k CYQ.Data.snk
3.反编译目标程序集
ildasm CYQ.Data.dll /out=CYQ.Data.il
3.重新编译,附带强命名参数
ilasm CYQ.Data.il /dll /resource=CYQ.Data.res /key=CYQ.Data.snk /optimize
4.验证签名信息
sn -v CYQ.Data.dll

7:其它问题

A:待补充,请随时关注最新版本



新浪微博粉丝精灵,刷粉丝、刷评论、刷转发、企业商家微博营销必备工具"
游客[注册][192.232.69.*]2011/2/22 21:47:30#1
A:V1.4版本及以上支持事务,默认new MAction时即开启事务,直到调用Close/Disponse/EndTranstion时提交并关闭事务。

这里的两个错误拼写。。。
Disponse -> Dispose
EndTranstion -> EndTranscation

另外,如果MAction实现IDispose接口的话,实例代码里尽可能使用
using(var action = new MAction(xxx))
{
...
}
1. 这样可以少写行close;
2. 可以避免写 try...catch...finally
回复谢谢提醒,错别字已修正,另MAction已是实现IDispose接口的。

发表评论

论坛公告

    数据框架 CYQ.Data QQ群:6033006
    使用本框架进行开发,入门简单,开发效率高,性能优越,更有详尽的API文档,有相关的使用帮助文章、示例文章、更甚有相关的视频教程及辅助工具。 关键还是免费与开源,实在是居家旅行、项目开发、学习研究的必备良品!!!!!!


    在线帮助:欢迎联系

帖子搜索