Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.
  • Why the hell would I want to have "DEFAULT NULL" treated as "DEFAULT CURRENT_TIMESTAMP"?

    Because I certainly don't believe that all of my middleware has the exact same time, and I want a single canonical reference for the time I added a row to the database.

    Maybe I'm too lazy always to include now() every time I insert a row into the table, and I'm definitely too lazy to write a stored procedure to insert the row or a trigger to set those values, but the fewer magical things the middleware has to do and the more magical things the database can do consistently, I consider a good thing.

    • I can't say you've provided a convincing argument for why a DEFAULT NULL gets current timestamp or 0 depending on it's position.

      If the the designer has said they want an empty timestamp to default to NULL, the value should be NULL, not whatever the database decides to do with it.

      What if my first timestamp column in a table represents the date that I shipped an order to a customer and the second represents the date it was ordered? If I haven't shipped it to the customer yet ... ? That's one heck of an odd im
      • I can't say you've provided a convincing argument for why a DEFAULT NULL gets current timestamp or 0 depending on it's position.

        True. Likewise, I didn't provide a convincing argument why butterscotch is disgusting, but at least I can defend that position.

    • Yes, that is a good argument showing that it makes perfect sense to use DEFAULT CURRENT_TIMESTAMP.

      However, am I missing something, or did you fail to even notice that the point in question is about DEFAULT NULL (which is being treated the same as DEFAULT CURRENT_TIMESTAMP for some bizarre reason (except when it’s not))?

      • However, am I missing something, or did you fail to even notice that the point in question is about DEFAULT NULL...

        You're right; I did fail to notice that. Somehow I turned it around in my head so that it meant "When you insert no value into this column," which is completely different.