前言:
继上一版本:CYQ.Data 轻量数据层之路 V4.0 版本发布 ,又过去一个来月了,不过也过了一个新年了。
由于过年原因,因此框架也没多折腾什么,只是年前年后顺路把SQLite,MySQL两种数据库给支持上了。
提示:基于网友的提醒,本次版本发布带CYQ.Data.xml,增加了方法的中文提示。
下面看一下新版本的修改记录


2:MutilLanguage在设置Cookie时也同时设置语言标识
3:MutilLanguage默认语言取自浏览器语言
4:取消CYQ.Data.SQL.OutPutData类及两个相关枚举TableType|DataBaseType,将[生成枚举|创建分页存储过程|创建日志表]等操作单独移到辅助工具实现
5:取消ProcedureSql,新增SchemaAction来获取表架构数据
6:增加对SQLite数据的支持
9:MAction增加从Json反加载数据填充
7:增加对MySql数据库的支持
8:提升数据表架构的缓存级别:MDataColumn->MDataRow
下面进行详细的解说
一:MAction的构造函数允许从MDataRow加载
增加这个原因,是基于 秋色园 应用中,考虑到数据重用的问题,简单解说一下:
1: 秋色园 缓存了用户的信息,就是一行数据了,OK,那么实际上对所有用户的操作都来自同一张表,于是,可以直接从缓存的Row中取数据表结构进行反填充即可以了。由于数据表结构本身就有缓存,所以上面的填充效果,简单的看是不太明显的。
2:当用户编辑自己资料时,当独的数据行无法进行操作,因此时候填充,可以迅速转成可操作的MAction,节省一定的开销。
二:MutilLanguage在设置Cookie时也同时设置语言标识
三:MutilLanguage默认语言取自浏览器语言
在 秋色园 中,多语言应用的是比较广的,因此考虑的因素也是相对较多,包括对用户的浏览器语言判别来显示不同的语言文章,和通过显示的后缀和非后缀等情况做处理,所以小小的需要改动一下。
顺便说一下:CYQ.Data.Xml名称空间下的内容,千万不要放过。
四:取消CYQ.Data.SQL.OutPutData类及两个相关枚举TableType|DataBaseType,将[生成枚举|创建分页存储过程|创建日志表]等操作单独移到辅助工具实现
五:取消ProcedureSql,新增SchemaAction来获取表架构数据
这两个的调整,主要是为了减轻框架的大小,同时内部类重新优化了一下结构,不影响外围使用。
同时,去掉OutPutData类,意味着一些辅助功能,只能借辅助工具实现,包括生成mssql/oracle的分页存储过程。
六:增加对SQLite数据的支持
七:增加对MySql数据库的支持
采用插件式方式加载,如果需要使用,只要把相应的 MySql.Data.dll 或者 System.Data.SQLite.dll 和 CYQ.Data.dll 放在一起即可。
由于SQLite和Access都是单个文章方式,因此数据库链接配置方式类似如下:


appSettings >
connectionStrings >
八:提升数据表架构的缓存级别:MDataColumn->MDataRow
表架构缓存提升了一个级别,理论上性能是提升的,本属内部优化之事。
九:MAction增加从Json反加载数据填充
增加的这个功能是为Ajax应用准备的,应用示例代码:


{
action.GetFromJson( " {id:2,name:/ " 秋色园/ " ,url:/ " www.cyqdata.com/ " } " );
action.Update();
}
结果就是把id为2的行数据的name和url字段更改为相应的数据。
十:V4.3 框架下载
下载地址:下载中心-秋色园
PS:由于新增加数据库,相应的辅助工具V4.3版本也同时提供下载。
十一:CYQ.Data框架项目案例
网址:http://www.cyqdata.com/cyqdata/article-cate-81
欢迎大伙继续提供CYQ.Data框架项目案例。
后言:


其中Access / MSSQL两个系列在大量的项目应用中应用过后,已相当的稳定。
对于Oracle,在测试中通过,已有兄台在实际应用项目中应用,静待发布项目案例的那天。
对于SQLite和MySQL,在测试中通过,欢迎大伙在实际应用中若遇到问题欢迎反馈。

mySqlStringTypesimpactStorageAndPerformanCeaseAsfollows:1)長度,始終使用theSamestoragespace,whatcanbefasterbutlessspace-felfficity.2)varCharisvariable varcharisvariable length,morespace-morespace-morespace-effficitybuteftife buteftife butfority butfority textifforlyslower.3)

mysqlStringTypesIncludeVarChar,文本,char,Enum和set.1)varCharisVersAtileForvariable-lengthStringStringSuptoPuptOuptoPepePecifiedLimit.2)textisidealforlargetStortStorStoverStoverStorageWithoutAutAdefinedLength.3)charlisfixed-lenftenge,for forConsistentDatalikeCodes.4)

MySQLoffersvariousstringdatatypes:1)CHARforfixed-lengthstrings,2)VARCHARforvariable-lengthtext,3)BINARYandVARBINARYforbinarydata,4)BLOBandTEXTforlargedata,and5)ENUMandSETforcontrolledinput.Eachtypehasspecificusesandperformancecharacteristics,sochoose

TograntpermissionstonewMySQLusers,followthesesteps:1)AccessMySQLasauserwithsufficientprivileges,2)CreateanewuserwiththeCREATEUSERcommand,3)UsetheGRANTcommandtospecifypermissionslikeSELECT,INSERT,UPDATE,orALLPRIVILEGESonspecificdatabasesortables,and4)

toadduserInmysqleffect和securly,跟隨台詞:1)USEtheCreateUserStattoDaneWuser,指定thehostandastrongpassword.2)GrantNecterAryAryaryPrivilegesSustherthing privilegesgeStatement,usifementStatement,adheringtotheprinciplelastprefilegege.3)

toaddanewuserwithcomplexpermissionsinmysql,loldtheSesteps:1)創建eTheEserWithCreateuser'newuser'newuser'@''localhost'Indedify'pa ssword';。 2)GrantreadAccesstoalltablesin'mydatabase'withGrantSelectOnMyDatabase.to'newuser'@'localhost';。 3)GrantWriteAccessto'

MySQL中的字符串數據類型包括CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT,排序規則(Collations)決定了字符串的比較和排序方式。 1.CHAR適合固定長度字符串,VARCHAR適合可變長度字符串。 2.BINARY和VARBINARY用於二進制數據,BLOB和TEXT用於大對像數據。 3.排序規則如utf8mb4_unicode_ci忽略大小寫,適合用戶名;utf8mb4_bin區分大小寫,適合需要精確比較的字段。

最佳的MySQLVARCHAR列長度選擇應基於數據分析、考慮未來增長、評估性能影響及字符集需求。 1)分析數據以確定典型長度;2)預留未來擴展空間;3)注意大長度對性能的影響;4)考慮字符集對存儲的影響。通過這些步驟,可以優化數據庫的效率和擴展性。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

禪工作室 13.0.1
強大的PHP整合開發環境

DVWA
Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具