我正在使用带有以太网盾的Arduino Uno.
发送许多HTTP请求后,client.println(...),客户端连接时开始失败.失败的时间似乎是随机的,并且循环的序列读数可以在~1000到~7000之间的任何地方变化.
该错误与以太网发送缓冲区溢出无关(遵循此建议)
这是失败的代码:
#include <Ethernet.h>
#include <SPI.h>
// Network constants
byte mac[] = {0x00, 0x23, 0xdf, 0x82, 0xd4, 0x01};
byte ip[] = {/*REDACTED*/};
byte server[] = {/*REDACTED*/};
int port = /*REDACTED*/;
Client client(server, port);
// State
int sequence;
void setup(){
Ethernet.begin(mac, ip);
Serial.begin(9600);
sequence = 0;
delay(1000);
}
void loop(){
httpPut("/topic/:test/publish?sessionId=SESenanhygrp");
Serial.println(sequence++);
}
void httpPut(char* url){
if (!client.connect()) {
Serial.println("EXCEPTION: during HTTP PUT. Could not connect");
return;
}
client.print("PUT");
client.print(" ");
client.print(url);
client.println(" HTTP/1.0"); …Run Code Online (Sandbox Code Playgroud) 我正在尝试为我们拥有的系统构建一个SQL模式channels,每个系统都有一个id,一个或多个fixtures.我很难找到实现这种一对多映射的方法.(即channel一对多fixtures).我正在使用H2数据库引擎.
我不能有一张桌子:
id | fixture
----|----------
1 | 1
1 | 2
2 | 3
CREATE TABLE channel(
id INT NOT NULL PRIMARY KEY,
fixture INT NOT NULL
);
Run Code Online (Sandbox Code Playgroud)
...... PRIMARY KEY id必须如此UNIQUE.
同样,我不能映射如下:
CREATE TABLE channel(
id INT NOT NULL PRIMARY KEY,
f_set INT NOT NULL REFERENCES fixtures(f_set)
);
CREATE TABLE fixtures(
id INT NOT NULL PRIMARY KEY,
f_set INT NOT NULL
);
Run Code Online (Sandbox Code Playgroud)
......因为这 …