CREATE TABLE `balance` ( `id` int NOT NULL AUTO_INCREMENT PRIMARY KEY, `user_id` int NOT NULL, `item` varchar(10) NOT NULL, `balance` decimal(20,2) NOT NULL) ENGINE=InnoDBCREATE TABLE `history` ( `id` int NOT NULL AUTO_INCREMENT PRIMARY KEY, `time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, `user_id` int NOT NULL, `item` varchar(10) NOT NULL, `amount` decimal(20,2) NOT NULL, `befor` decimal(20,2) NOT NULL, `after` decimal(20,2) NOT NULL, `business` varchar(30) NOT NULL, `business_id` varchar(100) NOT NULL, `detail` text) ENGINE=InnoDB
为了加快查询速度,另外为了有效利用 InnoDB 的行级锁,我们需要给两张表加上联合索引。另外,我们需要保证流水记录中 user_id, item, business, business_id 的组合是唯一的,避免重复更新数据。
ALTER TABLE balance ADD INDEX `user_item_idx` (`user_id`, `item`)ALTER TABLE history ADD INDEX `user_item_idx` (`user_id`, `item`)ALTER TABLE history ADD UNIQUE update_unique (user_id, item, business, business_id)
mysql哪种数据引擎适合用于做财务明细表处理?为什么这个 仔细说下吧MYSQL常用 两种
、MyISAM与InnoDB
前者 都可以进行一般的数据存储 但各有优势
简单不全面的说 前者 适合 少改写 少插入 的 读取频繁的表
后者 使用于 频繁维护的 update insert等 数据表
这俩 锁定方式也不同 锁表方式
一般泛用后者
以下是全套:EXCEL财务报表(带公式)的下载全套EXCEL财务报表,包括适用于各行业的:凭证、总账、分类明细账(三拦和
有收入、支出、余额、应收款、应付款多栏)、科目账、T型账(丁字帐)、资产负债表(资产表)、利润表(损益表)、现金流量表、丁字帐(T型帐)、各行资产经营财务表格等等。带全套公式,只要把基本数据填写了,将自动生成汇总数据和相关数据,最大程度减少财务制表工作量。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)