Index: kernel/classes/ezpersistentobject.php
===================================================================
--- kernel/classes/ezpersistentobject.php	(revision 22693)
+++ kernel/classes/ezpersistentobject.php	(working copy)
@@ -476,7 +476,17 @@
             unset( $use_values_hash );
             $value_text = implode( ", ", $use_values );
 
-            $sql = "INSERT INTO $table ($field_text) VALUES($value_text)";
+            if ( $field_text === '' )
+            {
+                // insert defaults
+                // unfortunatley, "INSERT INTO [dbname] DEFAULT VALUES" does not work on each DBMS
+                $defaults = array_fill( 0, count( $keys ), 'DEFAULT' );
+                $sql = "INSERT INTO $table (" . implode( ', ', $keys ) . " ) VALUES(" . implode( ', ', $defaults ) . ")";
+            }
+            else
+            {
+                $sql = "INSERT INTO $table ($field_text) VALUES($value_text)";
+            }
             $db->query( $sql );
 
             if ( isset( $def["increment_key"] ) &&
