• !!!


    离开线圈的时候,为0, 没有抓拍,图片的长度为0。根据这一点来判断
    确认~~---

            
    0---没抓拍---离开。------pic的length就为0。 根据这一点来判断有没有抓拍

    int DatabaseOperation::InsertData 这里的  error = conn->Prepare(pds, (MYSQLCHAR*)SQL_COMMAND_INSERTTRAFFIC, SQL_NTS);

        }执行了一个存储过程,这个存储过程决定了插入 vehicle表数据的结果。也就是说你要修改插入vehicleinfo的数据,就要修改inserttrafficdata.sql 这个的存储过程和表结构。

        而且并不是一个简简单单的插入操作,这个问题在于,第一次线圈触发的时候包含图片数据,它是有效的,这时候就应该执行这个存储过程,这个存储过程把数据插入到数据库,因为这时候我们捕捉到的车身长度=0xff,所以我们就在数据中预留了这个数据(比如以-1来替代)。同时把这个trafficID放入到一个队列中(注意,仅仅当traffic的长度不是0切车身长度==0xff的时候才能加进来,这个队列的大小应该为20?)  后面汽车离开线圈的时候又触发了操作了这个操作,我们通过判断图片的length=0来确认这一离开操作。当有这种数据的时候,我们就需要取出traffic id然后与队列中的值进行比较,如果比较到位的情况下,我们就执行数据库的插入操作,把车身长度的数据插入到数据库中。

      在这种情况下,用户服务器的上传策略显然不可能是实时的,也就要求他们必须选择非实时的获取-----我们把实时数据先插入到uploadqueue当中。之后再整合提取给用户。-----这个时间是多长,会不会存在一种情况,我们的终端服务器还还没来得及把数据写入到 数据库中。线程已经把数据发送到用户服务器那边了,对于这种情况如何是好?---显然是一个很麻烦的问题。。。。。

           对于最简单的版本,我们仅仅考虑一个车经过的时候的情况。对于其他情况需要等项目实际动手的时候再进行整合。不然实在有难度。

     原来数据库中的 size就是车长。需要把它改成小数----这个也是不需要的,因为我们数据库中可以将车长保存为分米,所以这个值肯定是整数,如果是这种情况下,终端服务器就不需要对数据格式上进行调整。

    int DatabaseOperation::UpdateModel( 这个函数后面可能需要使用到 

       

  • 相关阅读:
    视频播放
    调用原生硬件 Api 实现照相机 拍照和相册选择 以及拍照上传
    获取设备信息 以及 获取地 理位置
    flutter_html 和 WebView 解析html 和 build.gradle源码
    flutter Dio()网络请求
    AlertDialog 、SimpleDialog、 showModalBottomSheet、showToast 自定义 Dialog
    前端小白页面开发注意事项及小工具(htmlcssjs)
    box-shadow 画叮当猫
    什么是冒泡排序?
    console.log
  • 原文地址:https://www.cnblogs.com/xianqingzh/p/1785534.html
Copyright © 2020-2023  润新知