|
#!/bin/bash |
|
|
|
|
|
# |
|
|
# mysql functions for the bash |
|
|
# Version 0.1 |
|
|
# |
|
|
# Niels Rogalla <niro@magellan-linux.de> |
|
|
# |
|
1 |
# $Id$ |
# $Id$ |
2 |
|
|
3 |
mysql_command() |
mysql_command() |
4 |
{ |
{ |
5 |
|
local sql_user |
6 |
local SQL_USER |
local sql_pass |
7 |
local SQL_PASS |
local sql_host |
8 |
local SQL_HOST |
local sql_db |
9 |
local SQL_DB |
local sql_command |
10 |
local SQL_COMMAND |
|
11 |
|
sql_user=$1 |
12 |
SQL_USER=$1 |
sql_pass=$2 |
13 |
SQL_PASS=$2 |
sql_host=$3 |
14 |
SQL_HOST=$3 |
sql_db=$4 |
15 |
SQL_DB=$4 |
sql_command=$5 |
16 |
SQL_COMMAND=$5 |
|
17 |
|
#fallback (sql_opts not, they are optional ) |
18 |
#fallback (SQL_OPTS not, they are optional ) |
if [ -z "${sql_user}" \ |
19 |
if [ -z "${SQL_USER}" \ |
-o -z "${sql_pass}" \ |
20 |
-o -z "${SQL_PASS}" \ |
-o -z "${sql_host}" \ |
21 |
-o -z "${SQL_HOST}" \ |
-o -z "${sql_db}" \ |
22 |
-o -z "${SQL_DB}" \ |
-o -z "${sql_command}" ] |
|
-o -z "${SQL_COMMAND}" ] |
|
23 |
then |
then |
24 |
echo |
echo |
25 |
echo "Usage:" |
echo "Usage:" |
27 |
echo |
echo |
28 |
return 1 |
return 1 |
29 |
fi |
fi |
30 |
|
|
31 |
mysql \ |
mysql \ |
32 |
--user="${SQL_USER}" \ |
--user="${sql_user}" \ |
33 |
--password="${SQL_PASS}" \ |
--password="${sql_pass}" \ |
34 |
--host="${SQL_HOST}" \ |
--host="${sql_host}" \ |
35 |
--database="${SQL_DB}" \ |
--database="${sql_db}" \ |
36 |
--batch \ |
--batch \ |
37 |
--skip-column-names \ |
--skip-column-names \ |
38 |
--execute="${SQL_COMMAND}" \ |
--execute="${sql_command}" \ |
39 |
|| return 1 |
|| return 1 |
40 |
|
|
41 |
return 0 |
return 0 |
42 |
} |
} |
43 |
|
|
44 |
mysql_enum_colums() |
mysql_enum_colums() |
45 |
{ |
{ |
46 |
local SQL_USER |
local sql_user |
47 |
local SQL_PASS |
local sql_pass |
48 |
local SQL_HOST |
local sql_host |
49 |
local SQL_DB |
local sql_db |
50 |
local SQL_TABLE |
local sql_table |
51 |
|
|
52 |
local SHOWTABLES |
local showtables |
53 |
local i |
local i |
54 |
local read |
local read |
55 |
local field |
local field |
58 |
local key |
local key |
59 |
local default |
local default |
60 |
local extra |
local extra |
61 |
|
|
62 |
SQL_USER=$1 |
sql_user=$1 |
63 |
SQL_PASS=$2 |
sql_pass=$2 |
64 |
SQL_HOST=$3 |
sql_host=$3 |
65 |
SQL_DB=$4 |
sql_db=$4 |
66 |
SQL_TABLE=$5 |
sql_table=$5 |
67 |
|
|
68 |
#show the column names ? |
# show the column names ? |
69 |
if [ -n "${6}" -a "${6}" == "show" ] |
if [ -n "${6}" -a "${6}" == "show" ] |
70 |
then |
then |
71 |
SHOWTABLES=true |
showtables=true |
72 |
else |
else |
73 |
SHOWTABLES=false |
showtables=false |
74 |
fi |
fi |
75 |
|
|
76 |
#fallback (SQL_OPTS not, they are optional ) |
# fallback (sql_opts not, they are optional ) |
77 |
if [ -z "${SQL_USER}" \ |
if [ -z "${sql_user}" \ |
78 |
-o -z "${SQL_PASS}" \ |
-o -z "${sql_pass}" \ |
79 |
-o -z "${SQL_HOST}" \ |
-o -z "${sql_host}" \ |
80 |
-o -z "${SQL_DB}" \ |
-o -z "${sql_db}" \ |
81 |
-o -z "${SQL_TABLE}" ] |
-o -z "${sql_table}" ] |
82 |
then |
then |
83 |
echo |
echo |
84 |
echo "Usage:" |
echo "Usage:" |
91 |
while read field type null key default extra |
while read field type null key default extra |
92 |
do |
do |
93 |
i=${i}+1 |
i=${i}+1 |
94 |
[ "${SHOWTABLES}" == true ] && echo "${field}" |
[ "${showtables}" == true ] && echo "${field}" |
95 |
done << EOF |
done << EOF |
96 |
$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} "show columns from ${SQL_TABLE};") |
$(mysql_command ${sql_user} ${sql_pass} ${sql_host} ${sql_db} "show columns from ${sql_table};") |
97 |
EOF |
EOF |
98 |
[ "${SHOWTABLES}" == true ] || echo "${i}" |
[ "${showtables}" == true ] || echo "${i}" |
99 |
} |
} |
100 |
|
|
101 |
beep3x() |
beep3x() |
148 |
local all_vars |
local all_vars |
149 |
local all_items |
local all_items |
150 |
local i |
local i |
151 |
local COUNT |
local count |
152 |
local where_statement |
local where_statement |
153 |
|
|
154 |
local table="$1" |
local table="$1" |
170 |
echo "error: arrays does not match!" |
echo "error: arrays does not match!" |
171 |
fi |
fi |
172 |
|
|
173 |
COUNT=${#all_vars[*]} |
count=${#all_vars[*]} |
174 |
for ((i=0;i < COUNT; i++)) |
for ((i=0;i < count; i++)) |
175 |
do |
do |
176 |
eval $(echo ${table}_${all_vars[${i}]}=\${all_items[${i}]}) |
eval $(echo ${table}_${all_vars[${i}]}=\${all_items[${i}]}) |
177 |
export ${table}_${all_vars[${i}]} |
export ${table}_${all_vars[${i}]} |