SQLite是轻型数据库里的王者。用数据库的地方就少不了SQLite的身影。不需要任何配置,最大可以处理TB级的数据。资源占用非常少,在嵌入式设备中只需要占用几百K内存就够了。
Dr. JamesPowell对SQLite的动态链接库进行了封装,让LabVIEW集成SQLtie更加方便。
【Open】用来打开一个数据库文件,【db file】是数据库包含全路径的名字,格式可以是“文件路径”也可以是“字符串”。
数据库名字为空时,会创建一个临时数据库。数据库名字为字符串“:memory:”时,会创建一个内存中的数据库。临时数据库和内存数据库在程序关闭时会被销毁。
【Prepare】生成一条SQL语句。如果SQL语句含有参数,可以调用属性节点,使用“Bind”属性绑定值到参数。SQL语句中的参数用“?”表示。
【FirstStep】执行【Prepare】生成的SQL语句。【Row returned】为True表示有返回结果。可以调用属性节点读取第一行数据。
【Step】放在【First】之后调用,用以读取下一条数据。
【Reset】一条SQL语句执行完后,必须调用【Reset】复位SQL语句到初始状态。复位后可以再次运行执行【First Step】。【Reset】指令不会清除绑定的参数值。复位后相当于SQL语句重新执行。
【Finalize】关闭数据库文件之前,运行完成。释放准备好的SQL语句。
【Close】关闭数据库文件。
查询整张表TTT
SELECT * FROMTTT
插入一条数据,有3个参数
INSERT INTOData VALUES (?,?,?)
插入一条数据
INSERT INTOTTT (T1,T2,T3,T4) VALUES (?,?,?,?)
INSERT INTOLog (Text) VALUES ('Log Started')
如果存在表Data,则删除;创建表Data,有三个字段:LVTime,Control,Value
DROP TABLE IFEXISTS Data;
CREATE TABLEData (LVTime, Control, Value)
查询表Data中,按字段Control筛选
SELECT * FROMData WHERE Control LIKE ?
修改一条数据,修改表Log的Time字段
UPDATE LogSET Time = strftime('%Y-%m-%dT%H:%M:%fZ','now') WHERE rowid = new.rowid