From a6f5211db45fde767c344f1e4936f78a55311c2f Mon Sep 17 00:00:00 2001 From: Michael Bayne Date: Wed, 22 Aug 2007 02:40:44 +0000 Subject: [PATCH] Hack in a default value for integer types so that Postgres doesn't freak out when we add a new non-null integer column. Maybe we should just specify default values for all our integer columns, but decades of programming history point toward zero as a pretty sensible default. --- src/java/com/samskivert/jdbc/depot/SQLBuilder.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/java/com/samskivert/jdbc/depot/SQLBuilder.java b/src/java/com/samskivert/jdbc/depot/SQLBuilder.java index c3f941e..aff0602 100644 --- a/src/java/com/samskivert/jdbc/depot/SQLBuilder.java +++ b/src/java/com/samskivert/jdbc/depot/SQLBuilder.java @@ -164,6 +164,14 @@ public abstract class SQLBuilder // append the default value if one was specified if (defval.length() > 0) { builder.append(" DEFAULT ").append(defval); + + } else if (field.getType().equals(Integer.TYPE) || // TODO: how to do this properly? + field.getType().equals(Integer.class) || + field.getType().equals(Byte.TYPE) || + field.getType().equals(Byte.class) || + field.getType().equals(Short.TYPE) || + field.getType().equals(Short.class)) { + builder.append(" DEFAULT 0"); } }