The root password can be more easily change by the new 'Change Administration Password' page.
---- Changes since 1.420 ----
Display the number of tables and records created when executing SQL for a restore.
+---- Changes since 1.430 ----
+Improved the input for setting the default value for new fields, and added support for CURRENT_TIMESTAMP.
elsif ($type ne 'varchar' && $type ne 'char' && $in{'type'}) {
# Size is optional for new fields of most types
print &ui_table_row($text{'field_size'},
- &ui_opt_textbox("size", undef, $text{'default'}, 10));
+ &ui_opt_textbox("size", undef, 10, $text{'default'}));
}
else {
# Size is one value
[ [ 1, $text{'yes'} ], [ 0, $text{'no'} ] ]));
# Default value
+$defmode = $f->{'default'} eq 'NULL' ? 0 :
+ $f->{'default'} eq 'CURRENT_TIMESTAMP' ? 2 :
+ $f->{'default'} eq '' ? 3 : 1;
+@defs = ( [ 3, $in{'type'} ? $text{'field_defnone'}
+ : $text{'field_defleave'} ],
+ [ 0, 'NULL' ] );
+if ($type eq "timestamp") {
+ push(@defs, [ 2, $text{'field_current'} ]);
+ }
+push(@defs, [ 1, $text{'field_defval'}." ".
+ &ui_textbox("default", $defmode == 1 ? $f->{'default'} : "", 40) ]);
print &ui_table_row($text{'field_default'},
- &ui_textbox("default", $f->{'default'} eq 'NULL' ? '' :
- $f->{'default'}, 40));
+ &ui_radio("default_def", $defmode, \@defs));
# Part of primary key
print &ui_table_row($text{'field_key'},
field_binary=Case sensitive
field_null=Allow nulls?
field_default=Default value
+field_current=Current time
+field_defval=Value
+field_defnone=No default
+field_defleave=Don't change
field_dmode0=None
field_dmode1=Null
field_key=Part of primary key?
$access{'edonly'} && &error($text{'dbase_ecannot'});
&error_setup($text{'field_err'});
+# Build default clause
+if ($in{'default_def'} == 0) {
+ $default = "default NULL";
+ }
+elsif ($in{'default_def'} == 2) {
+ $default = "default CURRENT_TIMESTAMP";
+ }
+elsif ($in{'default_def'} == 3) {
+ $default = $in{'new'} ? "" : "default none";
+ }
+else {
+ $default = "default '$in{'default'}'";
+ }
+
if ($in{'delete'}) {
# delete this field
&execute_sql_logged($in{'db'},
$sql = sprintf "alter table %s add %s %s%s %s %s %s",
"estr($in{'table'}), "estr($in{'field'}), $in{'type'},
$size, $in{'null'} ? '' : 'not null',
- $in{'default'} ne '' ? "default '$in{'default'}'"
- : "default NULL",
+ $default,
$in{'ext'};
&execute_sql_logged($in{'db'}, $sql);
&webmin_log("create", "field", $in{'field'}, \%in);
$sql = sprintf "alter table %s modify %s %s%s %s %s %s",
"estr($in{'table'}), "estr($in{'old'}),
$in{'type'}, $size, $in{'null'} ? 'null' : 'not null',
- $in{'default'} ne '' ? "default '$in{'default'}'" :
- $in{'null'} ? "default NULL" : "",
+ $default,
$in{'ext'};
&execute_sql_logged($in{'db'}, $sql);
if ($in{'old'} ne $in{'field'} ||