@@ -203,10 +203,10 @@ inline string sql_str(bool bulk, int128 v) { retu
203
203
inline string sql_str (bool bulk, uint128 v) { return string (v); }
204
204
inline string sql_str (bool bulk, float128 v) { return quote_bytea (bulk, string (v)); }
205
205
inline string sql_str (bool bulk, name v) { return quote (bulk, v.value ? string (v) : " " s); }
206
- inline string sql_str (bool bulk, time_point v) { return quote (bulk, string (v)); }
207
- inline string sql_str (bool bulk, time_point_sec v) { return quote (bulk, string (v)); }
208
- inline string sql_str (bool bulk, block_timestamp v) { return quote (bulk, string (v)); }
209
- inline string sql_str (bool bulk, checksum256 v) { return quote (bulk, string (v)); }
206
+ inline string sql_str (bool bulk, time_point v) { return v. microseconds ? quote (bulk, string (v)): null_value (bulk ); }
207
+ inline string sql_str (bool bulk, time_point_sec v) { return v. utc_seconds ? quote (bulk, string (v)): null_value (bulk ); }
208
+ inline string sql_str (bool bulk, block_timestamp v) { return v. slot ? quote (bulk, string (v)) : null_value (bulk ); }
209
+ inline string sql_str (bool bulk, checksum256 v) { return quote (bulk, v. value == checksum256{}. value ? " " : string (v)); }
210
210
inline string sql_str (bool bulk, const public_key& v) { return quote (bulk, public_key_to_string (v)); }
211
211
inline string sql_str (bool bulk, transaction_status v) { return quote (bulk, to_string (v)); }
212
212
0 commit comments