工作中用多了VBA后,对数据处理自然会有很多心得。
个人目前的状态,基本上会把自己一些经常用到的数据进行结构化处理,用数据库来保存。
不知道大家最终是否都是这样,个人现在使用VBA更多的都是在操作数据库。
刚开始接触数据库的时候,惊叹于他的高效和简洁,但是使用也仅仅是调用ADO进行一些简单的操作,对于数据库的原理是不懂的。
随着使用的加深,也会上网查找一些数据库方面的知识,发现数据库太高深了!还好个人也不是要做什么专门的程序开发,仅仅是使用VBA来处理数据而已,学些皮毛也够用。
从开始写一些针对特定数据库的操作,到后面自己创建一些简单的数据库,发现使用VBA来操作数据库,用的多的还就是简单的查找、添加、删除、更新数据,所以就想到了写个简单的加载宏,用来对工作中用到的数据库进行一些常规的操作,目前实现的一些简单功能:
CREATE TABLE IF NOT EXISTS dbpath (
ID integer not null primary key autoincrement,
描述 text not null unique,
path text not null unique,
时间 timestamp not null default (datetime(CURRENT_TIMESTAMP, 'localtime')),
-- '0'sqlite '1'oracle, vba里都使用ado操作,没什么用
SType char(1) default '0' check(length(SType)=1)
);
-- 常用的sql语句
CREATE TABLE IF NOT EXISTS commonSQL (
ID integer not null primary key autoincrement,
描述 text not null unique,
dbpathID integer not null check(typeof(dbpathID)='integer') references dbpath(ID) on update cascade on delete cascade,
strsql text not null,
时间 timestamp not null default (datetime(CURRENT_TIMESTAMP, 'localtime')),
unique(dbpathID, strsql)
);