我正在编写代码来捕获串行端口数据(例如千分尺)并执行以下操作
因为每次测量都可能捕获数百到数千个数据(测量点),我不确定如何设计我的数据库 - 我应该为每个收到的数据创建一个新行,还是应该将所有数据输入一个数组和存储为超长字符串,用逗号分隔成数据库?对于这样的应用程序,我是否需要Server 2008或Server 2008 Express就足够了。他们在表现方面的优缺点是什么?
是否可以创建诸如应用程序,其中客户端不需要安装sql server?
答案 0 :(得分:0)
首先回答你的上一个问题,看看SQLite,因为它是免费的开源,我很确定他们的许可证是空的。无需为您的用户安装任何内容。可以使用您的代码编译SQLite。
要回答您的主要问题,我建议只有在真正有意义的情况下才使用数据库。您是要对数据运行查询,还是只是想通过某种标识符来存储和检索条目?我不鼓励将它存储为超长逗号分隔的字符串,而是查看BLOB类型。使用BLOB,您可以将数据类型放入数据库中,这样您就可以轻松地将它们取回,而且我相信它更有效率。如果你需要对它进行某种文本查询,我只建议使用TEXT类型。例如全文搜索
答案 1 :(得分:0)
如果您认为巨型字符串方法对您的应用程序有意义,那么您可能最好使用文本文件。关系数据库仅在数据结构化时提供好处。如果你使用数据库,那应该是因为你在行和列中存储了谨慎的值。
进程外数据库让我觉得这个项目不匹配。你在解决方案中考虑过SQLite或其他一些编译或链接吗?您可能会获得那些在运行中运行的大型测量矢量的更快吞吐量。
答案 2 :(得分:0)
你想要什么(或者你认为你想要什么)关系数据库?
根据您在此处表达的简单要求(并假设没有其他要求),我建议使用平面文件(可以是纯文本,每行一个样本或二进制文件)。但我真的认为我没有足够的信息来代表你做出决定。一些关键问题是:
......以及更多此类问题。
根据这些问题的答案,您可能会对旧的386计算机感到满意,或者您可能需要现代的8核计算机。