version 1.9, 2003/03/13 19:08:52
|
version 1.11, 2003/03/17 18:35:51
|
Line 396 sub number_of_rows {
|
Line 396 sub number_of_rows {
|
return undef if (! defined(&update_table_info($table_id))); |
return undef if (! defined(&update_table_info($table_id))); |
return $Tables{&translate_id($table_id)}->{'Rows'}; |
return $Tables{&translate_id($table_id)}->{'Rows'}; |
} |
} |
|
############################### |
|
|
|
=pod |
|
|
|
=item &get_dbh() |
|
|
|
Input: nothing |
|
|
|
Returns: the database handler, or undef on error. |
|
|
|
This routine allows the programmer to gain access to the database handler. |
|
Be careful. |
|
|
|
=cut |
|
|
|
############################### |
|
sub get_dbh { |
|
return undef if (! defined(&connect_to_db())); |
|
return $dbh; |
|
} |
|
|
############################### |
############################### |
|
|
Line 539 Input formats:
|
Line 559 Input formats:
|
}, |
}, |
], |
], |
'PRIMARY KEY' => (index_col_name,...), |
'PRIMARY KEY' => (index_col_name,...), |
KEY => { name => 'idx_name', |
KEY => [{ name => 'idx_name', |
columns => (col1,col2,..),}, |
columns => (col1,col2,..),},], |
INDEX => { name => 'idx_name', |
INDEX => [{ name => 'idx_name', |
columns => (col1,col2,..),}, |
columns => (col1,col2,..),},], |
UNIQUE => { index => 'yes', |
UNIQUE => [{ index => 'yes', |
name => 'idx_name', |
name => 'idx_name', |
columns => (col1,col2,..),}, |
columns => (col1,col2,..),},], |
FULLTEXT => { index => 'yes', |
FULLTEXT => [{ index => 'yes', |
name => 'idx_name', |
name => 'idx_name', |
columns => (col1,col2,..),}, |
columns => (col1,col2,..),},], |
|
|
} |
} |
|
|
Line 606 sub create_table {
|
Line 626 sub create_table {
|
push (@Columns,'PRIMARY KEY ('.join(',',@{$table_des->{'PRIMARY KEY'}}) |
push (@Columns,'PRIMARY KEY ('.join(',',@{$table_des->{'PRIMARY KEY'}}) |
.')'); |
.')'); |
} |
} |
foreach ('KEY','INDEX') { |
# |
if (exists($table_des->{$_})) { |
foreach my $indextype ('KEY','INDEX') { |
my $text = $_.' '; |
next if (!exists($table_des->{$indextype})); |
if (exists($table_des->{$_}->{'name'})) { |
foreach my $indexdescription (@{$table_des->{$indextype}}) { |
$text .=$table_des->{$_}->{'name'}; |
my $text = $indextype.' '; |
|
if (exists($indexdescription->{'name'})) { |
|
$text .=$indexdescription->{'name'}; |
} |
} |
$text .= ' ('.join(',',@{$table_des->{$_}->{'columns'}}).')'; |
$text .= ' ('.join(',',@{$indexdescription->{'columns'}}).')'; |
push (@Columns,$text); |
push (@Columns,$text); |
} |
} |
} |
} |
foreach ('UNIQUE','FULLTEXT') { |
# |
if (exists($table_des->{$_})) { |
foreach my $indextype ('UNIQUE','FULLTEXT') { |
my $text = $_.' '; |
next if (! exists($table_des->{$indextype})); |
if (exists($table_des->{$_}->{'index'}) && |
foreach my $indexdescription (@{$table_des->{$indextype}}) { |
$table_des->{$_}->{'index'} eq 'yes') { |
my $text = $indextype.' '; |
|
if (exists($indexdescription->{'index'}) && |
|
$indexdescription->{'index'} eq 'yes') { |
$text .= 'INDEX '; |
$text .= 'INDEX '; |
} |
} |
if (exists($table_des->{$_}->{'name'})) { |
if (exists($indexdescription->{'name'})) { |
$text .=$table_des->{$_}->{'name'}; |
$text .=$indexdescription->{'name'}; |
} |
} |
$text .= ' ('.join(',',@{$table_des->{$_}->{'columns'}}).')'; |
$text .= ' ('.join(',',@{$indexdescription->{'columns'}}).')'; |
push (@Columns,$text); |
push (@Columns,$text); |
} |
} |
} |
} |
|
# |
$request .= "(".join(", ",@Columns).") "; |
$request .= "(".join(", ",@Columns).") "; |
unless($table_des->{'permanent'} eq 'yes') { |
unless($table_des->{'permanent'} eq 'yes') { |
$request.="COMMENT = 'temporary' "; |
$request.="COMMENT = 'temporary' "; |