adapter_id, adapter_code, adapter_name, adapter_type, host, port, poll_interval_ms, timezone_id, capabilities, (json_extract(capabilities, '$.control') = false) read_only, status, connection_status, last_error_code, last_error_message, last_attempt_at_utc, last_observed_at_utc, create_by, create_time, update_by, update_time, remark, del_flag insert into t_device_adapter(adapter_code, adapter_name, adapter_type, host, port, poll_interval_ms, timezone_id, capabilities, status, connection_status, create_by, create_time, update_by, update_time, remark, del_flag) values(#{adapterCode}, #{adapterName}, #{adapterType}, #{host}, #{port}, #{pollIntervalMs}, #{timezoneId}, #{capabilities}, '0', 'DISCONNECTED', 'system', sysdate(), 'system', sysdate(), #{remark}, 0) on duplicate key update adapter_name=values(adapter_name), adapter_type=values(adapter_type), host=values(host), port=values(port), poll_interval_ms=values(poll_interval_ms), timezone_id=values(timezone_id), capabilities=values(capabilities), status='0', connection_status='DISCONNECTED', last_error_code=null, last_error_message=null, update_by='system', update_time=sysdate(), remark=values(remark), del_flag=0 insert into t_device_adapter(adapter_code, adapter_name, adapter_type, host, port, poll_interval_ms, timezone_id, capabilities, status, connection_status, create_by, create_time, remark, del_flag) values(#{adapterCode}, #{adapterName}, #{adapterType}, #{host}, #{port}, #{pollIntervalMs}, #{timezoneId}, #{capabilities}, #{status}, 'DISCONNECTED', #{createBy}, sysdate(), #{remark}, 0) update t_device_adapter set adapter_name=#{adapterName}, adapter_type=#{adapterType}, host=#{host}, port=#{port}, poll_interval_ms=#{pollIntervalMs}, timezone_id=#{timezoneId}, capabilities=#{capabilities}, connection_status='DISCONNECTED', last_error_code=null, last_error_message=null, update_by=#{updateBy}, update_time=sysdate() where adapter_id=#{adapterId} and del_flag=0 update t_device_adapter set status=#{status}, connection_status='DISCONNECTED', last_error_code=null, last_error_message=null, update_by=#{updateBy}, update_time=sysdate() where adapter_id=#{adapterId} and del_flag=0 update t_device_adapter set connection_status='CONNECTED', last_error_code=null, last_error_message=null, last_attempt_at_utc=#{observedAt}, last_observed_at_utc=#{observedAt}, update_time=sysdate() where adapter_id=#{adapterId} and del_flag=0 update t_device_adapter set connection_status='ERROR', last_error_code=#{errorCode}, last_error_message=left(#{errorMessage}, 500), last_attempt_at_utc=utc_timestamp(3), update_time=sysdate() where adapter_id=#{adapterId} and del_flag=0