我正在寻找示例,教程,或只是“这个+这个应该有用”,用于从诸如Arduino板之类的微控制器读取和写入SQL服务器(2008)。我还查看了(并且可能会使用)带有.Net Micro Framework的设备,例如Fez Cobra。 Micro Framework不包含ADO。 我确信这将涉及一些XML,但我无法弄清楚要进一步调查哪种技术。我不想让PC应用程序充当中间人。
谢谢!
答案 0 :(得分:5)
答案 1 :(得分:1)
还不确定你的问题是什么......标签“arduino”让我觉得你在询问Arduino代码,但下面的评论让我怀疑你是在问.NET的东西。如果问题是如何管理Arduino方面的问题,这是一个试探性的答案。
在Arduino上,我只是在串口上输出SQL查询,如下所示:
Serial.begin(115200);
Serial.println("INSERT INTO table_name VALUES (value1, value2, value3,...);");
在服务器端(或用于访问Internet的计算机一侧),我会编写一个简单的脚本,打开与DB的连接并将查询转发给它。这可以通过 CLI命令或在给定端口上打开网络连接来实现。我不使用Windows / .NET等...但是在GNU / Linux机器上,使用python和mysql,我会编写的概念验证代码看起来像(感觉:未测试!):
import os, serial
self.ser = serial.Serial("/dev/ttyUSB0", 115200)
query = self.ser.readline().strip()
return os.popen("mysql -u<my_usr> -hlocalhost -p<my_pass> -e" + query)
后者有时会很快发货(如果您对此感到好奇,请参阅this presentation)。第一个是already available。为它编写代码应该很容易(参见docs)。结果应该是(UNTESTED):
Serial.begin(<speed>);
Ethernet.begin(<mac_number>, <ip>);
Client client(<server>, <port>);
client.println("GET <path> HTTP/1.0");
while (client.available()) {
char c = client.read();
Serial.print(c);
}
HTH!
答案 2 :(得分:0)
我不知道你是如何得到XML的想法的,但我建议你看一下Microsoft SQL Server protocol documentation,这会让你很清楚你实际需要实现什么来实现你的SQL服务器。
答案 3 :(得分:0)
取决于几个参数:
1.0您通过串口连接到主机PC。
在主机PC上构建一个客户端应用程序,它通过串口接收命令,并使用ADO或您喜欢的任何方式将这些命令转换为sql。
2.0您正在使用以太网屏蔽。
在这种情况下,您现在有几个选项:
2a上。连接到Web服务并使用Soap或类似的http协议发送命令,服务将转换为数据库命令。
2B。尝试至少实现TDS协议的一个子集并直接连接到sql server并直接向它发出命令。
答案 4 :(得分:0)
您可以在SQL Server中设置HTTP端点,然后向其发送HTTP put命令。
答案 5 :(得分:-1)
看看http://www.logicdata.it/sqleng,他们有一个很好的SQLServer for micros。