今天遇到的麻烦是前两天设计考虑不周详导致的。
在传统的设计思路中,留给后期运行时可以扩展的部分通常交给数据库的存储过程实现。
例如:保存某数据时,对数据的检查。获得某数据时,对数据的格式化等等。
我一开始设计时也是如此考虑的,在设计数据保存表时,考虑了保存、检查、获取记录时可以选择的额外处理:
CREATE TABLE IF NOT EXISTS TCI_TYPE
(
FCITYPEID INT UNSIGNED,
FCISERIAL INT UNSIGNED,
FCISUBTYPE INT UNSIGNED,
FCIITEMTYPE INT UNSIGNED,
FEDITABLE INT UNSIGNED,
FDISPLAYTYPE INT UNSIGNED,
FISNULL INT UNSIGNED,
FMINLEN INT UNSIGNED,
FMAXLEN INT UNSIGNED,
FDISPLAYX INT UNSIGNED,
FDISPLAYY INT UNSIGNED,
FGETDATA VARCHAR(255),
FSETDATA VARCHAR(255),
FCHKDATA VARCHAR(255),
FCINAME VARCHAR(255),
FCITAG VARCHAR(255),
FCIREMARK VARCHAR(255),
FCIDEFAULT VARCHAR(255)
) ENGINE=InnoDB;
call sp_dropindex("TCI_TYPE","IND_TCI_TYPEID");
CREATE UNIQUE INDEX IND_TCI_TYPEID ON TCI_TYPE(FCITYPEID,FCISERIAL);
如上表中,FGETDATA,FSETDATA,FCHKDATA,即为获取本记录,设置本记录,检查本记录时所应当做的额外处理。
在最初的设计上,是考虑执行mysql的sp来完成此工作。
比如,如果FGETDATA填写一个sp的名字,这样,获

本文探讨了在C++应用中如何使用Python脚本替代数据库存储过程进行数据处理。通过引入IronPython库,实现了C++调用Python并让Python操作C++中的数据。文中还提到了字符集问题以及运行效率的考量,指出虽然创建引擎速度较慢,但后续操作相对高效。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



