Magellan Linux

Diff of /mcore-src/trunk/mcore-tools/src/include/mysqlfunctions.global.class.in

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2230 by niro, Fri Jan 10 23:53:29 2014 UTC revision 2481 by niro, Thu Sep 10 10:49:15 2015 UTC
# Line 1  Line 1 
 #!/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:"
# Line 36  mysql_command() Line 27  mysql_command()
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
# Line 67  mysql_enum_colums() Line 58  mysql_enum_colums()
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:"
# Line 100  mysql_enum_colums() Line 91  mysql_enum_colums()
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()
# Line 157  evaluate_table() Line 148  evaluate_table()
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"
# Line 179  evaluate_table() Line 170  evaluate_table()
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}]}

Legend:
Removed from v.2230  
changed lines
  Added in v.2481