先加入依赖MySql.Data 6.8.8
创建好数据库及表
public void MysqlTest()
{
string myConnectionString = "Server = localhost; UserId = root; Password = 123456; Database = ft_m20;pooling=false;charset=utf8";
try
{
conn = new MySql.Data.MySqlClient.MySqlConnection(myConnectionString);
conn.Open();
Log("mysql连接成功");
//增
string sql3 = "insert into ft_imei (imei,state) values ('IMEI00001','1')";
MySqlCommand cmd3 = new MySqlCommand(sql3, conn);
int rows = cmd3.ExecuteNonQuery();
Log("mysql插入影响行数"+rows);
//改
string sql5 = "update ft_imei set state=0";
MySqlCommand cmd5 = new MySqlCommand(sql5, conn);
int rows5 = cmd5.ExecuteNonQuery();
Log("mysql修改影响行数" + rows5);
//查
string sql4 = "select * from ft_imei";
MySqlCommand cmd4 = new MySqlCommand(sql4, conn);
MySqlDataReader r= cmd4.ExecuteReader();
Log("mysql查询" );
while (r.Read())
{
Log(""+ r[0]+" "+r[1]);
}
r.Close();
//删
string sql6 = "delete from ft_imei where state=0";
MySqlCommand cmd6 = new MySqlCommand(sql6, conn);
int rows6 = cmd6.ExecuteNonQuery();
Log("mysql删除影响行数" + rows6);
conn.Close();
}
catch (MySql.Data.MySqlClient.MySqlException ex)
{
Log(ex.Message);
}
}
C#串口采集光照度与温度和湿度
因为光照度与温度和湿度的指令格式一样所以使用双串口。
自动发送间隔和发送的指令,控件失去焦点时自动保存。
可以发送指令,获得温度和湿度,光照度数据,并解析出来。接收到数据自动保存到远程主机上的mysql中。
详细指令看图
5.0版变更
串口2光照度
发送
接收示例01 03 08 00 01 00 00 00 02 00 64 25 3C
这串数
01地址 03命令 08字节
0001是从机地址 0000是表示光照强度没超范围(0001表示超范围)
0002表示光强位2Lux
0064 252c这是效验
所以关键就是中间那2字节 是光照度
3.0版
串口1温度和湿度
发送
接收示例01 02 04 00 00 00 01 C4 0B
串口2光照度
发送
接收示例01 02 04 00 00 00 01 C4 0B