anchor.diff:                           :microseconds microseconds))))))
   
   (defun parse-time-interval-string (str)
  +  "Parses the MySQL Text Protocol represetation of a time interval.
  +   /(-)?(h+):(mm):(ss).(µµµµµµ)/"
     (let ((negativep (starts-with str "-")))
       (multiple-value-bind (hours end)
           (parse-integer str :start (if negativep 1 0) :junk-allowed t)
  
positive.code:             microseconds)))
  
  (defun seconds-to-mysql-time-interval (value &optional (microseconds 0))
    (assert (typep value 'integer))
    (let ((negativep (minusp value))
          (value (abs value)))
  
negative.code:       (make-instance 'mysql-date-time)))
  
  (defun parse-date-time-string (str)
    "Parses a date-time-string in one of the following forms and returns a MYSQL-DATE-TIME object.
      \"\" -- All fields = 0
      \"YYYY-MM-DD\" -- All time fields = 0
      \"YYYY-MM-DD hh:mm:ss\" -- Microseconds = 0
      \"YYYY-MM-DD hh:mm:ss.µµµµµµ\""
    (let ((year 0) (month 0) (day 0)
          (hour 0) (minute 0) (second 0)
          (microsecond 0)
  