summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2006-01-15 12:48:24 +0000
committerRobin H. Johnson <robbat2@gentoo.org>2006-01-15 12:48:24 +0000
commit4f8bc4abf1b3e94d8e37e51638bfb76d2195b78a (patch)
tree1a0babad02b26d8e85d7cb5ed92c8f337774cc67
parentImported from /home/gentoo/distfiles/mysql-extras-20051220.tar.bz2. (diff)
downloadmysql-extras-20060115.tar.gz
mysql-extras-20060115.tar.bz2
mysql-extras-20060115.zip
Imported from /home/gentoo/distfiles/mysql-extras-20060115.tar.bz2.mysql-extras-20060115
-rw-r--r--080_all_slot_script-r4.patch82
-rw-r--r--080_all_slot_script-r5.patch532
-rw-r--r--fill_help_tables.sql-5.01548
-rw-r--r--fill_help_tables.sql-5.0.15113
-rw-r--r--index.txt5
5 files changed, 2131 insertions, 149 deletions
diff --git a/080_all_slot_script-r4.patch b/080_all_slot_script-r4.patch
index 8f060b5..ceb858a 100644
--- a/080_all_slot_script-r4.patch
+++ b/080_all_slot_script-r4.patch
@@ -1,7 +1,7 @@
-diff -Naur -Naur mysql-5.1.3-alpha/scripts/Makefile.am mysql-5.1.3-alpha.new/scripts/Makefile.am
---- mysql-5.1.3-alpha/scripts/Makefile.am 2005-11-30 12:00:22.000000000 +0000
-+++ mysql-5.1.3-alpha.new/scripts/Makefile.am 2005-12-05 12:46:49.000000000 +0000
-@@ -64,6 +64,32 @@
+diff -Naur -Naur mysql-5.0.18.orig/scripts/Makefile.am mysql-5.0.18.new/scripts/Makefile.am
+--- mysql-5.0.18.orig/scripts/Makefile.am 2005-12-21 19:39:51.000000000 +0000
++++ mysql-5.0.18.new/scripts/Makefile.am 2006-01-15 12:22:57.000000000 +0000
+@@ -66,6 +66,32 @@
mysqlaccess.conf \
mysqlbug
@@ -34,7 +34,7 @@ diff -Naur -Naur mysql-5.1.3-alpha/scripts/Makefile.am mysql-5.1.3-alpha.new/scr
dist_pkgdata_DATA = fill_help_tables.sql mysql_fix_privilege_tables.sql
# mysqlbug should be distributed built so that people can report build
-@@ -98,8 +124,17 @@
+@@ -100,8 +126,17 @@
.sh:
@RM@ -f $@ $@-t
@@ -52,19 +52,19 @@ diff -Naur -Naur mysql-5.1.3-alpha/scripts/Makefile.am mysql-5.1.3-alpha.new/scr
-e 's!@''sbindir''@!$(sbindir)!g' \
-e 's!@''scriptdir''@!$(bindir)!g' \
-e 's!@''prefix''@!$(prefix)!g' \
-diff -Naur -Naur mysql-5.1.3-alpha/scripts/msql2mysql.sh mysql-5.1.3-alpha.new/scripts/msql2mysql.sh
---- mysql-5.1.3-alpha/scripts/msql2mysql.sh 2005-11-30 12:00:42.000000000 +0000
-+++ mysql-5.1.3-alpha.new/scripts/msql2mysql.sh 2005-12-05 12:46:49.000000000 +0000
+diff -Naur -Naur mysql-5.0.18.orig/scripts/msql2mysql.sh mysql-5.0.18.new/scripts/msql2mysql.sh
+--- mysql-5.0.18.orig/scripts/msql2mysql.sh 2005-12-21 19:40:02.000000000 +0000
++++ mysql-5.0.18.new/scripts/msql2mysql.sh 2006-01-15 12:22:57.000000000 +0000
@@ -13,4 +13,4 @@
# described in the License. Among other things, the License requires that
# the copyright notice and this notice be preserved on all copies.
-@bindir@/replace msqlConnect mysql_connect msqlListDBs mysql_list_dbs msqlNumRows mysql_num_rows msqlFetchRow mysql_fetch_row msqlFetchField mysql_fetch_field msqlFreeResult mysql_free_result msqlListFields mysql_list_fields msqlListTables mysql_list_tables msqlErrMsg 'mysql_error(mysql)' msqlStoreResult mysql_store_result msqlQuery mysql_query msqlField mysql_field msqlSelect mysql_select msqlSelectDB mysql_select_db msqlNumFields mysql_num_fields msqlClose mysql_close msqlDataSeek mysql_data_seek m_field MYSQL_FIELD m_result MYSQL_RES m_row MYSQL_ROW msql mysql mSQL mySQL MSQL MYSQL msqlCreateDB mysql_create_db msqlDropDB mysql_drop_db msqlFieldSeek mysql_field_seek -- $*
+@bindir@/@mybin_replace@ msqlConnect mysql_connect msqlListDBs mysql_list_dbs msqlNumRows mysql_num_rows msqlFetchRow mysql_fetch_row msqlFetchField mysql_fetch_field msqlFreeResult mysql_free_result msqlListFields mysql_list_fields msqlListTables mysql_list_tables msqlErrMsg 'mysql_error(mysql)' msqlStoreResult mysql_store_result msqlQuery mysql_query msqlField mysql_field msqlSelect mysql_select msqlSelectDB mysql_select_db msqlNumFields mysql_num_fields msqlClose mysql_close msqlDataSeek mysql_data_seek m_field MYSQL_FIELD m_result MYSQL_RES m_row MYSQL_ROW msql mysql mSQL mySQL MSQL MYSQL msqlCreateDB mysql_create_db msqlDropDB mysql_drop_db msqlFieldSeek mysql_field_seek -- $*
-diff -Naur -Naur mysql-5.1.3-alpha/scripts/mysql_config.sh mysql-5.1.3-alpha.new/scripts/mysql_config.sh
---- mysql-5.1.3-alpha/scripts/mysql_config.sh 2005-11-30 11:59:57.000000000 +0000
-+++ mysql-5.1.3-alpha.new/scripts/mysql_config.sh 2005-12-05 12:46:49.000000000 +0000
-@@ -77,7 +77,7 @@
+diff -Naur -Naur mysql-5.0.18.orig/scripts/mysql_config.sh mysql-5.0.18.new/scripts/mysql_config.sh
+--- mysql-5.0.18.orig/scripts/mysql_config.sh 2005-12-21 19:39:36.000000000 +0000
++++ mysql-5.0.18.new/scripts/mysql_config.sh 2006-01-15 12:43:37.000000000 +0000
+@@ -77,15 +77,15 @@
me=`get_full_path $0`
@@ -73,9 +73,19 @@ diff -Naur -Naur mysql-5.1.3-alpha/scripts/mysql_config.sh mysql-5.1.3-alpha.new
ldata='@localstatedir@'
execdir='@libexecdir@'
-diff -Naur -Naur mysql-5.1.3-alpha/scripts/mysql_create_system_tables.sh mysql-5.1.3-alpha.new/scripts/mysql_create_system_tables.sh
---- mysql-5.1.3-alpha/scripts/mysql_create_system_tables.sh 2005-11-30 12:00:24.000000000 +0000
-+++ mysql-5.1.3-alpha.new/scripts/mysql_create_system_tables.sh 2005-12-05 12:46:49.000000000 +0000
+ bindir='@bindir@'
+ pkglibdir='@pkglibdir@'
+-fix_path pkglibdir lib/mysql lib
++fix_path pkglibdir "lib${pkglibdir##*lib}" lib/mysql lib
+ pkgincludedir='@pkgincludedir@'
+-fix_path pkgincludedir include/mysql include
++fix_path pkgincludedir "include${pkgincludedir##*include}" include/mysql include
+ version='@VERSION@'
+ socket='@MYSQL_UNIX_ADDR@'
+ port='@MYSQL_TCP_PORT@'
+diff -Naur -Naur mysql-5.0.18.orig/scripts/mysql_create_system_tables.sh mysql-5.0.18.new/scripts/mysql_create_system_tables.sh
+--- mysql-5.0.18.orig/scripts/mysql_create_system_tables.sh 2005-12-21 19:39:52.000000000 +0000
++++ mysql-5.0.18.new/scripts/mysql_create_system_tables.sh 2006-01-15 12:22:57.000000000 +0000
@@ -19,7 +19,7 @@
new context from the manual (from fill_help_tables.sql).
@@ -85,9 +95,9 @@ diff -Naur -Naur mysql-5.1.3-alpha/scripts/mysql_create_system_tables.sh mysql-5
"
exit
fi
-diff -Naur -Naur mysql-5.1.3-alpha/scripts/mysql_fix_privilege_tables.sh mysql-5.1.3-alpha.new/scripts/mysql_fix_privilege_tables.sh
---- mysql-5.1.3-alpha/scripts/mysql_fix_privilege_tables.sh 2005-11-30 12:00:37.000000000 +0000
-+++ mysql-5.1.3-alpha.new/scripts/mysql_fix_privilege_tables.sh 2005-12-05 12:46:49.000000000 +0000
+diff -Naur -Naur mysql-5.0.18.orig/scripts/mysql_fix_privilege_tables.sh mysql-5.0.18.new/scripts/mysql_fix_privilege_tables.sh
+--- mysql-5.0.18.orig/scripts/mysql_fix_privilege_tables.sh 2005-12-21 19:39:59.000000000 +0000
++++ mysql-5.0.18.new/scripts/mysql_fix_privilege_tables.sh 2006-01-15 12:22:57.000000000 +0000
@@ -77,17 +77,17 @@
# Get first arguments from the my.cfg file, groups [mysqld] and
# [mysql_install_db], and then merge with the command line arguments
@@ -128,9 +138,9 @@ diff -Naur -Naur mysql-5.1.3-alpha/scripts/mysql_fix_privilege_tables.sh mysql-5
$basedir/scripts $pkgdatadir . "$dirname"
do
if test -f $i/$file
-diff -Naur -Naur mysql-5.1.3-alpha/scripts/mysql_install_db.sh mysql-5.1.3-alpha.new/scripts/mysql_install_db.sh
---- mysql-5.1.3-alpha/scripts/mysql_install_db.sh 2005-11-30 12:00:43.000000000 +0000
-+++ mysql-5.1.3-alpha.new/scripts/mysql_install_db.sh 2005-12-05 12:46:49.000000000 +0000
+diff -Naur -Naur mysql-5.0.18.orig/scripts/mysql_install_db.sh mysql-5.0.18.new/scripts/mysql_install_db.sh
+--- mysql-5.0.18.orig/scripts/mysql_install_db.sh 2005-12-21 19:39:42.000000000 +0000
++++ mysql-5.0.18.new/scripts/mysql_install_db.sh 2006-01-15 12:22:57.000000000 +0000
@@ -57,20 +57,20 @@
# Get first arguments from the my.cfg file, groups [mysqld] and
@@ -288,9 +298,9 @@ diff -Naur -Naur mysql-5.1.3-alpha/scripts/mysql_install_db.sh mysql-5.1.3-alpha
+ echo "And if you do mail us, you MUST use the @scriptdir@/@mybin_mysqlbug@ script!"
exit 1
fi
-diff -Naur -Naur mysql-5.1.3-alpha/scripts/mysql_secure_installation.sh mysql-5.1.3-alpha.new/scripts/mysql_secure_installation.sh
---- mysql-5.1.3-alpha/scripts/mysql_secure_installation.sh 2005-11-30 12:00:42.000000000 +0000
-+++ mysql-5.1.3-alpha.new/scripts/mysql_secure_installation.sh 2005-12-05 12:46:49.000000000 +0000
+diff -Naur -Naur mysql-5.0.18.orig/scripts/mysql_secure_installation.sh mysql-5.0.18.new/scripts/mysql_secure_installation.sh
+--- mysql-5.0.18.orig/scripts/mysql_secure_installation.sh 2005-12-21 19:40:02.000000000 +0000
++++ mysql-5.0.18.new/scripts/mysql_secure_installation.sh 2006-01-15 12:22:57.000000000 +0000
@@ -30,7 +30,7 @@
do_query() {
@@ -300,9 +310,9 @@ diff -Naur -Naur mysql-5.1.3-alpha/scripts/mysql_secure_installation.sh mysql-5.
return $?
}
-diff -Naur -Naur mysql-5.1.3-alpha/scripts/mysqlaccess.sh mysql-5.1.3-alpha.new/scripts/mysqlaccess.sh
---- mysql-5.1.3-alpha/scripts/mysqlaccess.sh 2005-11-30 11:59:56.000000000 +0000
-+++ mysql-5.1.3-alpha.new/scripts/mysqlaccess.sh 2005-12-05 12:46:49.000000000 +0000
+diff -Naur -Naur mysql-5.0.18.orig/scripts/mysqlaccess.sh mysql-5.0.18.new/scripts/mysqlaccess.sh
+--- mysql-5.0.18.orig/scripts/mysqlaccess.sh 2005-12-21 19:39:32.000000000 +0000
++++ mysql-5.0.18.new/scripts/mysqlaccess.sh 2006-01-15 12:22:57.000000000 +0000
@@ -17,7 +17,7 @@
# ****************************
@@ -321,9 +331,9 @@ diff -Naur -Naur mysql-5.1.3-alpha/scripts/mysqlaccess.sh mysql-5.1.3-alpha.new/
#path to mysqldump executable
$MYSQLADMIN= 'http://foobar.com/MySQLadmin';
-diff -Naur -Naur mysql-5.1.3-alpha/scripts/mysqld_multi.sh mysql-5.1.3-alpha.new/scripts/mysqld_multi.sh
---- mysql-5.1.3-alpha/scripts/mysqld_multi.sh 2005-11-30 12:00:27.000000000 +0000
-+++ mysql-5.1.3-alpha.new/scripts/mysqld_multi.sh 2005-12-05 12:46:49.000000000 +0000
+diff -Naur -Naur mysql-5.0.18.orig/scripts/mysqld_multi.sh mysql-5.0.18.new/scripts/mysqld_multi.sh
+--- mysql-5.0.18.orig/scripts/mysqld_multi.sh 2005-12-21 19:39:55.000000000 +0000
++++ mysql-5.0.18.new/scripts/mysqld_multi.sh 2006-01-15 12:22:57.000000000 +0000
@@ -10,8 +10,8 @@
$opt_example = 0;
$opt_help = 0;
@@ -409,9 +419,9 @@ diff -Naur -Naur mysql-5.1.3-alpha/scripts/mysqld_multi.sh mysql-5.1.3-alpha.new
$com.= defined($opt_config_file) ? " --config-file=$opt_config_file" : "";
$com.= " $groups[$i]";
@options = `$com`;
-diff -Naur -Naur mysql-5.1.3-alpha/scripts/mysqld_safe.sh mysql-5.1.3-alpha.new/scripts/mysqld_safe.sh
---- mysql-5.1.3-alpha/scripts/mysqld_safe.sh 2005-11-30 12:00:42.000000000 +0000
-+++ mysql-5.1.3-alpha.new/scripts/mysqld_safe.sh 2005-12-05 12:46:49.000000000 +0000
+diff -Naur -Naur mysql-5.0.18.orig/scripts/mysqld_safe.sh mysql-5.0.18.new/scripts/mysqld_safe.sh
+--- mysql-5.0.18.orig/scripts/mysqld_safe.sh 2005-12-21 19:40:02.000000000 +0000
++++ mysql-5.0.18.new/scripts/mysqld_safe.sh 2006-01-15 12:22:57.000000000 +0000
@@ -87,7 +87,7 @@
then
MYSQLD="mysqld-$tmp"
@@ -497,9 +507,9 @@ diff -Naur -Naur mysql-5.1.3-alpha/scripts/mysqld_safe.sh mysql-5.1.3-alpha.new/
echo "Starting $MYSQLD daemon with databases from $DATADIR"
-diff -Naur -Naur mysql-5.1.3-alpha/scripts/mysqldumpslow.sh mysql-5.1.3-alpha.new/scripts/mysqldumpslow.sh
---- mysql-5.1.3-alpha/scripts/mysqldumpslow.sh 2005-11-30 12:00:43.000000000 +0000
-+++ mysql-5.1.3-alpha.new/scripts/mysqldumpslow.sh 2005-12-05 12:46:49.000000000 +0000
+diff -Naur -Naur mysql-5.0.18.orig/scripts/mysqldumpslow.sh mysql-5.0.18.new/scripts/mysqldumpslow.sh
+--- mysql-5.0.18.orig/scripts/mysqldumpslow.sh 2005-12-21 19:40:05.000000000 +0000
++++ mysql-5.0.18.new/scripts/mysqldumpslow.sh 2006-01-15 12:22:57.000000000 +0000
@@ -34,16 +34,16 @@
$opt{'help'} and usage();
diff --git a/080_all_slot_script-r5.patch b/080_all_slot_script-r5.patch
new file mode 100644
index 0000000..29abc58
--- /dev/null
+++ b/080_all_slot_script-r5.patch
@@ -0,0 +1,532 @@
+diff -Naur -Naur mysql-4.1.16.orig/scripts/Makefile.am mysql-4.1.16.new/scripts/Makefile.am
+--- mysql-4.1.16.orig/scripts/Makefile.am 2005-11-30 20:36:23.000000000 +0000
++++ mysql-4.1.16.new/scripts/Makefile.am 2006-01-14 18:32:53.000000000 +0000
+@@ -66,6 +66,32 @@
+ mysqlaccess.conf \
+ mysqlbug
+
++sql_libexec_REPLACE = mysqld
++instance_manager_libexec_REPLACE= mysqlmanager
++client_bin_REPLACE = mysql mysqladmin mysqlcheck mysqlshow \
++ mysqldump mysqlimport mysqltest mysqlbinlog \
++ mysqltestmanagerc mysqltestmanager-pwgen
++extra_bin_REPLACE = replace comp_err perror resolveip my_print_defaults \
++ resolve_stack_dump mysql_waitpid innochecksum
++myisam_bin_REPLACE = myisamchk myisamlog myisampack myisam_ftdump
++tools_bin_REPLACE = mysqltestmanager
++cw_cpcd_ndbbin_REPLACE = ndb_cpcd
++kernel_ndbbin_REPLACE = ndbd
++mgmsrv_ndbbin_REPLACE = ndb_mgmd
++sql_bin_REPLACE = mysql_tzinfo_to_sql
++tests_bin_REPLACE = mysql_client_test
++ndbtools_bin_REPLACE = ndb_test_platform ndb_waiter \
++ ndb_drop_table ndb_delete_all \
++ ndb_desc ndb_drop_index \
++ ndb_show_tables ndb_select_all \
++ ndb_select_count ndb_restore ndb_config
++EXTRA_REPLACE_BIN = safe_mysqld mysqlanalyze mysqloptimize mysqlrepair mysqld-max isamchk \
++ $(sql_libexec_REPLACE) $(ndbtools_bin_REPLACE) \
++ $(instance_manager_libexec_REPLACE) $(client_bin_REPLACE) \
++ $(extra_bin_REPLACE) $(myisam_bin_REPLACE) $(tools_bin_REPLACE) \
++ $(cw_cpcd_ndbbin_REPLACE) $(kernel_ndbbin_REPLACE) $(mgmsrv_ndbbin_REPLACE) \
++ $(sql_bin_REPLACE) $(tests_bin_REPLACE)
++
+ dist_pkgdata_DATA = fill_help_tables.sql mysql_fix_privilege_tables.sql
+
+ # mysqlbug should be distributed built so that people can report build
+@@ -100,8 +126,17 @@
+
+ .sh:
+ @RM@ -f $@ $@-t
++ bin_REPLACE='';\
++ list='$(EXTRA_SCRIPTS) $(EXTRA_REPLACE_BIN)'; \
++ for p in $${list}; do \
++ f1=$${p/\.sh}; \
++ f2=`echo "$${p}" | @SED@ -e 's|\.sh$$||' -e 's|^.*/||;$(transform)'`; \
++ bin_REPLACE="$${bin_REPLACE}s!@mybin_$${f1}@!$${f2}!g;";\
++ done; \
+ @SED@ \
++ -e "$${bin_REPLACE}" \
+ -e 's!@''bindir''@!$(bindir)!g' \
++ -e 's!@''sharedstatedir''@!$(sharedstatedir)!g' \
+ -e 's!@''sbindir''@!$(sbindir)!g' \
+ -e 's!@''scriptdir''@!$(bindir)!g' \
+ -e 's!@''prefix''@!$(prefix)!g' \
+diff -Naur -Naur mysql-4.1.16.orig/scripts/msql2mysql.sh mysql-4.1.16.new/scripts/msql2mysql.sh
+--- mysql-4.1.16.orig/scripts/msql2mysql.sh 2005-11-30 20:36:34.000000000 +0000
++++ mysql-4.1.16.new/scripts/msql2mysql.sh 2006-01-14 18:32:53.000000000 +0000
+@@ -13,4 +13,4 @@
+ # described in the License. Among other things, the License requires that
+ # the copyright notice and this notice be preserved on all copies.
+
+-@bindir@/replace msqlConnect mysql_connect msqlListDBs mysql_list_dbs msqlNumRows mysql_num_rows msqlFetchRow mysql_fetch_row msqlFetchField mysql_fetch_field msqlFreeResult mysql_free_result msqlListFields mysql_list_fields msqlListTables mysql_list_tables msqlErrMsg 'mysql_error(mysql)' msqlStoreResult mysql_store_result msqlQuery mysql_query msqlField mysql_field msqlSelect mysql_select msqlSelectDB mysql_select_db msqlNumFields mysql_num_fields msqlClose mysql_close msqlDataSeek mysql_data_seek m_field MYSQL_FIELD m_result MYSQL_RES m_row MYSQL_ROW msql mysql mSQL mySQL MSQL MYSQL msqlCreateDB mysql_create_db msqlDropDB mysql_drop_db msqlFieldSeek mysql_field_seek -- $*
++@bindir@/@mybin_replace@ msqlConnect mysql_connect msqlListDBs mysql_list_dbs msqlNumRows mysql_num_rows msqlFetchRow mysql_fetch_row msqlFetchField mysql_fetch_field msqlFreeResult mysql_free_result msqlListFields mysql_list_fields msqlListTables mysql_list_tables msqlErrMsg 'mysql_error(mysql)' msqlStoreResult mysql_store_result msqlQuery mysql_query msqlField mysql_field msqlSelect mysql_select msqlSelectDB mysql_select_db msqlNumFields mysql_num_fields msqlClose mysql_close msqlDataSeek mysql_data_seek m_field MYSQL_FIELD m_result MYSQL_RES m_row MYSQL_ROW msql mysql mSQL mySQL MSQL MYSQL msqlCreateDB mysql_create_db msqlDropDB mysql_drop_db msqlFieldSeek mysql_field_seek -- $*
+diff -Naur -Naur mysql-4.1.16.orig/scripts/mysql_config.sh mysql-4.1.16.new/scripts/mysql_config.sh
+--- mysql-4.1.16.orig/scripts/mysql_config.sh 2005-11-30 20:36:06.000000000 +0000
++++ mysql-4.1.16.new/scripts/mysql_config.sh 2006-01-14 18:32:53.000000000 +0000
+@@ -77,7 +77,7 @@
+
+ me=`get_full_path $0`
+
+-basedir=`echo $me | sed -e 's;/bin/mysql_config;;'`
++basedir=`echo $me | sed -e 's;/bin/@mybin_mysql_config@;;'`
+
+ ldata='@localstatedir@'
+ execdir='@libexecdir@'
+diff -Naur -Naur mysql-4.1.16.orig/scripts/mysql_create_system_tables.sh mysql-4.1.16.new/scripts/mysql_create_system_tables.sh
+--- mysql-4.1.16.orig/scripts/mysql_create_system_tables.sh 2005-11-30 20:36:27.000000000 +0000
++++ mysql-4.1.16.new/scripts/mysql_create_system_tables.sh 2006-01-14 18:32:53.000000000 +0000
+@@ -19,7 +19,7 @@
+ new context from the manual (from fill_help_tables.sql).
+
+ Usage:
+- mysql_create_system_tables [test|verbose|real] <path to mysql-database directory> <hostname> <windows option>
++ @mybin_mysql_create_system_tables@ [test|verbose|real] <path to mysql-database directory> <hostname> <windows option>
+ "
+ exit
+ fi
+diff -Naur -Naur mysql-4.1.16.orig/scripts/mysql_fix_privilege_tables.sh mysql-4.1.16.new/scripts/mysql_fix_privilege_tables.sh
+--- mysql-4.1.16.orig/scripts/mysql_fix_privilege_tables.sh 2005-11-30 20:36:32.000000000 +0000
++++ mysql-4.1.16.new/scripts/mysql_fix_privilege_tables.sh 2006-01-14 18:32:53.000000000 +0000
+@@ -76,17 +76,17 @@
+ # Get first arguments from the my.cfg file, groups [mysqld] and
+ # [mysql_install_db], and then merge with the command line arguments
+
+-print_defaults=my_print_defaults
++print_defaults=@mybin_my_print_defaults@
+ for dir in ./bin @bindir@ @bindir@ extra $print_defaults_bindir/../bin $print_defaults_bindir/../extra
+ do
+- if test -x $dir/my_print_defaults
++ if test -x $dir/@mybin_my_print_defaults@
+ then
+- print_defaults="$dir/my_print_defaults"
++ print_defaults="$dir/@mybin_my_print_defaults@"
+ break
+ fi
+ done
+
+-parse_arguments `$print_defaults $defaults mysql_install_db mysql_fix_privilege_tables`
++parse_arguments `$print_defaults $defaults @mybin_mysql_install_db@ @mybin_mysql_fix_privilege_tables@`
+ parse_arguments PICK-ARGS-FROM-ARGV "$@"
+
+ if test -z "$basedir"
+@@ -119,7 +119,7 @@
+ password=$old_style_password
+ fi
+
+-cmd="$bindir/mysql --no-defaults --force --user=$user --host=$host"
++cmd="$bindir/@mybin_mysql@ --no-defaults --force --user=$user --host=$host"
+ if test ! -z "$password" ; then
+ cmd="$cmd --password=$password"
+ fi
+@@ -137,7 +137,7 @@
+ fi
+
+ # Find where first mysql_fix_privilege_tables.sql is located
+-for i in $basedir/support-files $basedir/share $basedir/share/mysql \
++for i in @sharedstatedir@ $basedir/support-files $basedir/share $basedir/share/mysql \
+ $basedir/scripts @pkgdatadir@ . ./scripts
+ do
+ if test -f $i/$file
+diff -Naur -Naur mysql-4.1.16.orig/scripts/mysql_install_db.sh mysql-4.1.16.new/scripts/mysql_install_db.sh
+--- mysql-4.1.16.orig/scripts/mysql_install_db.sh 2005-11-30 20:36:14.000000000 +0000
++++ mysql-4.1.16.new/scripts/mysql_install_db.sh 2006-01-14 18:32:53.000000000 +0000
+@@ -57,20 +57,20 @@
+
+ # Get first arguments from the my.cfg file, groups [mysqld] and
+ # [mysql_install_db], and then merge with the command line arguments
+-if test -x ./bin/my_print_defaults
++if test -x "./bin/@mybin_my_print_defaults@"
+ then
+- print_defaults="./bin/my_print_defaults"
+-elif test -x ./extra/my_print_defaults
++ print_defaults="./bin/@mybin_my_print_defaults@"
++elif test -x "./extra/@mybin_my_print_defaults@"
+ then
+- print_defaults="./extra/my_print_defaults"
+-elif test -x @bindir@/my_print_defaults
++ print_defaults="./extra/@mybin_my_print_defaults@"
++elif test -x "@bindir@/@mybin_my_print_defaults@"
+ then
+- print_defaults="@bindir@/my_print_defaults"
+-elif test -x @bindir@/mysql_print_defaults
++ print_defaults="@bindir@/@mybin_my_print_defaults@"
++elif test -x "@bindir@/@mybin_my_print_defaults@"
+ then
+- print_defaults="@bindir@/mysql_print_defaults"
++ print_defaults="@bindir@/@mybin_my_print_defaults@"
+ else
+- print_defaults="my_print_defaults"
++ print_defaults="@mybin_my_print_defaults@"
+ fi
+
+ args=
+@@ -94,10 +94,10 @@
+ pkgdatadir=@pkgdatadir@
+ else
+ bindir="$basedir/bin"
+- if test -x "$basedir/libexec/mysqld"
++ if test -x "$basedir/libexec/@mybin_mysqld@"
+ then
+ execdir="$basedir/libexec"
+- elif test -x "$basedir/sbin/mysqld"
++ elif test -x "$basedir/sbin/@mybin_mysqld@"
+ then
+ execdir="$basedir/sbin"
+ else
+@@ -106,7 +106,7 @@
+ fi
+
+ # find fill_help_tables.sh
+-for i in $basedir/support-files $basedir/share $basedir/share/mysql $basedir/scripts `pwd` `pwd`/scripts @pkgdatadir@
++for i in @sharedstatedir@ $basedir/support-files $basedir/share $basedir/share/mysql $basedir/scripts `pwd` `pwd`/scripts @pkgdatadir@
+ do
+ if test -f $i/fill_help_tables.sql
+ then
+@@ -123,13 +123,13 @@
+ fi
+
+ mdata=$ldata/mysql
+-mysqld=$execdir/mysqld
++mysqld=$execdir/@mybin_mysqld@
+ mysqld_opt=""
+ scriptdir=$bindir
+
+ if test "$windows" = 1
+ then
+- mysqld="./sql/mysqld"
++ mysqld="./sql/@mybin_mysqld@"
+ mysqld_opt="--language=./sql/share/english"
+ scriptdir="./scripts"
+ fi
+@@ -153,14 +153,14 @@
+ # Check if hostname is valid
+ if test "$windows" = 0 -a "$in_rpm" = 0 -a $force = 0
+ then
+- resolved=`$bindir/resolveip $hostname 2>&1`
++ resolved=`$bindir/@mybin_resolveip@ $hostname 2>&1`
+ if [ $? -ne 0 ]
+ then
+- resolved=`$bindir/resolveip localhost 2>&1`
++ resolved=`$bindir/@mybin_resolveip@ localhost 2>&1`
+ if [ $? -ne 0 ]
+ then
+ echo "Neither host '$hostname' nor 'localhost' could be looked up with"
+- echo "$bindir/resolveip"
++ echo "$bindir/@mybin_resolveip@"
+ echo "Please configure the 'hostname' command to return a correct hostname."
+ echo "If you want to solve this at a later stage, restart this script with"
+ echo "the --force option"
+@@ -168,7 +168,7 @@
+ fi
+ echo "WARNING: The host '$hostname' could not be looked up with resolveip."
+ echo "This probably means that your libc libraries are not 100 % compatible"
+- echo "with this binary MySQL version. The MySQL daemon, mysqld, should work"
++ echo "with this binary MySQL version. The MySQL daemon, @mybin_mysqld@, should work"
+ echo "normally with the exception that host name resolving will not work."
+ echo "This means that you should use IP addresses instead of hostnames"
+ echo "when specifying MySQL privileges !"
+@@ -213,7 +213,7 @@
+ mysqld_install_cmd_line="$mysqld $defaults $mysqld_opt --bootstrap \
+ --skip-grant-tables --basedir=$basedir --datadir=$ldata --skip-innodb \
+ --skip-bdb --skip-ndbcluster $args --max_allowed_packet=8M --net_buffer_length=16K"
+-if $scriptdir/mysql_create_system_tables $create_option $mdata $hostname $windows \
++if $scriptdir/@mybin_mysql_create_system_tables@ $create_option $mdata $hostname $windows \
+ | eval "$mysqld_install_cmd_line"
+ then
+ if test -n "$fill_help_tables"
+@@ -243,8 +243,8 @@
+ then
+ echo "PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !"
+ echo "To do so, start the server, then issue the following commands:"
+- echo "$bindir/mysqladmin -u root password 'new-password'"
+- echo "$bindir/mysqladmin -u root -h $hostname password 'new-password'"
++ echo "$bindir/@mybin_mysqladmin@ -u root password 'new-password'"
++ echo "$bindir/@mybin_mysqladmin@ -u root -h $hostname password 'new-password'"
+ echo "See the manual for more instructions."
+ #
+ # Print message about upgrading unless we have created a new db table.
+@@ -252,14 +252,14 @@
+ then
+ echo
+ echo "NOTE: If you are upgrading from a MySQL <= 3.22.10 you should run"
+- echo "the $bindir/mysql_fix_privilege_tables. Otherwise you will not be"
++ echo "the $bindir/@mybin_mysql_fix_privilege_tables@. Otherwise you will not be"
+ echo "able to use the new GRANT command!"
+ fi
+ echo
+ if test "$in_rpm" = "0"
+ then
+ echo "You can start the MySQL daemon with:"
+- echo "cd @prefix@ ; $bindir/mysqld_safe &"
++ echo "cd @prefix@ ; $bindir/@mybin_mysqld_safe@ &"
+ echo
+ echo "You can test the MySQL daemon with the benchmarks in the 'sql-bench' directory:"
+ echo "cd sql-bench ; perl run-all-tests"
+@@ -279,13 +279,13 @@
+ echo "You can also try to start the mysqld daemon with:"
+ echo "$mysqld --skip-grant &"
+ echo "You can use the command line tool"
+- echo "$bindir/mysql to connect to the mysql"
++ echo "$bindir/@mybin_mysql@ to connect to the mysql"
+ echo "database and look at the grant tables:"
+ echo
+- echo "shell> $bindir/mysql -u root mysql"
++ echo "shell> $bindir/@mybin_mysql@ -u root mysql"
+ echo "mysql> show tables"
+ echo
+- echo "Try 'mysqld --help' if you have problems with paths. Using --log"
++ echo "Try '@mybin_mysqld@ --help' if you have problems with paths. Using --log"
+ echo "gives you a log in $ldata that may be helpful."
+ echo
+ echo "The latest information about MySQL is available on the web at"
+@@ -294,6 +294,6 @@
+ echo "and the manual section that describes problems on your OS."
+ echo "Another information source is the MySQL email archive."
+ echo "Please check all of the above before mailing us!"
+- echo "And if you do mail us, you MUST use the @scriptdir@/mysqlbug script!"
++ echo "And if you do mail us, you MUST use the @scriptdir@/@mybin_mysqlbug@ script!"
+ exit 1
+ fi
+diff -Naur -Naur mysql-4.1.16.orig/scripts/mysql_secure_installation.sh mysql-4.1.16.new/scripts/mysql_secure_installation.sh
+--- mysql-4.1.16.orig/scripts/mysql_secure_installation.sh 2005-11-30 20:36:34.000000000 +0000
++++ mysql-4.1.16.new/scripts/mysql_secure_installation.sh 2006-01-14 18:32:53.000000000 +0000
+@@ -30,7 +30,7 @@
+
+ do_query() {
+ echo $1 >$command
+- mysql --defaults-file=$config <$command
++ @mybin_mysql@ --defaults-file=$config <$command
+ return $?
+ }
+
+diff -Naur -Naur mysql-4.1.16.orig/scripts/mysqlaccess.sh mysql-4.1.16.new/scripts/mysqlaccess.sh
+--- mysql-4.1.16.orig/scripts/mysqlaccess.sh 2005-11-30 20:36:05.000000000 +0000
++++ mysql-4.1.16.new/scripts/mysqlaccess.sh 2006-01-14 18:32:53.000000000 +0000
+@@ -17,7 +17,7 @@
+
+ # ****************************
+ # information on MySQL
+- $MYSQL = '@bindir@/mysql'; # path to mysql executable
++ $MYSQL = '@bindir@/@mybin_mysql@'; # path to mysql executable
+ $SERVER = '3.21';
+ $MYSQL_OPT = ' --batch --unbuffered';
+ $ACCESS_DB = 'mysql'; # name of DB with grant-tables
+@@ -32,7 +32,7 @@
+ $ACCESS_U_BCK = 'user_backup';
+ $ACCESS_D_BCK = 'db_backup';
+ $DIFF = '/usr/bin/diff';
+- $MYSQLDUMP = '@bindir@/mysqldump';
++ $MYSQLDUMP = '@bindir@/@mybin_mysqldump@';
+ #path to mysqldump executable
+
+ $MYSQLADMIN= 'http://foobar.com/MySQLadmin';
+diff -Naur -Naur mysql-4.1.16.orig/scripts/mysqld_multi.sh mysql-4.1.16.new/scripts/mysqld_multi.sh
+--- mysql-4.1.16.orig/scripts/mysqld_multi.sh 2005-11-30 20:36:28.000000000 +0000
++++ mysql-4.1.16.new/scripts/mysqld_multi.sh 2006-01-14 18:32:53.000000000 +0000
+@@ -10,8 +10,8 @@
+ $opt_example = 0;
+ $opt_help = 0;
+ $opt_log = undef();
+-$opt_mysqladmin = "@bindir@/mysqladmin";
+-$opt_mysqld = "@libexecdir@/mysqld";
++$opt_mysqladmin = "@bindir@/@mybin_mysqladmin@";
++$opt_mysqld = "@libexecdir@/@mybin_mysqld@";
+ $opt_no_log = 0;
+ $opt_password = undef();
+ $opt_tcp_ip = 0;
+@@ -39,11 +39,11 @@
+ {
+ my ($flag_exit);
+
+- if (!defined(my_which(my_print_defaults)))
++ if (!defined(my_which(@mybin_my_print_defaults@)))
+ {
+ # We can't throw out yet, since --version, --help, or --example may
+ # have been given
+- print "WARNING! my_print_defaults command not found!\n";
++ print "WARNING! @mybin_my_print_defaults@ command not found!\n";
+ print "Please make sure you have this command available and\n";
+ print "in your path. The command is available from the latest\n";
+ print "MySQL distribution.\n";
+@@ -69,9 +69,9 @@
+ }
+ }
+ }
+- my $com= "my_print_defaults ";
++ my $com= "@mybin_my_print_defaults@ ";
+ $com.= "--config-file=$opt_config_file " if (defined($opt_config_file));
+- $com.= "mysqld_multi";
++ $com.= "@mybin_mysqld_multi@";
+ my @defops = `$com`;
+ chop @defops;
+ splice @ARGV, 0, 0, @defops;
+@@ -101,9 +101,9 @@
+ print "Error with an option, see $my_progname --help for more info!\n";
+ exit(1);
+ }
+- if (!defined(my_which(my_print_defaults)))
++ if (!defined(my_which(@mybin_my_print_defaults@)))
+ {
+- print "ABORT: Can't find command 'my_print_defaults'!\n";
++ print "ABORT: Can't find command '@mybin_my_print_defaults@'!\n";
+ print "This command is available from the latest MySQL\n";
+ print "distribution. Please make sure you have the command\n";
+ print "in your PATH.\n";
+@@ -165,7 +165,7 @@
+ {
+ if ($my_print_defaults_exists)
+ {
+- @mysqld_opts= `my_print_defaults mysqld`;
++ @mysqld_opts= `@mybin_my_print_defaults@ mysqld`;
+ chomp @mysqld_opts;
+ foreach my $opt (@mysqld_opts)
+ {
+@@ -266,7 +266,7 @@
+ @groups = &find_groups($groupids);
+ for ($i = 0; defined($groups[$i]); $i++)
+ {
+- $com = "my_print_defaults";
++ $com = "@mybin_my_print_defaults@";
+ $com.= defined($opt_config_file) ? " --config-file=$opt_config_file" : "";
+ $com.= " $groups[$i]";
+ @options = `$com`;
+@@ -295,7 +295,7 @@
+ $tmp.= " '$options[$j]'";
+ }
+ }
+- if ($opt_verbose && $com =~ m/\/safe_mysqld$/ && !$info_sent)
++ if ($opt_verbose && $com =~ m/\/@mybin_safe_mysqld@$/ && !$info_sent)
+ {
+ print "WARNING: safe_mysqld is being used to start mysqld. In this case you ";
+ print "may need to pass\n\"ledir=...\" under groups [mysqldN] to ";
+@@ -366,7 +366,7 @@
+ my ($i, @groups)= @_;
+ my ($mysqladmin_found, $com, $tmp, $j);
+
+- $com = "my_print_defaults";
++ $com = "@mybin_my_print_defaults@";
+ $com.= defined($opt_config_file) ? " --config-file=$opt_config_file" : "";
+ $com.= " $groups[$i]";
+ @options = `$com`;
+diff -Naur -Naur mysql-4.1.16.orig/scripts/mysqld_safe.sh mysql-4.1.16.new/scripts/mysqld_safe.sh
+--- mysql-4.1.16.orig/scripts/mysqld_safe.sh 2005-11-30 20:36:34.000000000 +0000
++++ mysql-4.1.16.new/scripts/mysqld_safe.sh 2006-01-14 18:36:18.000000000 +0000
+@@ -68,7 +68,7 @@
+ then
+ MYSQLD="mysqld-$tmp"
+ else
+- MYSQLD="mysqld"
++ MYSQLD="@mybin_mysqld@"
+ fi
+ ;;
+ --nice=*) niceness=`echo "$arg" | sed -e "s;--nice=;;"` ;;
+@@ -91,13 +91,13 @@
+
+ MY_PWD=`pwd`
+ # Check for the directories we would expect from a binary release install
+-if test -f ./share/mysql/english/errmsg.sys -a -x ./bin/mysqld
++if test -f ./share/mysql/english/errmsg.sys -a -x ./bin/@mybin_mysqld@
+ then
+ MY_BASEDIR_VERSION=$MY_PWD # Where bin, share and data are
+ ledir=$MY_BASEDIR_VERSION/bin # Where mysqld is
+ # Check for the directories we would expect from a source install
+ elif test -f ./share/mysql/english/errmsg.sys -a \
+- -x ./libexec/mysqld
++ -x ./libexec/@mybin_mysqld@
+ then
+ MY_BASEDIR_VERSION=$MY_PWD # Where libexec, share and var are
+ ledir=$MY_BASEDIR_VERSION/libexec # Where mysqld is
+@@ -137,17 +137,17 @@
+
+ # Get first arguments from the my.cnf file, groups [mysqld] and [mysqld_safe]
+ # and then merge with the command line arguments
+-if test -x ./bin/my_print_defaults
++if test -x "./bin/@mybin_my_print_defaults@"
+ then
+- print_defaults="./bin/my_print_defaults"
+-elif test -x @bindir@/my_print_defaults
++ print_defaults="./bin/@mybin_my_print_defaults@"
++elif test -x "@bindir@/@mybin_my_print_defaults@"
+ then
+- print_defaults="@bindir@/my_print_defaults"
+-elif test -x @bindir@/mysql_print_defaults
++ print_defaults="@bindir@/@mybin_my_print_defaults@"
++elif test -x "@bindir@/@mybin_my_print_defaults@"
+ then
+- print_defaults="@bindir@/mysql_print_defaults"
++ print_defaults="@bindir@/@mybin_my_print_defaults@"
+ else
+- print_defaults="my_print_defaults"
++ print_defaults="@mybin_my_print_defaults@"
+ fi
+
+ args=
+@@ -172,11 +172,11 @@
+ # Use the mysqld-max binary by default if the user doesn't specify a binary
+ if test -z "$MYSQLD"
+ then
+- if test -x $ledir/mysqld-max
++ if test -x $ledir/@mybin_mysqld-max@
+ then
+- MYSQLD=mysqld-max
++ MYSQLD=@mybin_mysqld-max@
+ else
+- MYSQLD=mysqld
++ MYSQLD=@mybin_mysqld@
+ fi
+ fi
+
+@@ -185,7 +185,7 @@
+ echo "The file $ledir/$MYSQLD doesn't exist or is not executable"
+ echo "Please do a cd to the mysql installation directory and restart"
+ echo "this script from there as follows:"
+- echo "./bin/mysqld_safe".
++ echo "./bin/@mybin_mysqld_safe@".
+ echo "See http://dev.mysql.com/doc/mysql/en/mysqld_safe.html for more"
+ echo "information"
+ exit 1
+@@ -318,8 +318,8 @@
+ # the manual for details.
+ #
+ # echo "Checking tables in $DATADIR"
+-# $MY_BASEDIR_VERSION/bin/myisamchk --silent --force --fast --medium-check $DATADIR/*/*.MYI
+-# $MY_BASEDIR_VERSION/bin/isamchk --silent --force $DATADIR/*/*.ISM
++# $MY_BASEDIR_VERSION/bin/@mybin_myisamchk@ --silent --force --fast --medium-check $DATADIR/*/*.MYI
++# $MY_BASEDIR_VERSION/bin/@mybin_isamchk@ --silent --force $DATADIR/*/*.ISM
+
+ echo "Starting $MYSQLD daemon with databases from $DATADIR"
+
+diff -Naur -Naur mysql-4.1.16.orig/scripts/mysqldumpslow.sh mysql-4.1.16.new/scripts/mysqldumpslow.sh
+--- mysql-4.1.16.orig/scripts/mysqldumpslow.sh 2005-11-30 20:36:35.000000000 +0000
++++ mysql-4.1.16.new/scripts/mysqldumpslow.sh 2006-01-14 18:32:53.000000000 +0000
+@@ -34,16 +34,16 @@
+ $opt{'help'} and usage();
+
+ unless (@ARGV) {
+- my $defaults = `my_print_defaults mysqld`;
++ my $defaults = `@mybin_my_print_defaults@ mysqld`;
+ my $basedir = ($defaults =~ m/--basedir=(.*)/)[0]
+- or die "Can't determine basedir from 'my_print_defaults mysqld' output: $defaults";
++ or die "Can't determine basedir from '@mybin_my_print_defaults@ mysqld' output: $defaults";
+ warn "basedir=$basedir\n" if $opt{v};
+
+ my $datadir = ($defaults =~ m/--datadir=(.*)/)[0];
+ if (!$datadir or $opt{i}) {
+ # determine the datadir from the instances section of /etc/my.cnf, if any
+- my $instances = `my_print_defaults instances`;
+- die "Can't determine datadir from 'my_print_defaults mysqld' output: $defaults"
++ my $instances = `@mybin_my_print_defaults@ instances`;
++ die "Can't determine datadir from '@mybin_my_print_defaults@ mysqld' output: $defaults"
+ unless $instances;
+ my @instances = ($instances =~ m/^--(\w+)-/mg);
+ die "No -i 'instance_name' specified to select among known instances: @instances.\n"
+@@ -51,7 +51,7 @@
+ die "Instance '$opt{i}' is unknown (known instances: @instances)\n"
+ unless grep { $_ eq $opt{i} } @instances;
+ $datadir = ($instances =~ m/--$opt{i}-datadir=(.*)/)[0]
+- or die "Can't determine --$opt{i}-datadir from 'my_print_defaults instances' output: $instances";
++ or die "Can't determine --$opt{i}-datadir from '@mybin_my_print_defaults@ instances' output: $instances";
+ warn "datadir=$datadir\n" if $opt{v};
+ }
+
diff --git a/fill_help_tables.sql-5.0 b/fill_help_tables.sql-5.0
new file mode 100644
index 0000000..091dbe1
--- /dev/null
+++ b/fill_help_tables.sql-5.0
@@ -0,0 +1,1548 @@
+-- Copyright (C) 2000-2005 MySQL AB
+--
+-- This program is free software; you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation; either version 2 of the License, or
+-- (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+-- GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License
+-- along with this program; if not, write to the Free Software
+-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+-- DO NOT EDIT THIS FILE. It is generated automatically.
+
+delete from help_topic;
+delete from help_category;
+delete from help_keyword;
+delete from help_relation;
+
+insert into help_category (help_category_id,name,parent_category_id,url) values (1,"Geographic",0,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (2,"Polygon properties",29,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (3,"Column Types",30,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (4,"WKT",29,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (5,"Numeric Functions",33,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (6,"MBR",29,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (7,"Control flow functions",33,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (8,"Transactions",30,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (9,"Point properties",29,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (10,"Encryption Functions",33,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (11,"LineString properties",29,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (12,"Logical operators",33,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (13,"Miscellaneous Functions",33,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (14,"Functions and Modifiers for Use with GROUP BY",30,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (15,"Information Functions",33,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (16,"Storage Engines",30,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (17,"Comparison operators",33,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (18,"Bit Functions",33,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (19,"Data Types",30,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (20,"Triggers",30,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (21,"Geometry constructors",29,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (22,"GeometryCollection properties",1,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (23,"Administration",30,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (24,"Data Manipulation",30,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (25,"Geometry relations",29,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (26,"Language Structure",30,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (27,"Date and Time Functions",33,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (28,"WKB",29,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (29,"Geographic Features",30,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (30,"Contents",0,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (31,"Geometry properties",29,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (32,"String Functions",33,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (33,"Functions",30,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (34,"Stored Routines",30,'');
+insert into help_category (help_category_id,name,parent_category_id,url) values (35,"Data Definition",30,'');
+
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (0,24,"JOIN","MySQL supports the following JOIN syntaxes for the table_references\npart of SELECT statements and multiple-table DELETE and UPDATE\nstatements:\n\ntable_references:\n table_reference [, table_reference] ...\n\ntable_reference:\n table_factor\n | join_table\n\ntable_factor:\n tbl_name [[AS] alias]\n [{USE|IGNORE|FORCE} INDEX (key_list)]\n | ( table_references )\n | { OJ table_reference LEFT OUTER JOIN table_reference\n ON conditional_expr }\n\njoin_table:\n table_reference [INNER | CROSS] JOIN table_factor [join_condition]\n | table_reference STRAIGHT_JOIN table_factor\n | table_reference STRAIGHT_JOIN table_factor ON condition\n | table_reference LEFT [OUTER] JOIN table_reference join_condition\n | table_reference NATURAL [LEFT [OUTER]] JOIN table_factor\n | table_reference RIGHT [OUTER] JOIN table_reference join_condition\n | table_reference NATURAL [RIGHT [OUTER]] JOIN table_factor\n\njoin_condition:\n ON conditional_expr\n | USING (column_list)\n\nA table reference is also known as a join expression.\n\nThe syntax of table_factor is extended in comparison with the SQL\nStandard. The latter accepts only table_reference, not a list of them\ninside a pair of parentheses.\n\nThis is a conservative extension if we consider each comma in a list of\ntable_reference items as equivalent to an inner join. For example:\n\nSELECT * FROM t1 LEFT JOIN (t2, t3, t4)\n ON (t2.a=t1.a AND t3.b=t1.b AND t4.c=t1.c)\n\nis equivalent to :\n\nSELECT * FROM t1 LEFT JOIN (t2 CROSS JOIN t3 CROSS JOIN t4)\n ON (t2.a=t1.a AND t3.b=t1.b AND t4.c=t1.c)\n\nIn MySQL, CROSS JOIN is a syntactic equivalent to INNER JOIN (they can\nreplace each other. In standard SQL, they are not equivalent. INNER\nJOIN is used with an ON clause, CROSS JOIN is used otherwise.\n\nIn versions of MySQL prior to 5.0.1, parentheses in table_references\nwere just omitted and all join operations were grouped to the left. In\ngeneral, parentheses can be ignored in join expressions containing only\ninner join operations. As of 5.0.1, nested joins are allowed (see\n[nested-joins]).\n\nFurther changes in join processing were made in 5.0.12 to make MySQL\nmore compliant with standard SQL. These charges are described later in\nthis section.\n","mysql> SELECT table1.* FROM table1\n -> LEFT JOIN table2 ON table1.id=table2.id\n -> WHERE table2.id IS NULL;\n","join");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (1,32,"HEX","Syntax:\nHEX(N_or_S)\n\nIf N_OR_S is a number, returns a string representation of the\nhexadecimal value of N, where N is a longlong (BIGINT) number. This is\nequivalent to CONV(N,10,16).\n\nIf N_OR_S is a string, returns a hexadecimal string representation of\nN_OR_S where each character in N_OR_S is converted to two hexadecimal\ndigits.\n","mysql> SELECT HEX(255);\n -> 'FF'\nmysql> SELECT 0x616263;\n -> 'abc'\nmysql> SELECT HEX('abc');\n -> 616263\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (2,32,"REPLACE","Syntax:\nREPLACE(str,from_str,to_str)\n\nReturns the string str with all occurrences of the string from_str\nreplaced by the string to_str. REPLACE() performs a case-sensitive\nmatch when searching for from_str.\n","mysql> SELECT REPLACE('www.mysql.com', 'w', 'Ww');\n -> 'WwWwWw.mysql.com'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (3,25,"CONTAINS","Contains(g1,g2)\n\nReturns 1 or 0 to indicate whether or not g1 completely contains g2.\n","","functions-that-test-spatial-relationships-between-geometries");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (4,31,"SRID","SRID(g)\n\nReturns an integer indicating the Spatial Reference System ID for the\ngeometry value g.\n\nIn MySQL, the SRID value is just an integer associated with the\ngeometry value. All calculations are done assuming Euclidean (planar)\ngeometry.\n","mysql> SELECT SRID(GeomFromText('LineString(1 1,2 2)',101));\n+-----------------------------------------------+\n| SRID(GeomFromText('LineString(1 1,2 2)',101)) |\n+-----------------------------------------------+\n| 101 |\n+-----------------------------------------------+\n","general-geometry-property-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (5,27,"CURRENT_TIMESTAMP","Syntax:\nCURRENT_TIMESTAMP, CURRENT_TIMESTAMP()\n\nCURRENT_TIMESTAMP and CURRENT_TIMESTAMP() are synonyms for NOW().\n","","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (6,14,"VARIANCE","Syntax:\nVARIANCE(expr)\n\nReturns the population standard variance of expr. This is an extension\nto standard SQL. As of MySQL 5.0.3, the standard SQL function VAR_POP()\ncan be used instead.\n\nVARIANCE() returns NULL if there were no matching rows.\n","","group-by-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (7,14,"VAR_SAMP","Syntax:\nVAR_SAMP(expr)\n\nReturns the sample variance of expr. That is, the denominator is the\nnumber of rows minus one. This function was added in MySQL 5.0.3.\n\nVAR_SAMP() returns NULL if there were no matching rows.\n","","group-by-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (8,32,"CONCAT","Syntax:\nCONCAT(str1,str2,...)\n\nReturns the string that results from concatenating the arguments.\nReturns NULL if any argument is NULL. May have one or more arguments.\nIf all arguments are non-binary strings, the result is a non-binary\nstring. If the arguments include any binary strings, the result is a\nbinary string. A numeric argument is converted to its equivalent binary\nstring form; if you want to avoid that you can use explicit type cast,\nlike in this example: SELECT CONCAT(CAST(int_col AS CHAR), char_col)\n","mysql> SELECT CONCAT('My', 'S', 'QL');\n -> 'MySQL'\nmysql> SELECT CONCAT('My', NULL, 'QL');\n -> NULL\nmysql> SELECT CONCAT(14.3);\n -> '14.3'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (9,29,"GEOMETRY HIERARCHY","Geometry is the base class. It's an abstract class. The instantiable\nsubclasses of Geometry are restricted to zero-, one-, and\ntwo-dimensional geometric objects that exist in two-dimensional\ncoordinate space. All instantiable geometry classes are defined so that\nvalid instances of a geometry class are topologically closed (that is,\nall defined geometries include their boundary).\n\nThe base Geometry class has subclasses for Point, Curve, Surface, and\nGeometryCollection:\n\no Point represents zero-dimensional objects.\n\no Curve represents one-dimensional objects, and has subclass\n LineString, with sub-subclasses Line and LinearRing.\n\no Surface is designed for two-dimensional objects and has subclass\n Polygon.\n\no GeometryCollection has specialized zero-, one-, and two-dimensional\n collection classes named MultiPoint, MultiLineString, and\n MultiPolygon for modeling geometries corresponding to collections of\n Points, LineStrings, and Polygons, respectively. MultiCurve and\n MultiSurface are introduced as abstract superclasses that generalize\n the collection interfaces to handle Curves and Surfaces.\n\nGeometry, Curve, Surface, MultiCurve, and MultiSurface are defined as\nnon-instantiable classes. They define a common set of methods for their\nsubclasses and are included for extensibility.\n\nPoint, LineString, Polygon, GeometryCollection, MultiPoint,\nMultiLineString, and MultiPolygon are instantiable classes.\n","","gis-geometry-class-hierarchy");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (10,32,"CHAR FUNCTION","Syntax:\nCHAR(N,... [USING charset])\n\nCHAR() interprets each argument N as an integer and returns a string\nconsisting of the characters given by the code values of those\nintegers. NULL values are skipped.\nAs of MySQL 5.0.15, CHAR() arguments larger than 255 are converted into\nmultiple result bytes. For example, CHAR(256) is equivalent to\nCHAR(1,0), and CHAR(256*256) is equivalent to CHAR(1,0,0):\n\nmysql> SELECT HEX(CHAR(1,0)), HEX(CHAR(256));\n+----------------+----------------+\n| HEX(CHAR(1,0)) | HEX(CHAR(256)) |\n+----------------+----------------+\n| 0100 | 0100 |\n+----------------+----------------+\nmysql> SELECT HEX(CHAR(1,0,0)), HEX(CHAR(256*256));\n+------------------+--------------------+\n| HEX(CHAR(1,0,0)) | HEX(CHAR(256*256)) |\n+------------------+--------------------+\n| 010000 | 010000 |\n+------------------+--------------------+\n\nCHAR() returns a binary string. To produce a string in a given\ncharacter set, the optional USING clause may be used:\n\nmysql> SELECT CHARSET(CHAR(0x65)), CHARSET(CHAR(0x65 USING utf8));\n+---------------------+--------------------------------+\n| CHARSET(CHAR(0x65)) | CHARSET(CHAR(0x65 USING utf8)) |\n+---------------------+--------------------------------+\n| binary | utf8 |\n+---------------------+--------------------------------+\n\nIf USING is given and the result string is illegal for the given\ncharacter set, a warning is issued. Also if strict SQL mode is enabled,\nthe result from CHAR() becomes NULL.\n\nBefore MySQL 5.0.15, CHAR() returns a string in the connection\ncharacter set and the USING clause is unavailable. In addition, each\nargument is interpreted modulo 256, so CHAR(256) and CHAR(256*256) both\nare equivalent to CHAR(0).\n","mysql> SELECT CHAR(77,121,83,81,'76');\n -> 'MySQL'\nmysql> SELECT CHAR(77,77.3,'77.3');\n -> 'MMM'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (11,19,"DATETIME","DATETIME\n\nA date and time combination. The supported range is '1000-01-01\n00:00:00' to '9999-12-31 23:59:59'. MySQL displays DATETIME values in\n'YYYY-MM-DD HH:MM:SS' format, but allows you to assign values to\nDATETIME columns using either strings or numbers.\n","","date-and-time-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (12,34,"OPEN","Syntax:\nOPEN cursor_name\n\nThis statement opens a previously declared cursor.\n","","open");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (13,34,"SHOW CREATE PROCEDURE","Syntax:\nSHOW CREATE {PROCEDURE | FUNCTION} sp_name\n\nThis statement is a MySQL extension. Similar to SHOW CREATE TABLE, it\nreturns the exact string that can be used to re-create the named\nroutine.\n","mysql> SHOW CREATE FUNCTION test.hello\\G\n*************************** 1. row ***************************\n Function: hello\n sql_mode:\nCreate Function: CREATE FUNCTION `test`.`hello`(s CHAR(20)) RETURNS CHAR(50)\nRETURN CONCAT('Hello, ',s,'!')\n","show-create-procedure");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (14,19,"INTEGER","INTEGER[(M)] [UNSIGNED] [ZEROFILL]\n\nThis is a synonym for INT.\n","","numeric-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (15,32,"LOWER","Syntax:\nLOWER(str)\n\nReturns the string str with all characters changed to lowercase\naccording to the current character set mapping (the default is cp1252\nLatin1).\n","mysql> SELECT LOWER('QUADRATICALLY');\n -> 'quadratically'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (16,20,"CREATE TRIGGER","Syntax:\nCREATE\n [DEFINER = { user | CURRENT_USER }]\n TRIGGER trigger_name trigger_time trigger_event\n ON tbl_name FOR EACH ROW trigger_stmt\n\nThis statement creates a new trigger. A trigger is a named database\nobject that is associated with a table, and that activates when a\nparticular event occurs for the table. CREATE TRIGGER was added in\nMySQL 5.0.2. Its use requires the SUPER privilege.\n\nThe trigger becomes associated with the table named tbl_name, which\nmust refer to a permanent table. You cannot associate a trigger with a\nTEMPORARY table or a view.\n\nThe DEFINER clause determines the privileges that apply when the\ntrigger is activated.\n\ntrigger_time is the trigger action time. It can be BEFORE or AFTER to\nindicate that the trigger activates before or after the statement that\nactivated it.\n\ntrigger_event indicates the kind of statement that activates the\ntrigger. The trigger_event can be one of the following:\n\no INSERT: The trigger is activated whenever a new row is inserted into\n the table; for example, through INSERT, LOAD DATA, and REPLACE\n statements.\n\no UPDATE: The trigger is activated whenever a row is modified; for\n example, through UPDATE statements.\n\no DELETE: The trigger is activated whenever a row is deleted from the\n table; for example, through DELETE and REPLACE statements.\n","","create-trigger");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (17,24,"SHOW COLUMNS","Syntax:\nSHOW [FULL] COLUMNS FROM tbl_name [FROM db_name] [LIKE 'pattern']\n\nSHOW COLUMNS displays information about the columns in a given table.\nIt also works for views as of MySQL 5.0.1.\n\nIf the column types differ from what you expect them to be based on\nyour CREATE TABLE statement, note that MySQL sometimes changes column\ntypes when you create or alter a table. The conditions for which this\noccurs are described in [silent-column-changes].\n\nThe FULL keyword causes the output to include the privileges you have\nas well as any per-column comments for each column.\n\nYou can use db_name.tbl_name as an alternative to the tbl_name FROM\ndb_name syntax. In other words, these two statements are equivalent:\n\nmysql> SHOW COLUMNS FROM mytable FROM mydb;\nmysql> SHOW COLUMNS FROM mydb.mytable;\n\nSHOW FIELDS is a synonym for SHOW COLUMNS. You can also list a table's\ncolumns with the mysqlshow db_name tbl_name command.\n\nThe DESCRIBE statement provides information similar to SHOW COLUMNS.\nSee [describe].\n","","show-columns");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (18,27,"MONTH","Syntax:\nMONTH(date)\n\nReturns the month for date, in the range 1 to 12.\n","mysql> SELECT MONTH('1998-02-03');\n -> 2\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (19,19,"TINYINT","TINYINT[(M)] [UNSIGNED] [ZEROFILL]\n\nA very small integer. The signed range is -128 to 127. The unsigned\nrange is 0 to 255.\n","","numeric-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (20,24,"SHOW TRIGGERS","Syntax:\nSHOW TRIGGERS [FROM db_name] [LIKE expr]\n\nSHOW TRIGGERS lists the triggers currently defined on the MySQL server.\nIt was implemented in MySQL 5.0.10.\n\nFor the trigger ins_sum as defined in [using-triggers], the output of\nthis statement is as shown here:\n\nmysql> SHOW TRIGGERS LIKE 'acc%'\\G\n*************************** 1. row ***************************\n Trigger: ins_sum\n Event: INSERT\n Table: account\nStatement: SET @sum = @sum + NEW.amount\n Timing: BEFORE\n Created: NULL\n sql_mode: \n Definer: myname@localhost\n","","show-triggers");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (21,13,"MASTER_POS_WAIT","Syntax:\nMASTER_POS_WAIT(log_name,log_pos[,timeout])\n\nThis function is useful for control of master/slave synchronization. It\nblocks until the slave has read and applied all updates up to the\nspecified position in the master log. The return value is the number of\nlog events it had to wait for to get to the specified position. The\nfunction returns NULL if the slave SQL thread is not started, the\nslave's master information is not initialized, the arguments are\nincorrect, or an error occurs. It returns -1 if the timeout has been\nexceeded. If the slave SQL thread stops while MASTER_POS_WAIT() is\nwaiting, the function returns NULL. If the slave is past the specified\nposition, the function returns immediately.\n","","miscellaneous-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (22,32,"REGEXP","Syntax:\nexpr REGEXP pat expr RLIKE pat\n\nPerforms a pattern match of a string expression expr against a pattern\npat. The pattern can be an extended regular expression. The syntax for\nregular expressions is discussed in [regexp]. Returns 1 if expr matches\npat; otherwise it returns 0. If either expr or pat is NULL, the result\nis NULL. RLIKE is a synonym for REGEXP, provided for mSQL\ncompatibility.\n\nThe pattern need not be a literal string. For example, it can be\nspecified as a string expression or table column.\n\nNote: Because MySQL uses the C escape syntax in strings (for example,\n`\\n' to represent the newline character), you must double any `\\' that\nyou use in your REGEXP strings.\n\nREGEXP is not case sensitive, except when used with binary strings.\n","mysql> SELECT 'Monty!' REGEXP 'm%y%%';\n -> 0\nmysql> SELECT 'Monty!' REGEXP '.*';\n -> 1\nmysql> SELECT 'new*\\n*line' REGEXP 'new\\\\*.\\\\*line';\n -> 1\nmysql> SELECT 'a' REGEXP 'A', 'a' REGEXP BINARY 'A';\n -> 1 0\nmysql> SELECT 'a' REGEXP '^[a-d]';\n -> 1\n","string-comparison-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (23,34,"IF STATEMENT","Syntax:\nIF search_condition THEN statement_list\n [ELSEIF search_condition THEN statement_list] ...\n [ELSE statement_list]\nEND IF\n\nIF implements a basic conditional construct. If the search_condition\nevaluates to true, the corresponding SQL statement list is executed. If\nno search_condition matches, the statement list in the ELSE clause is\nexecuted. statement_list can consist of one or more statements.\n\nPlease note that there is also an IF() function, which differs from the\nIF statement described here.. See [control-flow-functions].\n","","if-statement");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (24,18,"^","Syntax:\n^\n\nBitwise XOR:\n","mysql> SELECT 1 ^ 1;\n -> 0\nmysql> SELECT 1 ^ 0;\n -> 1\nmysql> SELECT 11 ^ 3;\n -> 8\n","bit-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (25,35,"DROP VIEW","Syntax:\nDROP VIEW [IF EXISTS]\n view_name [, view_name] ...\n [RESTRICT | CASCADE]\n\nDROP VIEW removes one or more views. You must have the DROP privilege\nfor each view.\n\nYou can use the keywords IF EXISTS to prevent an error from occurring\nfor views that don't exist. When this clause is given, a NOTE is\ngenerated for each non-existent view. See [show-warnings].\n\nRESTRICT and CASCADE, if given, are parsed and ignored.\n","","drop-view");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (26,27,"DATE OPERATIONS","Syntax:\nDATE_ADD(date,INTERVAL expr type), DATE_SUB(date,INTERVAL expr type)\n\nThese functions perform date arithmetic. date is a DATETIME or DATE\nvalue specifying the starting date. expr is an expression specifying\nthe interval value to be added or subtracted from the starting date.\nexpr is a string; it may start with a `-' for negative intervals. type\nis a keyword indicating how the expression should be interpreted.\n","mysql> SELECT '1997-12-31 23:59:59' + INTERVAL 1 SECOND;\n -> '1998-01-01 00:00:00'\nmysql> SELECT INTERVAL 1 DAY + '1997-12-31';\n -> '1998-01-01'\nmysql> SELECT '1998-01-01' - INTERVAL 1 SECOND;\n -> '1997-12-31 23:59:59'\nmysql> SELECT DATE_ADD('1997-12-31 23:59:59',\n -> INTERVAL 1 SECOND);\n -> '1998-01-01 00:00:00'\nmysql> SELECT DATE_ADD('1997-12-31 23:59:59',\n -> INTERVAL 1 DAY);\n -> '1998-01-01 23:59:59'\nmysql> SELECT DATE_ADD('1997-12-31 23:59:59',\n -> INTERVAL '1:1' MINUTE_SECOND);\n -> '1998-01-01 00:01:00'\nmysql> SELECT DATE_SUB('1998-01-01 00:00:00',\n -> INTERVAL '1 1:1:1' DAY_SECOND);\n -> '1997-12-30 22:58:59'\nmysql> SELECT DATE_ADD('1998-01-01 00:00:00',\n -> INTERVAL '-1 10' DAY_HOUR);\n -> '1997-12-30 14:00:00'\nmysql> SELECT DATE_SUB('1998-01-02', INTERVAL 31 DAY);\n -> '1997-12-02'\nmysql> SELECT DATE_ADD('1992-12-31 23:59:59.000002',\n -> INTERVAL '1.999999' SECOND_MICROSECOND);\n -> '1993-01-01 00:00:01.000001'\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (27,25,"WITHIN","Within(g1,g2)\n\nReturns 1 or 0 to indicate whether or not g1 is spatially within g2.\n","","functions-that-test-spatial-relationships-between-geometries");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (28,27,"WEEK","Syntax:\nWEEK(date[,mode])\n\nThis function returns the week number for date. The two-argument form\nof WEEK() allows you to specify whether the week starts on Sunday or\nMonday and whether the return value should be in the range from 0 to 53\nor from 1 to 53. If the mode argument is omitted, the value of the\ndefault_week_format system variable is used. See\n[server-system-variables].\n","mysql> SELECT WEEK('1998-02-20');\n -> 7\nmysql> SELECT WEEK('1998-02-20',0);\n -> 7\nmysql> SELECT WEEK('1998-02-20',1);\n -> 8\nmysql> SELECT WEEK('1998-12-31',1);\n -> 53\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (29,8,"LOCK","Syntax:\nLOCK TABLES\n tbl_name [AS alias] {READ [LOCAL] | [LOW_PRIORITY] WRITE}\n [, tbl_name [AS alias] {READ [LOCAL] | [LOW_PRIORITY] WRITE}] ...\nUNLOCK TABLES\n\nLOCK TABLES locks tables for the current thread. If any of the tables\nare locked by other threads, it blocks until all locks can be acquired.\nUNLOCK TABLES releases any locks held by the current thread. All tables\nthat are locked by the current thread are implicitly unlocked when the\nthread issues another LOCK TABLES, or when the connection to the server\nis closed.\n\nA table lock protects only against inappropriate reads or writes by\nother clients. The client holding the lock, even a read lock, can\nperform table-level operations such as DROP TABLE.\n","","lock-tables");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (30,24,"RESET SLAVE","Syntax:\nRESET SLAVE\n\nMakes the slave forget its replication position in the master's binary\nlogs. This statement is meant to be used for a clean start: It deletes\nthe master.info and relay-log.info files, all the relay logs, and\nstarts a new relay log.\n\nNote: All relay logs are deleted, even if they have not been completely\nexecuted by the slave SQL thread. (This is a condition likely to exist\non a replication slave if you have issued a STOP SLAVE statement or if\nthe slave is highly loaded.)\n\nConnection information stored in the master.info file is immediately\nreset using any values specified in the corresponding startup options.\nThis information includes values such as master host, master port,\nmaster user, and master password. If the slave SQL thread was in the\nmiddle of replicating temporary tables when it was stopped, and RESET\nSLAVE is issued, these replicated temporary tables are deleted on the\nslave.\n","","reset-slave");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (31,21,"POLYGON","Polygon(ls1,ls2,...)\n\nConstructs a WKB Polygon value from a number of WKB LineString\narguments. If any argument does not represent the WKB of a LinearRing\n(that is, not a closed and simple LineString) the return value is NULL.\n","","gis-mysql-specific-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (32,27,"MINUTE","Syntax:\nMINUTE(time)\n\nReturns the minute for time, in the range 0 to 59.\n","mysql> SELECT MINUTE('98-02-03 10:05:03');\n -> 5\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (33,27,"DAY","Syntax:\nDAY(date)\n\nDAY() is a synonym for DAYOFMONTH().\n","","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (34,32,"MID","Syntax:\nMID(str,pos,len)\n\nMID(str,pos,len) is a synonym for SUBSTRING(str,pos,len).\n","","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (35,24,"REPLACE INTO","Syntax:\nREPLACE [LOW_PRIORITY | DELAYED]\n [INTO] tbl_name [(col_name,...)]\n VALUES ({expr | DEFAULT},...),(...),...\n\nOr:\n\nREPLACE [LOW_PRIORITY | DELAYED]\n [INTO] tbl_name\n SET col_name={expr | DEFAULT}, ...\n\nOr:\n\nREPLACE [LOW_PRIORITY | DELAYED]\n [INTO] tbl_name [(col_name,...)]\n SELECT ...\n\nREPLACE works exactly like INSERT, except that if an old record in the\ntable has the same value as a new record for a PRIMARY KEY or a UNIQUE\nindex, the old record is deleted before the new record is inserted. See\n[insert].\n\nREPLACE is a MySQL extension to the SQL standard. It either inserts, or\ndeletes and inserts. If you're looking for a statement that follows the\nSQL standard, and that either inserts or updates, look for the INSERT\n... ON DUPLICATE KEY UPDATE statement; see [insert].\n\nNote that unless the table has a PRIMARY KEY or UNIQUE index, using a\nREPLACE statement makes no sense. It becomes equivalent to INSERT,\nbecause there is no index to be used to determine whether a new row\nduplicates another.\n\nValues for all columns are taken from the values specified in the\nREPLACE statement. Any missing columns are set to their default values,\njust as happens for INSERT. You cannot refer to values from the current\nrow and use them in the new row. If you use an assignment such as SET\ncol_name = col_name + 1, the reference to the column name on the right\nhand side is treated as DEFAULT(col_name), so the assignment is\nequivalent to SET col_name = DEFAULT(col_name) + 1.\n\nTo be able to use REPLACE, you must have both the INSERT and DELETE\nprivileges for the table.\n","","replace");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (36,13,"UUID","Syntax:\nUUID()\n\nReturns a Universal Unique Identifier (UUID) generated according to\n\"DCE 1.1: Remote Procedure Call\" (Appendix A) CAE (Common Applications\nEnvironment) Specifications published by The Open Group in October 1997\n(Document Number C706,\nhttp://www.opengroup.org/public/pubs/catalog/c706.htm).\n\nA UUID is designed as a number that is globally unique in space and\ntime. Two calls to UUID() are expected to generate two different\nvalues, even if these calls are performed on two separate computers\nthat are not connected to each other.\n\nA UUID is a 128-bit number represented by a string of five hexadecimal\nnumbers in aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee format:\n\no The first three numbers are generated from a timestamp.\n\no The fourth number preserves temporal uniqueness in case the timestamp\n value loses monotonicity (for example, due to daylight saving time).\n\no The fifth number is an IEEE 802 node number that provides spatial\n uniqueness. A random number is substituted if the latter is not\n available (for example, because the host computer has no Ethernet\n card, or we do not know how to find the hardware address of an\n interface on your operating system). In this case, spatial uniqueness\n cannot be guaranteed. Nevertheless, a collision should have very low\n probability.\n\n Currently, the MAC address of an interface is taken into account only\n on FreeBSD and Linux. On other operating systems, MySQL uses a\n randomly generated 48-bit number.\n","mysql> SELECT UUID();\n -> '6ccd780c-baba-1026-9564-0040f4311e29'\n","miscellaneous-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (37,21,"LINESTRING","LineString(pt1,pt2,...)\n\nConstructs a WKB LineString value from a number of WKB Point arguments.\nIf any argument is not a WKB Point, the return value is NULL. If the\nnumber of Point arguments is less than two, the return value is NULL.\n","","gis-mysql-specific-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (38,13,"SLEEP","Syntax:\nSLEEP(duration)\n\nSleeps (pauses) for the number of seconds given by the duration\nargument, then returns 0. If SLEEP() is interrupted, it returns 1. The\nduration may have a fractional part given in microseconds. This\nfunction was added in MySQL 5.0.12.\n","","miscellaneous-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (39,15,"CONNECTION_ID","Syntax:\nCONNECTION_ID()\n\nReturns the connection ID (thread ID) for the connection. Every\nconnection has its own unique ID.\n","mysql> SELECT CONNECTION_ID();\n -> 23786\n","information-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (40,24,"DELETE","Syntax:\nSingle-table syntax:\n\nDELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM tbl_name\n [WHERE where_definition]\n [ORDER BY ...]\n [LIMIT row_count]\n\nMultiple-table syntax:\n\nDELETE [LOW_PRIORITY] [QUICK] [IGNORE]\n tbl_name[.*] [, tbl_name[.*] ...]\n FROM table_references\n [WHERE where_definition]\n\nOr:\n\nDELETE [LOW_PRIORITY] [QUICK] [IGNORE]\n FROM tbl_name[.*] [, tbl_name[.*] ...]\n USING table_references\n [WHERE where_definition]\n\nDELETE deletes rows from tbl_name that satisfy the condition given by\nwhere_definition, and returns the number of records deleted.\n\nIf you issue a DELETE statement with no WHERE clause, all rows are\ndeleted. A faster way to do this, when you do not want to know the\nnumber of deleted rows, is to use TRUNCATE TABLE. See [truncate].\n","","delete");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (41,5,"ROUND","Syntax:\nROUND(X), ROUND(X,D)\n\nReturns the argument X, rounded to the nearest integer. With two\narguments, returns X rounded to D decimals. D can be negative in order\nto round D digits left of the decimal point of the value X.\n","mysql> SELECT ROUND(-1.23);\n -> -1\nmysql> SELECT ROUND(-1.58);\n -> -2\nmysql> SELECT ROUND(1.58);\n -> 2\nmysql> SELECT ROUND(1.298, 1);\n -> 1.3\nmysql> SELECT ROUND(1.298, 0);\n -> 1\nmysql> SELECT ROUND(23.298, -1);\n -> 20\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (42,7,"NULLIF","Syntax:\nNULLIF(expr1,expr2)\n\nReturns NULL if expr1 = expr2 is true, otherwise returns expr1. This is\nthe same as CASE WHEN expr1 = expr2 THEN NULL ELSE expr1 END.\n","mysql> SELECT NULLIF(1,1);\n -> NULL\nmysql> SELECT NULLIF(1,2);\n -> 1\n","control-flow-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (43,34,"CLOSE","Syntax:\nCLOSE cursor_name\n\nThis statement closes a previously opened cursor.\n\nIf not closed explicitly, a cursor is closed at the end of the compound\nstatement in which it was declared.\n","","close");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (44,24,"STOP SLAVE","Syntax:\nSTOP SLAVE [thread_type [, thread_type] ... ]\n\nthread_type: IO_THREAD | SQL_THREAD\n\nStops the slave threads. STOP SLAVE requires the SUPER privilege.\n\nLike START SLAVE, this statement may be used with the IO_THREAD and\nSQL_THREAD options to name the thread or threads to be stopped.\n","","stop-slave");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (45,27,"TIMEDIFF","Syntax:\nTIMEDIFF(expr,expr2)\n\nTIMEDIFF() returns the time between the start time expr and the end\ntime expr2. expr and expr2 are time or date-and-time expressions, but\nboth must be of the same type.\n","mysql> SELECT TIMEDIFF('2000:01:01 00:00:00',\n -> '2000:01:01 00:00:00.000001');\n -> '-00:00:00.000001'\nmysql> SELECT TIMEDIFF('1997-12-31 23:59:59.000001',\n -> '1997-12-30 01:01:01.000002');\n -> '46:58:57.999999'\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (46,4,"LINEFROMTEXT","LineFromText(wkt[,srid]) , LineStringFromText(wkt[,srid])\n\nConstructs a LINESTRING value using its WKT representation and SRID.\n","","gis-wkt-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (47,24,"SHOW MASTER STATUS","Syntax:\nSHOW MASTER STATUS\n\nProvides status information on the binary log files of the master.\nExample:\n\nmysql > SHOW MASTER STATUS;\n+---------------+----------+--------------+------------------+\n| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |\n+---------------+----------+--------------+------------------+\n| mysql-bin.003 | 73 | test | manual,mysql |\n+---------------+----------+--------------+------------------+\n","","show-master-status");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (48,27,"ADDTIME","Syntax:\nADDTIME(expr,expr2)\n\nADDTIME() adds expr2 to expr and returns the result. expr is a time or\ndatetime expression, and expr2 is a time expression.\n","mysql> SELECT ADDTIME('1997-12-31 23:59:59.999999',\n -> '1 1:1:1.000002');\n -> '1998-01-02 01:01:01.000001'\nmysql> SELECT ADDTIME('01:00:00.999999', '02:00:00.999998');\n -> '03:00:01.999997'\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (49,29,"SPATIAL","MySQL can create spatial indexes using syntax similar to that for\ncreating regular indexes, but extended with the SPATIAL keyword.\nSpatial columns that are indexed currently must be declared NOT NULL.\nThe following examples demonstrate how to create spatial indexes.\n\no With CREATE TABLE:\n\nmysql> CREATE TABLE geom (g GEOMETRY NOT NULL, SPATIAL INDEX(g));\n\no With ALTER TABLE:\n\nmysql> ALTER TABLE geom ADD SPATIAL INDEX(g);\n\no With CREATE INDEX:\n\nmysql> CREATE SPATIAL INDEX sp_index ON geom (g);\n\nFor MyISAM tables, SPATIAL INDEX creates an R-tree index. For other\nstorage engines that support spatial index, SPATIAL INDEX creates a\nB-tree index. A B-tree index on spatial values will be useful for\nexact-value lookups, but not for range scans.\n\nTo drop spatial indexes, use ALTER TABLE or DROP INDEX:\n\no With ALTER TABLE:\n\nmysql> ALTER TABLE geom DROP INDEX g;\n\no With DROP INDEX:\n\nmysql> DROP INDEX sp_index ON geom;\n\nExample: Suppose that a table geom contains more than 32,000\ngeometries, which are stored in the column g of type GEOMETRY. The\ntable also has an AUTO_INCREMENT column fid for storing object ID\nvalues.\n","","creating-spatial-indexes");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (50,27,"TIMESTAMPDIFF","Syntax:\nTIMESTAMPDIFF(interval,datetime_expr1,datetime_expr2)\n\nReturns the integer difference between the date or datetime expressions\ndatetime_expr1 and datetime_expr2. The unit for the result is given by\nthe interval argument. The legal values for interval are the same as\nthose listed in the description of the TIMESTAMPADD() function.\n","mysql> SELECT TIMESTAMPDIFF(MONTH,'2003-02-01','2003-05-01');\n -> 3\nmysql> SELECT TIMESTAMPDIFF(YEAR,'2002-05-01','2001-01-01');\n -> -1\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (51,32,"UPPER","Syntax:\nUPPER(str)\n\nReturns the string str with all characters changed to uppercase\naccording to the current character set mapping (the default is cp1252\nLatin1).\n","mysql> SELECT UPPER('Hej');\n -> 'HEJ'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (52,27,"FROM_UNIXTIME","Syntax:\nFROM_UNIXTIME(unix_timestamp), FROM_UNIXTIME(unix_timestamp,format)\n\nReturns a representation of the unix_timestamp argument as a value in\n'YYYY-MM-DD HH:MM:SS' or YYYYMMDDHHMMSS format, depending on whether\nthe function is used in a string or numeric context.\n\nIf format is given, the result is formatted according to the format\nstring. format may contain the same specifiers as those listed in the\nentry for the DATE_FORMAT() function.\n","mysql> SELECT FROM_UNIXTIME(875996580);\n -> '1997-10-04 22:23:00'\nmysql> SELECT FROM_UNIXTIME(875996580) + 0;\n -> 19971004222300\nmysql> SELECT FROM_UNIXTIME(UNIX_TIMESTAMP(),\n -> '%Y %D %M %h:%i:%s %x');\n -> '2003 6th August 06:22:58 2003'\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (53,19,"MEDIUMBLOB","MEDIUMBLOB\n\nA BLOB column with a maximum length of 16,777,215 (224 - 1) bytes.\n","","string-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (54,7,"IFNULL","Syntax:\nIFNULL(expr1,expr2)\n\nIf expr1 is not NULL, IFNULL() returns expr1; otherwise it returns\nexpr2. IFNULL() returns a numeric or string value, depending on the\ncontext in which it is used.\n","mysql> SELECT IFNULL(1,0);\n -> 1\nmysql> SELECT IFNULL(NULL,10);\n -> 10\nmysql> SELECT IFNULL(1/0,10);\n -> 10\nmysql> SELECT IFNULL(1/0,'yes');\n -> 'yes'\n","control-flow-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (55,17,"LEAST","Syntax:\nLEAST(value1,value2,...)\n\nWith two or more arguments, returns the smallest (minimum-valued)\nargument. The arguments are compared using the following rules:\n\no If the return value is used in an INTEGER context or all arguments\n are integer-valued, they are compared as integers.\n\no If the return value is used in a REAL context or all arguments are\n real-valued, they are compared as reals.\n\no If any argument is a case-sensitive string, the arguments are\n compared as case-sensitive strings.\n\no In all other cases, the arguments are compared as case-insensitive\n strings.\n\nBefore MySQL 5.0.13, LEAST() returns NULL only if all arguments are\nNULL. As of 5.0.13, it returns NULL if any argument is NULL.\n","mysql> SELECT LEAST(2,0);\n -> 0\nmysql> SELECT LEAST(34.0,3.0,5.0,767.0);\n -> 3.0\nmysql> SELECT LEAST('B','A','C');\n -> 'A'\n","comparison-operators");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (56,17,"=","=\n\nEqual:\n","mysql> SELECT 1 = 0;\n -> 0\nmysql> SELECT '0' = 0;\n -> 1\nmysql> SELECT '0.0' = 0;\n -> 1\nmysql> SELECT '0.01' = 0;\n -> 0\nmysql> SELECT '.01' = 0.01;\n -> 1\n","comparison-operators");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (57,32,"REVERSE","Syntax:\nREVERSE(str)\n\nReturns the string str with the order of the characters reversed.\n","mysql> SELECT REVERSE('abc');\n -> 'cba'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (58,17,"ISNULL","Syntax:\nISNULL(expr)\n\nIf expr is NULL, ISNULL() returns 1, otherwise it returns 0.\n","mysql> SELECT ISNULL(1+1);\n -> 0\nmysql> SELECT ISNULL(1/0);\n -> 1\n","comparison-operators");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (59,19,"BINARY","BINARY(M)\n\nThe BINARY type is similar to the CHAR type, but stores binary byte\nstrings rather than non-binary character strings.\n","","string-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (60,19,"BLOB DATA TYPE","A BLOB is a binary large object that can hold a variable amount of\ndata. The four BLOB types are TINYBLOB, BLOB, MEDIUMBLOB, and LONGBLOB.\nThese differ only in the maximum length of the values they can hold.\n","","blob");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (61,31,"BOUNDARY","Boundary(g)\n\nReturns a geometry that is the closure of the combinatorial boundary of\nthe geometry value g.\n","","general-geometry-property-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (62,23,"CREATE USER","Syntax:\nCREATE USER user [IDENTIFIED BY [PASSWORD] 'password']\n [, user [IDENTIFIED BY [PASSWORD] 'password']] ...\n\nThe CREATE USER statement was added in MySQL 5.0.2. This statement\ncreates new MySQL accounts. To use it, you must have the global CREATE\nUSER privilege or the INSERT privilege for the mysql database. For each\naccount, CREATE USER creates a new record in the mysql.user table that\nhas no privileges. An error occurs if the account already exists.\n\nThe account can be given a password with the optional IDENTIFIED BY\nclause. The user value and the password are given the same way as for\nthe GRANT statement. In particular, to specify the password in plain\ntext, omit the PASSWORD keyword. To specify the password as the hashed\nvalue as returned by the PASSWORD() function, include the keyword\nPASSWORD. See [grant].\n","","create-user");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (63,21,"POINT","Point(x,y)\n\nConstructs a WKB Point using its coordinates.\n","","gis-mysql-specific-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (64,15,"CURRENT_USER","Syntax:\nCURRENT_USER, CURRENT_USER()\n\nReturns the username and hostname combination that the current session\nwas authenticated as. This value corresponds to the MySQL account that\ndetermines your access privileges. As of MySQL 5.0.10, within a stored\nroutine that is defined with the SQL SECURITY DEFINER characteristic,\nCURRENT_USER() returns the creator of the routine.\n\nThe value of CURRENT_USER() can differ from the value of USER().\n","mysql> SELECT USER();\n -> 'davida@localhost'\nmysql> SELECT * FROM mysql.user;\nERROR 1044: Access denied for user ''@'localhost' to\ndatabase 'mysql'\nmysql> SELECT CURRENT_USER();\n -> '@localhost'\n","information-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (65,32,"LCASE","Syntax:\nLCASE(str)\n\nLCASE() is a synonym for LOWER().\n","","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (66,17,"<=","Syntax:\n<=\n\nLess than or equal:\n","mysql> SELECT 0.1 <= 2;\n -> 1\n","comparison-operators");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (67,24,"UPDATE","Syntax:\nSingle-table syntax:\n\nUPDATE [LOW_PRIORITY] [IGNORE] tbl_name\n SET col_name1=expr1 [, col_name2=expr2 ...]\n [WHERE where_definition]\n [ORDER BY ...]\n [LIMIT row_count]\n\nMultiple-table syntax:\n\nUPDATE [LOW_PRIORITY] [IGNORE] table_references\n SET col_name1=expr1 [, col_name2=expr2 ...]\n [WHERE where_definition]\n\nThe UPDATE statement updates columns in existing table rows with new\nvalues. The SET clause indicates which columns to modify and the values\nthey should be given. The WHERE clause, if given, specifies which rows\nshould be updated. Otherwise, all rows are updated. If the ORDER BY\nclause is specified, the rows are updated in the order that is\nspecified. The LIMIT clause places a limit on the number of rows that\ncan be updated.\n\nThe UPDATE statement supports the following modifiers:\n\no If you use the LOW_PRIORITY keyword, execution of the UPDATE is\n delayed until no other clients are reading from the table.\n\no If you use the IGNORE keyword, the update statement does not abort\n even if errors occur during the update. Rows for which duplicate-key\n conflicts occur are not updated. Rows for which columns are updated\n to values that would cause data conversion errors are updated to the\n closet valid values instead.\n","","update");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (68,34,"CASE STATEMENT","Syntax:\nCASE case_value\n WHEN when_value THEN statement_list\n [WHEN when_value THEN statement_list] ...\n [ELSE statement_list]\nEND CASE\n\nOr:\n\nCASE\n WHEN search_condition THEN statement_list\n [WHEN search_condition THEN statement_list] ...\n [ELSE statement_list]\nEND CASE\n\nThe CASE statement for stored procedures implements a complex\nconditional construct. If a search_condition evaluates to true, the\ncorresponding SQL statement is executed. If no search condition\nmatches, the statement in the ELSE clause is executed.\n\nNote: The syntax of a CASE statement shown here for use inside a stored\nprocedure differs slightly from that of the SQL CASE expression\ndescribed in [control-flow-functions]. The CASE statement cannot have\nan ELSE NULL clause, and it is terminated with END CASE instead of END.\n","","case-statement");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (69,35,"DROP INDEX","Syntax:\nDROP INDEX index_name ON tbl_name\n\nDROP INDEX drops the index named index_name from the table tbl_name.\nThis statement is mapped to an ALTER TABLE statement to drop the index.\nSee [alter-table].\n","","drop-index");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (70,32,"MATCH AGAINST","Syntax:\n\nMATCH (col1,col2,...) AGAINST (expr [IN BOOLEAN MODE | WITH QUERY\nEXPANSION])\n\nMySQL has support for full-text indexing and searching. A full-text\nindex in MySQL is an index of type FULLTEXT. FULLTEXT indexes can be\nused only with MyISAM tables; they can be created from CHAR, VARCHAR,\nor TEXT columns as part of a CREATE TABLE statement or added later\nusing ALTER TABLE or CREATE INDEX. For large datasets, it is much\nfaster to load your data into a table that has no FULLTEXT index, and\nthen create the index afterwards, than to load data into a table that\nhas an existing FULLTEXT index.\n","mysql> SELECT id, body, MATCH (title,body) AGAINST\n -> ('Security implications of running MySQL as root') AS score\n -> FROM articles WHERE MATCH (title,body) AGAINST\n -> ('Security implications of running MySQL as root');\n+----+-------------------------------------+-----------------+\n| id | body | score |\n+----+-------------------------------------+-----------------+\n| 4 | 1. Never run mysqld as root. 2. ... | 1.5219271183014 |\n| 6 | When configured properly, MySQL ... | 1.3114095926285 |\n+----+-------------------------------------+-----------------+\n2 rows in set (0.00 sec)\n","fulltext-search");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (71,5,"ABS","Syntax:\nABS(X)\n\nReturns the absolute value of X.\n","mysql> SELECT ABS(2);\n -> 2\nmysql> SELECT ABS(-32);\n -> 32\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (72,28,"POLYFROMWKB","PolyFromWKB(wkb[,srid]) , PolygonFromWKB(wkb[,srid])\n\nConstructs a POLYGON value using its WKB representation and SRID.\n","","gis-wkb-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (73,32,"NOT LIKE","Syntax:\nexpr NOT LIKE pat [ESCAPE 'escape-char']\n\nThis is the same as NOT (expr LIKE pat [ESCAPE 'escape-char']).\n","","string-comparison-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (74,32,"SPACE","Syntax:\nSPACE(N)\n\nReturns a string consisting of N space characters.\n","mysql> SELECT SPACE(6);\n -> ' '\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (75,6,"MBR DEFINITION","Its MBR (Minimum Bounding Rectangle), or Envelope. This is the bounding\ngeometry, formed by the minimum and maximum (X,Y) coordinates:\n","((MINX MINY, MAXX MINY, MAXX MAXY, MINX MAXY, MINX MINY))\n","gis-class-geometry");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (76,21,"GEOMETRYCOLLECTION","GeometryCollection(g1,g2,...)\n\nConstructs a WKB GeometryCollection. If any argument is not a\nwell-formed WKB representation of a geometry, the return value is NULL.\n","","gis-mysql-specific-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (77,5,"*","Syntax:\n*\n\nMultiplication:\n","mysql> SELECT 3*5;\n -> 15\nmysql> SELECT 18014398509481984*18014398509481984.0;\n -> 324518553658426726783156020576256.0\nmysql> SELECT 18014398509481984*18014398509481984;\n -> 0\n","arithmetic-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (78,19,"TIMESTAMP","TIMESTAMP[(M)]\n\nA timestamp. The range is '1970-01-01 00:00:00' to partway through the\nyear 2037.\n\nA TIMESTAMP column is useful for recording the date and time of an\nINSERT or UPDATE operation. The first TIMESTAMP column in a table is\nautomatically set to the date and time of the most recent operation if\nyou don't assign it a value yourself. You can also set any TIMESTAMP\ncolumn to the current date and time by assigning it a NULL value.\n\nA TIMESTAMP value is returned as a string in the format 'YYYY-MM-DD\nHH:MM:SS' whose display width is fixed at 19 characters. If you want to\nobtain the value as a number, you should add +0 to the timestamp\ncolumn.\n\nNote: The TIMESTAMP format that was used prior to MySQL 4.1 is not\nsupported in MySQL 5.0; see MySQL 4.1 Reference Manual for information\nregarding the old format.\n","","date-and-time-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (79,10,"DES_DECRYPT","Syntax:\nDES_DECRYPT(crypt_str[,key_str])\n\nDecrypts a string encrypted with DES_ENCRYPT(). On error, this function\nreturns NULL.\n\nNote that this function works only if MySQL has been configured with\nSSL support. See [secure-connections].\n\nIf no key_str argument is given, DES_DECRYPT() examines the first byte\nof the encrypted string to determine the DES key number that was used\nto encrypt the original string, and then reads the key from the DES key\nfile to decrypt the message. For this to work, the user must have the\nSUPER privilege. The key file can be specified with the --des-key-file\nserver option.\n\nIf you pass this function a key_str argument, that string is used as\nthe key for decrypting the message.\n\nIf the crypt_str argument does not appear to be an encrypted string,\nMySQL returns the given crypt_str.\n","","encryption-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (80,11,"ENDPOINT","EndPoint(ls)\n\nReturns the Point that is the end point of the LineString value ls.\n","mysql> SET @ls = 'LineString(1 1,2 2,3 3)';\nmysql> SELECT AsText(EndPoint(GeomFromText(@ls)));\n+-------------------------------------+\n| AsText(EndPoint(GeomFromText(@ls))) |\n+-------------------------------------+\n| POINT(3 3) |\n+-------------------------------------+\n","linestring-property-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (81,24,"CACHE INDEX","Syntax:\nCACHE INDEX\n tbl_index_list [, tbl_index_list] ...\n IN key_cache_name\n\ntbl_index_list:\n tbl_name [[INDEX|KEY] (index_name[, index_name] ...)]\n\nThe CACHE INDEX statement assigns table indexes to a specific key\ncache. It is used only for MyISAM tables.\n\nThe following statement assigns indexes from the tables t1, t2, and t3\nto the key cache named hot_cache:\n\nmysql> CACHE INDEX t1, t2, t3 IN hot_cache;\n+---------+--------------------+----------+----------+\n| Table | Op | Msg_type | Msg_text |\n+---------+--------------------+----------+----------+\n| test.t1 | assign_to_keycache | status | OK |\n| test.t2 | assign_to_keycache | status | OK |\n| test.t3 | assign_to_keycache | status | OK |\n+---------+--------------------+----------+----------+\n","","cache-index");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (82,32,"COMPRESS","Syntax:\nCOMPRESS(string_to_compress)\n\nCompresses a string. This function requires MySQL to have been compiled\nwith a compression library such as zlib. Otherwise, the return value is\nalways NULL. The compressed string can be uncompressed with\nUNCOMPRESS().\n","mysql> SELECT LENGTH(COMPRESS(REPEAT('a',1000)));\n -> 21\nmysql> SELECT LENGTH(COMPRESS(''));\n -> 0\nmysql> SELECT LENGTH(COMPRESS('a'));\n -> 13\nmysql> SELECT LENGTH(COMPRESS(REPEAT('a',16)));\n -> 15\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (83,14,"COUNT","Syntax:\nCOUNT(expr)\n\nReturns a count of the number of non-NULL values in the rows retrieved\nby a SELECT statement.\n\nCOUNT() returns 0 if there were no matching rows.\n","mysql> SELECT student.student_name,COUNT(*)\n -> FROM student,course\n -> WHERE student.student_id=course.student_id\n -> GROUP BY student_name;\n","group-by-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (84,32,"INSERT","Syntax:\nINSERT(str,pos,len,newstr)\n\nReturns the string str, with the substring beginning at position pos\nand len characters long replaced by the string newstr. Returns the\noriginal string if pos is not within the length of the string. Replaces\nthe rest of the string from position pos is len is not within the\nlength of the rest of the string. Returns NULL if any argument is null.\n","mysql> SELECT INSERT('Quadratic', 3, 4, 'What');\n -> 'QuWhattic'\nmysql> SELECT INSERT('Quadratic', -1, 4, 'What');\n -> 'Quadratic'\nmysql> SELECT INSERT('Quadratic', 3, 100, 'What');\n -> 'QuWhat'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (85,24,"HANDLER","Syntax:\nHANDLER tbl_name OPEN [ AS alias ]\nHANDLER tbl_name READ index_name { = | >= | <= | < } (value1,value2,...)\n [ WHERE where_condition ] [LIMIT ... ]\nHANDLER tbl_name READ index_name { FIRST | NEXT | PREV | LAST }\n [ WHERE where_condition ] [LIMIT ... ]\nHANDLER tbl_name READ { FIRST | NEXT }\n [ WHERE where_condition ] [LIMIT ... ]\nHANDLER tbl_name CLOSE\n\nThe HANDLER statement provides direct access to table storage engine\ninterfaces. It is available for MyISAM and InnoDB tables.\n","","handler");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (86,4,"MLINEFROMTEXT","MLineFromText(wkt[,srid]) , MultiLineStringFromText(wkt[,srid])\n\nConstructs a MULTILINESTRING value using its WKT representation and\nSRID.\n","","gis-wkt-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (87,28,"GEOMCOLLFROMWKB","GeomCollFromWKB(wkb[,srid]) , GeometryCollectionFromWKB(wkb[,srid])\n\nConstructs a GEOMETRYCOLLECTION value using its WKB representation and\nSRID.\n","","gis-wkb-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (88,35,"RENAME TABLE","Syntax:\nRENAME TABLE tbl_name TO new_tbl_name\n [, tbl_name2 TO new_tbl_name2] ...\n\nThis statement renames one or more tables.\n\nThe rename operation is done atomically, which means that no other\nthread can access any of the tables while the rename is running. For\nexample, if you have an existing table old_table, you can create\nanother table new_table that has the same structure but is empty, and\nthen replace the existing table with the empty one as follows:\n","CREATE TABLE new_table (...);\nRENAME TABLE old_table TO backup_table, new_table TO old_table;\n","rename-table");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (89,19,"BOOLEAN","BOOL, BOOLEAN\n\nThese are synonyms for TINYINT(1). A value of zero is considered false.\nNon-zero values are considered true.\n\nIn the future, full boolean type handling will be introduced in\naccordance with standard SQL.\n","","numeric-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (90,13,"DEFAULT","Syntax:\nDEFAULT(col_name)\n\nReturns the default value for a table column. Starting with MySQL\n5.0.2, an error results if the column has no default value.\n","mysql> UPDATE t SET i = DEFAULT(i)+1 WHERE id < 100;\n","miscellaneous-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (91,19,"TINYTEXT","TINYTEXT\n\nA TEXT column with a maximum length of 255 (28 - 1) characters.\n","","string-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (92,23,"OPTIMIZE TABLE","Syntax:\nOPTIMIZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE tbl_name [, tbl_name] ...\n\nOPTIMIZE TABLE should be used if you have deleted a large part of a\ntable or if you have made many changes to a table with variable-length\nrows (tables that have VARCHAR, BLOB, or TEXT columns). Deleted records\nare maintained in a linked list and subsequent INSERT operations reuse\nold record positions. You can use OPTIMIZE TABLE to reclaim the unused\nspace and to defragment the data file.\n","","optimize-table");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (93,10,"DECODE","Syntax:\nDECODE(crypt_str,pass_str)\n\nDecrypts the encrypted string crypt_str using pass_str as the password.\ncrypt_str should be a string returned from ENCODE().\n","","encryption-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (94,17,"<=>","Syntax:\n<=>\n\nNULL-safe equal. This operator performs an equality comparison like the\n= operator, but returns 1 rather than NULL if both operands are NULL,\nand 0 rather than NULL if one operand isNULL.\n","mysql> SELECT 1 <=> 1, NULL <=> NULL, 1 <=> NULL;\n -> 1, 1, 0\nmysql> SELECT 1 = 1, NULL = NULL, 1 = NULL;\n -> 1, NULL, NULL\n","comparison-operators");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (95,24,"LOAD DATA FROM MASTER","Syntax:\nLOAD DATA FROM MASTER\n\nThis command takes a snapshot of the master and copies it to the slave.\nIt updates the values of MASTER_LOG_FILE and MASTER_LOG_POS so that the\nslave starts replicating from the correct position. Any table and\ndatabase exclusion rules specified with the --replicate-*-do-* and\n--replicate-*-ignore-* options are honored. --replicate-rewrite-db is\nnot taken into account. This is because a user could, with this option,\nset up a non-unique mapping such as --replicate-rewrite-db=db1->db3 and\n--replicate-rewrite-db=db2->db3, which would confuse the slave when\nloading tables from the master.\n\nUse of this statement is subject to the following conditions:\n\no It works only with MyISAM tables. Attempting to load a non-MyISAM\n table results in the following error:\n\nERROR 1189 (08S01): Net error reading from master\n\no It acquires a global read lock on the master while taking the\n snapshot, which prevents updates on the master during the load\n operation.\n\nIf you are loading large tables, you might have to increase the values\nof net_read_timeout and net_write_timeout on both the master and slave\nservers. See [server-system-variables].\n\nNote that LOAD DATA FROM MASTER does not copy any tables from the mysql\ndatabase. This makes it easy to have different users and privileges on\nthe master and the slave.\n\nThe LOAD DATA FROM MASTER statement requires the replication account\nthat is used to connect to the master to have the RELOAD and SUPER\nprivileges on the master and the SELECT privilege for all master tables\nyou want to load. All master tables for which the user does not have\nthe SELECT privilege are ignored by LOAD DATA FROM MASTER. This is\nbecause the master hides them from the user: LOAD DATA FROM MASTER\ncalls SHOW DATABASES to know the master databases to load, but SHOW\nDATABASES returns only databases for which the user has some privilege.\nSee [show-databases]. On the slave side, the user that issues LOAD DATA\nFROM MASTER should have grants to drop and create the databases and\ntables that are copied.\n","","load-data-from-master");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (96,24,"RESET","Syntax:\nRESET reset_option [, reset_option] ...\n\nThe RESET statement is used to clear the state of various server\noperations. It also acts as a stronger version of the FLUSH statement.\nSee [flush].\n","","reset");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (97,13,"GET_LOCK","Syntax:\nGET_LOCK(str,timeout)\n\nTries to obtain a lock with a name given by the string str, with a\ntimeout of timeout seconds. Returns 1 if the lock was obtained\nsuccessfully, 0 if the attempt timed out (for example, because another\nclient has previously locked the name), or NULL if an error occurred\n(such as running out of memory or the thread was killed with mysqladmin\nkill). If you have a lock obtained with GET_LOCK(), it is released when\nyou execute RELEASE_LOCK(), execute a new GET_LOCK(), or your\nconnection terminates (either normally or abnormally).\n\nThis function can be used to implement application locks or to simulate\nrecord locks. Names are locked on a server-wide basis. If a name has\nbeen locked by one client, GET_LOCK() blocks any request by another\nclient for a lock with the same name. This allows clients that agree on\na given lock name to use the name to perform cooperative advisory\nlocking. But be aware that it also allows a client that is not among\nthe set of cooperating clients to lock a name, either inadvertently or\ndeliberately, and thus prevent any of the cooperating clients from\nlocking that name. One way to reduce the likelihood of this is to use\nlock names that are database-specific or application-specific. For\nexample, use lock names of the form db_name.str or app_name.str.\n","mysql> SELECT GET_LOCK('lock1',10);\n -> 1\nmysql> SELECT IS_FREE_LOCK('lock2');\n -> 1\nmysql> SELECT GET_LOCK('lock2',10);\n -> 1\nmysql> SELECT RELEASE_LOCK('lock2');\n -> 1\nmysql> SELECT RELEASE_LOCK('lock1');\n -> NULL\n","miscellaneous-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (98,32,"UCASE","Syntax:\nUCASE(str)\n\nUCASE() is a synonym for UPPER().\n","","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (99,24,"SHOW BINLOG EVENTS","Syntax:\nSHOW BINLOG EVENTS\n [IN 'log_name'] [FROM pos] [LIMIT [offset,] row_count]\n\nShows the events in the binary log. If you do not specify 'log_name',\nthe first binary log is displayed.\n","","show-binlog-events");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (100,28,"MPOLYFROMWKB","MPolyFromWKB(wkb[,srid]) , MultiPolygonFromWKB(wkb[,srid])\n\nConstructs a MULTIPOLYGON value using its WKB representation and SRID.\n","","gis-wkb-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (101,34,"ITERATE","Syntax:\nITERATE label\n\nITERATE can only appear within LOOP, REPEAT, and WHILE statements.\nITERATE means \"do the loop again.\"\n","CREATE PROCEDURE doiterate(p1 INT)\nBEGIN\n label1: LOOP\n SET p1 = p1 + 1;\n IF p1 < 10 THEN ITERATE label1; END IF;\n LEAVE label1;\n END LOOP label1;\n SET @x = p1;\nEND\n","iterate-statement");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (102,24,"DO","Syntax:\nDO expr [, expr] ...\n\nDO executes the expressions but does not return any results. This is\nshorthand for SELECT expr, ..., but has the advantage that it is\nslightly faster when you do not care about the result.\n\nDO is useful mainly with functions that have side effects, such as\nRELEASE_LOCK().\n","","do");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (103,27,"CURTIME","Syntax:\nCURTIME()\n\nReturns the current time as a value in 'HH:MM:SS' or HHMMSS format,\ndepending on whether the function is used in a string or numeric\ncontext.\n","mysql> SELECT CURTIME();\n -> '23:50:26'\nmysql> SELECT CURTIME() + 0;\n -> 235026\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (104,32,"CHAR_LENGTH","Syntax:\nCHAR_LENGTH(str)\n\nReturns the length of the string str, measured in characters. A\nmulti-byte character counts as a single character. This means that for\na string containing five two-byte characters, LENGTH() returns 10,\nwhereas CHAR_LENGTH() returns 5.\n","","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (105,19,"BIGINT","BIGINT[(M)] [UNSIGNED] [ZEROFILL]\n\nA large integer. The signed range is -9223372036854775808 to\n9223372036854775807. The unsigned range is 0 to 18446744073709551615.\n","","numeric-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (106,24,"SET","Syntax:\nSET variable_assignment [, variable_assignment] ...\n\nvariable_assignment:\n user_var_name = expr\n | [GLOBAL | SESSION] system_var_name = expr\n | @@[global. | session.]system_var_name = expr\n\nSET sets different types of variables that affect the operation of the\nserver or your client. It can be used to assign values to user\nvariables or system variables.\n","","set-option");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (107,19,"DATE","DATE\n\nA date. The supported range is '1000-01-01' to '9999-12-31'. MySQL\ndisplays DATE values in 'YYYY-MM-DD' format, but allows you to assign\nvalues to DATE columns using either strings or numbers.\n","","date-and-time-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (108,32,"CONV","Syntax:\nCONV(N,from_base,to_base)\n\nConverts numbers between different number bases. Returns a string\nrepresentation of the number N, converted from base from_base to base\nto_base. Returns NULL if any argument is NULL. The argument N is\ninterpreted as an integer, but may be specified as an integer or a\nstring. The minimum base is 2 and the maximum base is 36. If to_base is\na negative number, N is regarded as a signed number. Otherwise, N is\ntreated as unsigned. CONV() works with 64-bit precision.\n","mysql> SELECT CONV('a',16,2);\n -> '1010'\nmysql> SELECT CONV('6E',18,8);\n -> '172'\nmysql> SELECT CONV(-17,10,-18);\n -> '-H'\nmysql> SELECT CONV(10+'10'+'10'+0xa,10,10);\n -> '40'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (109,27,"EXTRACT","Syntax:\nEXTRACT(type FROM date)\n\nThe EXTRACT() function uses the same kinds of interval type specifiers\nas DATE_ADD() or DATE_SUB(), but extracts parts from the date rather\nthan performing date arithmetic.\n","mysql> SELECT EXTRACT(YEAR FROM '1999-07-02');\n -> 1999\nmysql> SELECT EXTRACT(YEAR_MONTH FROM '1999-07-02 01:02:03');\n -> 199907\nmysql> SELECT EXTRACT(DAY_MINUTE FROM '1999-07-02 01:02:03');\n -> 20102\nmysql> SELECT EXTRACT(MICROSECOND\n -> FROM '2003-01-02 10:30:00.00123');\n -> 123\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (110,10,"ENCRYPT","Syntax:\nENCRYPT(str[,salt])\n\nEncrypt str using the Unix crypt() system call. The salt argument\nshould be a string with at least two characters. If no salt argument is\ngiven, a random value is used.\n","mysql> SELECT ENCRYPT('hello');\n -> 'VxuFAJXVARROc'\n","encryption-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (111,10,"OLD_PASSWORD","Syntax:\nOLD_PASSWORD(str)\n\nOLD_PASSWORD() was added to MySQL when the implementation of PASSWORD()\nwas changed to improve security. OLD_PASSWORD() returns the value of\nthe old (pre-4.1) implementation of PASSWORD(), and is intended to\npermit you to reset passwords for any pre-4.1 clients that need to\nconnect to your version 5.0 MySQL server without locking them out. See\n[password-hashing].\n","","encryption-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (112,34,"SET VARIABLE","Syntax:\nSET var_name = expr [, var_name = expr] ...\n\nThe SET statement in stored procedures is an extended version of the\ngeneral SET statement. Referenced variables may be ones declared inside\na routine, or global server variables.\n\nThe SET statement in stored procedures is implemented as part of the\npre-existing SET syntax. This allows an extended syntax of SET a=x,\nb=y, ... where different variable types (locally declared variables and\nglobal and session server variables) can be mixed. This also allows\ncombinations of local variables and some options that make sense only\nfor system variables; in that case, the options are recognized but\nignored.\n","","set-statement");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (113,13,"FORMAT","Syntax:\nFORMAT(X,D)\n\nFormats the number X to a format like '#,###,###.##', rounded to D\ndecimals, and returns the result as a string. If D is 0, the result has\nno decimal point or fractional part.\n","mysql> SELECT FORMAT(12332.123456, 4);\n -> '12,332.1235'\nmysql> SELECT FORMAT(12332.1,4);\n -> '12,332.1000'\nmysql> SELECT FORMAT(12332.2,0);\n -> '12,332'\n","miscellaneous-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (114,12,"||","Syntax:\nOR, ||\n\nLogical OR. When both operands are non-NULL, the result is 1 if any\noperand is non-zero, and 0 otherwise. With a NULL operand, the result\nis 1 if the other operand is non-zero, and NULL otherwise. If both\noperands are NULL, the result is NULL.\n","mysql> SELECT 1 || 1;\n -> 1\nmysql> SELECT 1 || 0;\n -> 1\nmysql> SELECT 0 || 0;\n -> 0\nmysql> SELECT 0 || NULL;\n -> NULL\nmysql> SELECT 1 || NULL;\n -> 1\n","logical-operators");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (115,32,"BIT_LENGTH","Syntax:\nBIT_LENGTH(str)\n\nReturns the length of the string str in bits.\n","mysql> SELECT BIT_LENGTH('text');\n -> 32\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (116,2,"EXTERIORRING","ExteriorRing(poly)\n\nReturns the exterior ring of the Polygon value poly as a LineString.\n","mysql> SET @poly =\n -> 'Polygon((0 0,0 3,3 3,3 0,0 0),(1 1,1 2,2 2,2 1,1 1))';\nmysql> SELECT AsText(ExteriorRing(GeomFromText(@poly)));\n+-------------------------------------------+\n| AsText(ExteriorRing(GeomFromText(@poly))) |\n+-------------------------------------------+\n| LINESTRING(0 0,0 3,3 3,3 0,0 0) |\n+-------------------------------------------+\n","polygon-property-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (117,28,"GEOMFROMWKB","GeomFromWKB(wkb[,srid]) , GeometryFromWKB(wkb[,srid])\n\nConstructs a geometry value of any type using its WKB representation\nand SRID.\n","","gis-wkb-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (118,24,"SHOW SLAVE HOSTS","Syntax:\nSHOW SLAVE HOSTS\n\nDisplays a list of replication slaves currently registered with the\nmaster. Any slave not started with the --report-host=slave_name option\nis not visible in this list.\n","","show-slave-hosts");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (119,8,"START TRANSACTION","Syntax:\nSTART TRANSACTION | BEGIN [WORK]\nCOMMIT [WORK] [AND [NO] CHAIN] [[NO] RELEASE]\nROLLBACK [WORK] [AND [NO] CHAIN] [[NO] RELEASE]\nSET AUTOCOMMIT = {0 | 1}\n\nThe START TRANSACTION or BEGIN statement begin a new transaction.\nCOMMIT commits the current transaction, making its changes permanent.\nROLLBACK rolls back the current transaction, canceling its changes. The\nSET AUTOCOMMIT statement disables or enables the default autocommit\nmode for the current connection.\n\nBeginning with MySQL 5.0.3, the optional WORK keyword is supported for\nCOMMIT and RELEASE, as are the CHAIN and RELEASE clauses. CHAIN and\nRELEASE can be used for additional control over transaction completion.\nThe value of the completion_type system variable determines the default\ncompletion behavior. See [server-system-variables].\n\nThe AND CHAIN clause causes a new transaction to begin as soon as the\ncurrent one end, and the new transaction has the same isolation level\nas the just-terminated transaction. The RELEASE clause causes the\nserver to disconnect the current client connection after terminating\nthe current transaction. Including the NO keyword suppresses CHAIN or\nRELEASE completion, which can be useful if the completion_type system\nvariable is set to cause chaining or release completion by default.\n\nBy default, MySQL runs with autocommit mode enabled. This means that as\nsoon as you execute a statement that updates (modifies) a table, MySQL\nstores the update on disk.\n\nIf you are using a transaction-safe storage engine (like InnoDB, BDB or\nNDB Cluster), you can disable autocommit mode with the following\nstatement:\n\nSET AUTOCOMMIT=0;\n\nAfter disabling autocommit mode by setting the AUTOCOMMIT variable to\nzero, you must use COMMIT to store your changes to disk or ROLLBACK if\nyou want to ignore the changes you have made since the beginning of\nyour transaction.\n\nIf you want to disable autocommit mode for a single series of\nstatements, you can use the START TRANSACTION statement:\n","START TRANSACTION;\nSELECT @A:=SUM(salary) FROM table1 WHERE type=1;\nUPDATE table2 SET summary=@A WHERE type=1;\nCOMMIT;\n","commit");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (120,17,"BETWEEN AND","Syntax:\nexpr BETWEEN min AND max\n\nIf expr is greater than or equal to min and expr is less than or equal\nto max, BETWEEN returns 1, otherwise it returns 0. This is equivalent\nto the expression (min <= expr AND expr <= max) if all the arguments\nare of the same type. Otherwise type conversion takes place according\nto the rules described at the beginning of this section, but applied to\nall the three arguments.\n","mysql> SELECT 1 BETWEEN 2 AND 3;\n -> 0\nmysql> SELECT 'b' BETWEEN 'a' AND 'c';\n -> 1\nmysql> SELECT 2 BETWEEN 2 AND '3';\n -> 1\nmysql> SELECT 2 BETWEEN 2 AND 'x-3';\n -> 0\n","comparison-operators");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (121,21,"MULTIPOLYGON","MultiPolygon(poly1,poly2,...)\n\nConstructs a WKB MultiPolygon value from a set of WKB Polygon\narguments. If any argument is not a WKB Polygon, the return value is\nNULL.\n","","gis-mysql-specific-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (122,27,"TIME_FORMAT","Syntax:\nTIME_FORMAT(time,format)\n\nThis is used like the DATE_FORMAT() function, but the format string may\ncontain only those format specifiers that handle hours, minutes, and\nseconds. Other specifiers produce a NULL value or 0.\n","mysql> SELECT TIME_FORMAT('100:00:00', '%H %k %h %I %l');\n -> '100 100 04 04 4'\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (123,32,"LEFT","Syntax:\nLEFT(str,len)\n\nReturns the leftmost len characters from the string str.\n","mysql> SELECT LEFT('foobarbar', 5);\n -> 'fooba'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (124,23,"FLUSH QUERY CACHE","You can defragment the query cache to better utilize its memory with\nthe FLUSH QUERY CACHE statement. The statement does not remove any\nqueries from the cache.\n\nThe RESET QUERY CACHE statement removes all query results from the\nquery cache. The FLUSH TABLES statement also does this.\n","","query-cache-status-and-maintenance");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (125,19,"SET DATA TYPE","SET('value1','value2',...)\n\nA set. A string object that can have zero or more values, each of which\nmust be chosen from the list of values 'value1', 'value2', ... A SET\ncolumn can have a maximum of 64 members. SET values are represented\ninternally as integers.\n","","string-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (126,5,"RAND","Syntax:\nRAND(), RAND(N)\n\nReturns a random floating-point value v between 0 and 1 inclusive (that\nis, in the range 0 <= v <= 1.0). If an integer argument N is specified,\nit is used as the seed value, which produces a repeatable sequence.\n","mysql> SELECT RAND();\n -> 0.9233482386203\nmysql> SELECT RAND(20);\n -> 0.15888261251047\nmysql> SELECT RAND(20);\n -> 0.15888261251047\nmysql> SELECT RAND();\n -> 0.63553050033332\nmysql> SELECT RAND();\n -> 0.70100469486881\nmysql> SELECT RAND(20);\n -> 0.15888261251047\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (127,32,"RPAD","Syntax:\nRPAD(str,len,padstr)\n\nReturns the string str, right-padded with the string padstr to a length\nof len characters. If str is longer than len, the return value is\nshortened to len characters.\n","mysql> SELECT RPAD('hi',5,'?');\n -> 'hi???'\nmysql> SELECT RPAD('hi',1,'?');\n -> 'h'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (128,24,"INSERT INTO","Syntax:\nINSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE]\n [INTO] tbl_name [(col_name,...)]\n VALUES ({expr | DEFAULT},...),(...),...\n [ ON DUPLICATE KEY UPDATE col_name=expr, ... ]\n\nOr:\n\nINSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE]\n [INTO] tbl_name\n SET col_name={expr | DEFAULT}, ...\n [ ON DUPLICATE KEY UPDATE col_name=expr, ... ]\n\nOr:\n\nINSERT [LOW_PRIORITY | HIGH_PRIORITY] [IGNORE]\n [INTO] tbl_name [(col_name,...)]\n SELECT ...\n [ ON DUPLICATE KEY UPDATE col_name=expr, ... ]\n\nINSERT inserts new rows into an existing table. The INSERT ... VALUES\nand INSERT ... SET forms of the statement insert rows based on\nexplicitly specified values. The INSERT ... SELECT form inserts rows\nselected from another table or tables. INSERT ... SELECT is discussed\nfurther in [insert-select].\n","","insert");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (129,35,"CREATE DATABASE","Syntax:\nCREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name\n [create_specification [, create_specification] ...]\n\ncreate_specification:\n [DEFAULT] CHARACTER SET charset_name\n | [DEFAULT] COLLATE collation_name\n\nCREATE DATABASE creates a database with the given name. To use CREATE\nDATABASE, you need the CREATE privilege on the database.\n","","create-database");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (130,19,"DEC","DEC[(M[,D])] [UNSIGNED] [ZEROFILL], NUMERIC[(M[,D])] [UNSIGNED]\n[ZEROFILL], FIXED[(M[,D])] [UNSIGNED] [ZEROFILL]\n\nThese are synonyms for DECIMAL. The FIXED synonym is available for\ncompatibility with other servers.\n","","numeric-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (131,14,"VAR_POP","Syntax:\nVAR_POP(expr)\n\nReturns the population standard variance of expr. It considers rows as\nthe whole population, not as a sample, so it has the number of rows as\nthe denominator. This function was added in MySQL 5.0.3. Before 5.0.3,\nyou can use VARIANCE(), which is equivalent but is not standard SQL.\n\nVAR_POP() returns NULL if there were no matching rows.\n","","group-by-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (132,32,"ELT","Syntax:\nELT(N,str1,str2,str3,...)\n\nReturns str1 if N = 1, str2 if N = 2, and so on. Returns NULL if N is\nless than 1 or greater than the number of arguments. ELT() is the\ncomplement of FIELD().\n","mysql> SELECT ELT(1, 'ej', 'Heja', 'hej', 'foo');\n -> 'ej'\nmysql> SELECT ELT(4, 'ej', 'Heja', 'hej', 'foo');\n -> 'foo'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (133,35,"ALTER VIEW","Syntax:\nALTER\n [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]\n [DEFINER = { user | CURRENT_USER }]\n [SQL SECURITY { DEFINER | INVOKER }]\n VIEW view_name [(column_list)]\n AS select_statement\n [WITH [CASCADED | LOCAL] CHECK OPTION]\n\nThis statement changes the definition of an existing view. The syntax\nis similar to that for CREATE VIEW. See [create-view]. This statement\nrequires the CREATE VIEW and DROP privileges for the view, and some\nprivilege for each column referred to in the SELECT statement.\n","","alter-view");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (134,24,"SHOW DATABASES","Syntax:\nSHOW {DATABASES | SCHEMAS} [LIKE 'pattern']\n\nSHOW DATABASES lists the databases on the MySQL server host. You can\nalso get this list using the mysqlshow command. You see only those\ndatabases for which you have some kind of privilege, unless you have\nthe global SHOW DATABASES privilege.\n\nIf the server was started with the --skip-show-database option, you\ncannot use this statement at all unless you have the SHOW DATABASES\nprivilege.\n\nSHOW SCHEMAS can be used as of MySQL 5.0.2\n","","show-databases");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (135,18,"~","Syntax:\n~\n\nInvert all bits.\n","mysql> SELECT 5 & ~1;\n -> 4\n","bit-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (136,19,"TEXT","TEXT[(M)]\n\nA TEXT column with a maximum length of 65,535 (216 - 1) characters.\n\nAn optional length M can be given. Then MySQL will create the column as\nthe smallest TEXT type large enough to hold values M characters long.\n","","string-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (137,32,"CONCAT_WS","Syntax:\nCONCAT_WS(separator,str1,str2,...)\n\nCONCAT_WS() stands for CONCAT With Separator and is a special form of\nCONCAT(). The first argument is the separator for the rest of the\narguments. The separator is added between the strings to be\nconcatenated. The separator can be a string as can the rest of the\narguments. If the separator is NULL, the result is NULL. The function\nskips any NULL values after the separator argument.\n","mysql> SELECT CONCAT_WS(',','First name','Second name','Last Name');\n -> 'First name,Second name,Last Name'\nmysql> SELECT CONCAT_WS(',','First name',NULL,'Last Name');\n -> 'First name,Last Name'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (138,15,"ROW_COUNT","Syntax:\nROW_COUNT()\n\nROW_COUNT() returns the number of rows updated, inserted, or deleted by\nthe preceding statement. This is the same as the row count that the\nmysql client displays and the value from the mysql_affected_rows() C\nAPI function.\n","mysql> INSERT INTO t VALUES(1),(2),(3);\nQuery OK, 3 rows affected (0.00 sec)\nRecords: 3 Duplicates: 0 Warnings: 0\n\nmysql> SELECT ROW_COUNT();\n+-------------+\n| ROW_COUNT() |\n+-------------+\n| 3 |\n+-------------+\n1 row in set (0.00 sec)\n\nmysql> DELETE FROM t WHERE i IN(1,2);\nQuery OK, 2 rows affected (0.00 sec)\n\nmysql> SELECT ROW_COUNT();\n+-------------+\n| ROW_COUNT() |\n+-------------+\n| 2 |\n+-------------+\n1 row in set (0.00 sec)\n","information-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (139,5,"ASIN","Syntax:\nASIN(X)\n\nReturns the arc sine of X, that is, the value whose sine is X. Returns\nNULL if X is not in the range -1 to 1.\n","mysql> SELECT ASIN(0.2);\n -> 0.20135792079033\nmysql> SELECT ASIN('foo');\n\n+-------------+\n| ASIN('foo') |\n+-------------+\n| 0 |\n+-------------+\n1 row in set, 1 warning (0.00 sec)\n\nmysql> SHOW WARNINGS;\n+---------+------+-----------------------------------------+\n| Level | Code | Message |\n+---------+------+-----------------------------------------+\n| Warning | 1292 | Truncated incorrect DOUBLE value: 'foo' |\n+---------+------+-----------------------------------------+\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (140,5,"SIGN","Syntax:\nSIGN(X)\n\nReturns the sign of the argument as -1, 0, or 1, depending on whether X\nis negative, zero, or positive.\n","mysql> SELECT SIGN(-32);\n -> -1\nmysql> SELECT SIGN(0);\n -> 0\nmysql> SELECT SIGN(234);\n -> 1\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (141,27,"SEC_TO_TIME","Syntax:\nSEC_TO_TIME(seconds)\n\nReturns the seconds argument, converted to hours, minutes, and seconds,\nas a value in 'HH:MM:SS' or HHMMSS format, depending on whether the\nfunction is used in a string or numeric context.\n","mysql> SELECT SEC_TO_TIME(2378);\n -> '00:39:38'\nmysql> SELECT SEC_TO_TIME(2378) + 0;\n -> 3938\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (142,19,"FLOAT","FLOAT[(M,D)] [UNSIGNED] [ZEROFILL]\n\nA small (single-precision) floating-point number. Allowable values are\n-3.402823466E+38 to -1.175494351E-38, 0, and 1.175494351E-38 to\n3.402823466E+38. These are the theoretical limits, based on the IEEE\nstandard. The actual range might be slightly smaller depending on your\nhardware or operating system.\n\nM is the total number of decimal digits and D is the number of digits\nfollowing the decimal point. If M and D are omitted, values are stored\nto the limits allowed by the hardware. A single-precision\nfloating-point number is accurate to approximately 7 decimal places.\n\nIf UNSIGNED is specified, negative values are disallowed.\n\nUsing FLOAT might give you some unexpected problems because all\ncalculations in MySQL are done with double precision. See\n[no-matching-rows].\n","","numeric-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (143,32,"LOCATE","Syntax:\nLOCATE(substr,str), LOCATE(substr,str,pos)\n\nThe first syntax returns the position of the first occurrence of\nsubstring substr in string str. The second syntax returns the position\nof the first occurrence of substring substr in string str, starting at\nposition pos. Returns 0 if substr is not in str.\n","mysql> SELECT LOCATE('bar', 'foobarbar');\n -> 4\nmysql> SELECT LOCATE('xbar', 'foobar');\n -> 0\nmysql> SELECT LOCATE('bar', 'foobarbar',5);\n -> 7\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (144,15,"CHARSET","Syntax:\nCHARSET(str)\n\nReturns the character set of the string argument.\n","mysql> SELECT CHARSET('abc');\n -> 'latin1'\nmysql> SELECT CHARSET(CONVERT('abc' USING utf8));\n -> 'utf8'\nmysql> SELECT CHARSET(USER());\n -> 'utf8'\n","information-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (145,27,"SUBDATE","Syntax:\nSUBDATE(date,INTERVAL expr type), SUBDATE(expr,days)\n\nWhen invoked with the INTERVAL form of the second argument, SUBDATE()\nis a synonym for DATE_SUB(). For information on the INTERVAL argument,\nsee the discussion for DATE_ADD().\n\nmysql> SELECT DATE_SUB('1998-01-02', INTERVAL 31 DAY);\n -> '1997-12-02'\nmysql> SELECT SUBDATE('1998-01-02', INTERVAL 31 DAY);\n -> '1997-12-02'\n\nThe second form allows the use of an integer value for days. In such\ncases, it is reckoned to be the number of days to be subtracted from\nthe date or datetime expression expr.\n\nmysql> SELECT SUBDATE('1998-01-02 12:00:00', 31);\n -> '1997-12-02 12:00:00'\n\nNote that you cannot use format \"%X%V\" to convert a year-week string to\na date as the combination of a year and week does not uniquely identify\na year and month if the week crosses a month boundary. To convert a\nyear-week to a date, then you should also specify the weekday:\n\nmysql> select str_to_date('200442 Monday', '%X%V %W');\n-> 2004-10-18\n","","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (146,27,"DAYOFYEAR","Syntax:\nDAYOFYEAR(date)\n\nReturns the day of the year for date, in the range 1 to 366.\n","mysql> SELECT DAYOFYEAR('1998-02-03');\n -> 34\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (147,5,"%","Syntax:\nMOD(N,M), N % M, N MOD M\n\nModulo operation. Returns the remainder of N divided by M.\n","mysql> SELECT MOD(234, 10);\n -> 4\nmysql> SELECT 253 % 7;\n -> 1\nmysql> SELECT MOD(29,9);\n -> 2\nmysql> SELECT 29 MOD 9;\n -> 2\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (148,19,"LONGTEXT","LONGTEXT\n\nA TEXT column with a maximum length of 4,294,967,295 or 4GB (232 - 1)\ncharacters. The maximum effective (permitted) length of LONGTEXT\ncolumns depends on the configured maximum packet size in the\nclient/server protocol and available memory.\n","","string-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (149,25,"DISJOINT","Disjoint(g1,g2)\n\nReturns 1 or 0 to indicate whether or not g1 is spatially disjoint from\n(does not intersect) g2.\n","","functions-that-test-spatial-relationships-between-geometries");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (150,24,"KILL","Syntax:\nKILL [CONNECTION | QUERY] thread_id\n\nEach connection to mysqld runs in a separate thread. You can see which\nthreads are running with the SHOW PROCESSLIST statement and kill a\nthread with the KILL thread_id statement.\n\nIn MySQL 5.0.0, KILL allows the optional CONNECTION or QUERY modifier:\n\no KILL CONNECTION is the same as KILL with no modifier: It terminates\n the connection associated with the given thread_id.\n\no KILL QUERY terminates the statement that the connection is currently\n executing, but leaves the connection itself intact.\n\nIf you have the PROCESS privilege, you can see all threads. If you have\nthe SUPER privilege, you can kill all threads and statements.\nOtherwise, you can see and kill only your own threads and statements.\n\nYou can also use the mysqladmin processlist and mysqladmin kill\ncommands to examine and kill threads.\n\nNote: You cannot use KILL with the Embedded MySQL Server library,\nbecause the embedded server merely runs inside the threads of the host\napplication. It does not create any connection threads of its own.\n","","kill");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (151,4,"ASTEXT","AsText(g)\n\nConverts a value in internal geometry format to its WKT representation\nand returns the string result.\n","mysql> SET @g = 'LineString(1 1,2 2,3 3)';\nmysql> SELECT AsText(GeomFromText(@g));\n+--------------------------+\n| AsText(GeomFromText(@g)) |\n+--------------------------+\n| LINESTRING(1 1,2 2,3 3) |\n+--------------------------+\n","functions-to-convert-geometries-between-formats");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (152,32,"LPAD","Syntax:\nLPAD(str,len,padstr)\n\nReturns the string str, left-padded with the string padstr to a length\nof len characters. If str is longer than len, the return value is\nshortened to len characters.\n\n","mysql> SELECT LPAD('hi',4,'??');\n -> '??hi'\nmysql> SELECT LPAD('hi',1,'??');\n -> 'h'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (153,23,"RESTORE TABLE","Syntax:\nRESTORE TABLE tbl_name [, tbl_name] ... FROM '/path/to/backup/directory'\n\nRestores the table or tables from a backup that was made with BACKUP\nTABLE. Existing tables are not overwritten; if you try to restore over\nan existing table, you get an error. Just as BACKUP TABLE, RESTORE\nTABLE currently works only for MyISAM tables. The directory should be\nspecified as a full pathname.\n\nThe backup for each table consists of its .frm format file and .MYD\ndata file. The restore operation restores those files, then uses them\nto rebuild the .MYI index file. Restoring takes longer than backing up\ndue to the need to rebuild the indexes. The more indexes the table has,\nthe longer it takes.\n","","restore-table");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (154,34,"DECLARE CONDITION","Syntax:\nDECLARE condition_name CONDITION FOR condition_value\n\ncondition_value:\n SQLSTATE [VALUE] sqlstate_value\n | mysql_error_code\n\nThis statement specifies conditions that need specific handling. It\nassociates a name with a specified error condition. The name can\nsubsequently be used in a DECLARE HANDLER statement. See\n[declare-handlers].\n\nIn addition to SQLSTATE values, MySQL error codes are also supported.\n","","declare-conditions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (155,25,"OVERLAPS","Overlaps(g1,g2)\n\nReturns 1 or 0 to indicate whether or not g1 spatially overlaps g2. The\nterm spatially overlaps is used if two geometries intersect and their\nintersection results in a geometry of the same dimension but not equal\nto either of the given geometries.\n","","functions-that-test-spatial-relationships-between-geometries");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (156,22,"NUMGEOMETRIES","NumGeometries(gc)\n\nReturns the number of geometries in the GeometryCollection value gc.\n","mysql> SET @gc = 'GeometryCollection(Point(1 1),LineString(2 2, 3 3))';\nmysql> SELECT NumGeometries(GeomFromText(@gc));\n+----------------------------------+\n| NumGeometries(GeomFromText(@gc)) |\n+----------------------------------+\n| 2 |\n+----------------------------------+\n","geometrycollection-property-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (157,24,"SET GLOBAL SQL_SLAVE_SKIP_COUNTER","Syntax:\nSET GLOBAL SQL_SLAVE_SKIP_COUNTER = n\n\nSkip the next n events from the master. This is useful for recovering\nfrom replication stops caused by a statement.\n\nThis statement is valid only when the slave thread is not running.\nOtherwise, it produces an error.\n","","set-global-sql-slave-skip-counter");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (158,27,"MONTHNAME","Syntax:\nMONTHNAME(date)\n\nReturns the full name of the month for date.\n","mysql> SELECT MONTHNAME('1998-02-05');\n -> 'February'\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (159,6,"MBREQUAL","MBREqual(g1,g2)\n\nReturns 1 or 0 to indicate whether or not the Minimum Bounding\nRectangles of the two geometries g1 and g2 are the same.\n","","relations-on-geometry-mbr");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (160,24,"CHANGE MASTER TO","Syntax:\n CHANGE MASTER TO master_def [, master_def] ...\n\nmaster_def:\n MASTER_HOST = 'host_name'\n | MASTER_USER = 'user_name'\n | MASTER_PASSWORD = 'password'\n | MASTER_PORT = port_num\n | MASTER_CONNECT_RETRY = count\n | MASTER_LOG_FILE = 'master_log_name'\n | MASTER_LOG_POS = master_log_pos\n | RELAY_LOG_FILE = 'relay_log_name'\n | RELAY_LOG_POS = relay_log_pos\n | MASTER_SSL = {0|1}\n | MASTER_SSL_CA = 'ca_file_name'\n | MASTER_SSL_CAPATH = 'ca_directory_name'\n | MASTER_SSL_CERT = 'cert_file_name'\n | MASTER_SSL_KEY = 'key_file_name'\n | MASTER_SSL_CIPHER = 'cipher_list'\n\nChanges the parameters that the slave server uses for connecting to and\ncommunicating with the master server.\n\nMASTER_USER, MASTER_PASSWORD, MASTER_SSL, MASTER_SSL_CA,\nMASTER_SSL_CAPATH, MASTER_SSL_CERT, MASTER_SSL_KEY, and\nMASTER_SSL_CIPHER provide information to the slave about how to connect\nto its master.\n\nThe SSL options (MASTER_SSL, MASTER_SSL_CA, MASTER_SSL_CAPATH,\nMASTER_SSL_CERT, MASTER_SSL_KEY, and MASTER_SSL_CIPHER) can be changed\neven on slaves that are compiled without SSL support. They are saved to\nthe master.info file, but are ignored until you use a server that has\nSSL support enabled.\n\nIf you don't specify a given parameter, it keeps its old value, except\nas indicated in the following discussion. For example, if the password\nto connect to your MySQL master has changed, you just need to issue\nthese statements to tell the slave about the new password:\n\nmysql> STOP SLAVE; -- if replication was running\nmysql> CHANGE MASTER TO MASTER_PASSWORD='new3cret';\nmysql> START SLAVE; -- if you want to restart replication\n\nThere is no need to specify the parameters that do not change (host,\nport, user, and so forth).\n\nMASTER_HOST and MASTER_PORT are the hostname (or IP address) of the\nmaster host and its TCP/IP port. Note that if MASTER_HOST is equal to\nlocalhost, then, like in other parts of MySQL, the port may be ignored\n(if Unix socket files can be used, for example).\n\nIf you specify MASTER_HOST or MASTER_PORT, the slave assumes that the\nmaster server is different than before (even if you specify a host or\nport value that is the same as the current value.) In this case, the\nold values for the master binary log name and position are considered\nno longer applicable, so if you do not specify MASTER_LOG_FILE and\nMASTER_LOG_POS in the statement, MASTER_LOG_FILE='' and\nMASTER_LOG_POS=4 are silently appended to it.\n\nMASTER_LOG_FILE and MASTER_LOG_POS are the coordinates at which the\nslave I/O thread should begin reading from the master the next time the\nthread starts. If you specify either of them, you cannot specify\nRELAY_LOG_FILE or RELAY_LOG_POS. If neither of MASTER_LOG_FILE or\nMASTER_LOG_POS are specified, the slave uses the last coordinates of\nthe slave SQL thread before CHANGE MASTER was issued. This ensures that\nthere is no discontinuity in replication, even if the slave SQL thread\nwas late compared to the slave I/O thread, when you merely want to\nchange, say, the password to use.\n\nCHANGE MASTER deletes all relay log files and starts a new one, unless\nyou specify RELAY_LOG_FILE or RELAY_LOG_POS. In that case, relay logs\nare kept; the relay_log_purge global variable is set silently to 0.\n\nCHANGE MASTER TO updates the contents of the master.info and\nrelay-log.info files.\n\nCHANGE MASTER is useful for setting up a slave when you have the\nsnapshot of the master and have recorded the log and the offset\ncorresponding to it. After loading the snapshot into the slave, you can\nrun CHANGE MASTER TO MASTER_LOG_FILE='log_name_on_master',\nMASTER_LOG_POS=log_offset_on_master on the slave.\n\nExamples:\n\nmysql> CHANGE MASTER TO\n -> MASTER_HOST='master2.mycompany.com',\n -> MASTER_USER='replication',\n -> MASTER_PASSWORD='bigs3cret',\n -> MASTER_PORT=3306,\n -> MASTER_LOG_FILE='master2-bin.001',\n -> MASTER_LOG_POS=4,\n -> MASTER_CONNECT_RETRY=10;\n\nmysql> CHANGE MASTER TO\n -> RELAY_LOG_FILE='slave-relay-bin.006',\n -> RELAY_LOG_POS=4025;\n","","change-master-to");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (161,35,"DROP DATABASE","Syntax:\nDROP {DATABASE | SCHEMA} [IF EXISTS] db_name\n\nDROP DATABASE drops all tables in the database and deletes the\ndatabase. Be very careful with this statement! To use DROP DATABASE,\nyou need the DROP privilege on the database.\n\nIF EXISTS is used to prevent an error from occurring if the database\ndoes not exist.\n\nDROP SCHEMA can be used as of MySQL 5.0.2.\n","","drop-database");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (162,27,"TIMESTAMP FUNCTION","Syntax:\nTIMESTAMP(expr), TIMESTAMP(expr,expr2)\n\nWith a single argument, this function returns the date or datetime\nexpression expr as a datetime value. With two arguments, it adds the\ntime expression expr2 to the date or datetime expression expr and\nreturns theresult as a datetime value.\n","mysql> SELECT TIMESTAMP('2003-12-31');\n -> '2003-12-31 00:00:00'\nmysql> SELECT TIMESTAMP('2003-12-31 12:00:00','12:00:00');\n -> '2004-01-01 00:00:00'\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (163,32,"CHARACTER_LENGTH","Syntax:\nCHARACTER_LENGTH(str)\n\nCHARACTER_LENGTH() is a synonym for CHAR_LENGTH().\n","","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (164,24,"SHOW GRANTS","Syntax:\nSHOW GRANTS FOR user\n\nThis statement lists the GRANT statements that must be issued to\nduplicate the privileges that are granted to a MySQL user account.\n\nmysql> SHOW GRANTS FOR 'root'@'localhost';\n+---------------------------------------------------------------------+\n| Grants for root@localhost |\n+---------------------------------------------------------------------+\n| GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION |\n+---------------------------------------------------------------------+\n\nTo list the privileges granted to the account that you are using to\nconnect to the server, you can use any of the following statements:\n\nSHOW GRANTS;\nSHOW GRANTS FOR CURRENT_USER;\nSHOW GRANTS FOR CURRENT_USER();\n","","show-grants");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (165,5,"CRC32","Syntax:\nCRC32(expr)\n\nComputes a cyclic redundancy check value and returns a 32-bit unsigned\nvalue. The result is NULL if the argument is NULL. The argument is\nexpected to be a string and (if possible) is treated as one if it is\nnot.\n","mysql> SELECT CRC32('MySQL');\n -> 3259397556\nmysql> SELECT CRC32('mysql');\n -> 2501908538\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (166,12,"XOR","Syntax:\nXOR\n\nLogical XOR. Returns NULL if either operand is NULL. For non-NULL\noperands, evaluates to 1 if an odd number of operands is non-zero,\notherwise 0 is returned.\n","mysql> SELECT 1 XOR 1;\n -> 0\nmysql> SELECT 1 XOR 0;\n -> 1\nmysql> SELECT 1 XOR NULL;\n -> NULL\nmysql> SELECT 1 XOR 1 XOR 1;\n -> 1\n","logical-operators");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (167,11,"STARTPOINT","StartPoint(ls)\n\nReturns the Point that is the start point of the LineString value ls.\n","mysql> SET @ls = 'LineString(1 1,2 2,3 3)';\nmysql> SELECT AsText(StartPoint(GeomFromText(@ls)));\n+---------------------------------------+\n| AsText(StartPoint(GeomFromText(@ls))) |\n+---------------------------------------+\n| POINT(1 1) |\n+---------------------------------------+\n","linestring-property-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (168,34,"DECLARE VARIABLE","Syntax:\nDECLARE var_name[,...] type [DEFAULT value]\n\nThis statement is used to declare local variables. To provide a default\nvalue for the variable, include a DEFAULT clause. The value can be\nspecified as an expression; it need not be a constant. If the DEFAULT\nclause is missing, the initial value is NULL.\n\nLocal variables are treated like routine parameters with respect to\ndata type and overflow checking. See [create-procedure].\n\nThe scope of a local variable is within the BEGIN ... END block where\nit is declared. It can be used in nested blocks except those that\ndeclare a variable with the same name.\n","","declare-local-variables");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (169,4,"MPOLYFROMTEXT","MPolyFromText(wkt[,srid]) , MultiPolygonFromText(wkt[,srid])\n\nConstructs a MULTIPOLYGON value using its WKT representation and SRID.\n","","gis-wkt-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (170,23,"GRANT","Syntax:\nGRANT priv_type [(column_list)] [, priv_type [(column_list)]] ...\n ON [object_type] {tbl_name | * | *.* | db_name.*}\n TO user [IDENTIFIED BY [PASSWORD] 'password']\n [, user [IDENTIFIED BY [PASSWORD] 'password']] ...\n [REQUIRE\n NONE |\n [{SSL| X509}]\n [CIPHER 'cipher' [AND]]\n [ISSUER 'issuer' [AND]]\n [SUBJECT 'subject']]\n [WITH with_option [with_option] ...]\n\nobject_type =\n TABLE\n | FUNCTION\n | PROCEDURE\n\nwith_option =\n GRANT OPTION\n | MAX_QUERIES_PER_HOUR count\n | MAX_UPDATES_PER_HOUR count\n | MAX_CONNECTIONS_PER_HOUR count\n | MAX_USER_CONNECTIONS count\n\nREVOKE priv_type [(column_list)] [, priv_type [(column_list)]] ...\n ON [object_type] {tbl_name | * | *.* | db_name.*}\n FROM user [, user] ...\n\nREVOKE ALL PRIVILEGES, GRANT OPTION FROM user [, user] ...\n\nThe GRANT and REVOKE statements allow system administrators to create\nMySQL user accounts and to grant rights to and revoke them from\naccounts.\n\nMySQL account information is stored in the tables of the mysql\ndatabase. This database and the access control system are discussed\nextensively in [database-administration], which you should consult for\nadditional details.\n\nIf the grant tables hold privilege records that contain mixed-case\ndatabase or table names and the lower_case_table_names system variable\nis set, REVOKE cannot be used to revoke the privileges. It will be\nnecessary to manipulate the grant tables directly. (GRANT will not\ncreate such records when lower_case_table_names is set, but such\nrecords might have been created prior to setting the variable.)\n\nPrivileges can be granted at several levels:\n\no Global level\n\n Global privileges apply to all databases on a given server. These\n privileges are stored in the mysql.user table. GRANT ALL ON *.* and\n REVOKE ALL ON *.* grant and revoke only global privileges.\n\no Database level\n\n Database privileges apply to all objects in a given database. These\n privileges are stored in the mysql.db and mysql.host tables. GRANT\n ALL ON db_name.* and REVOKE ALL ON db_name.* grant and revoke only\n database privileges.\n\no Table level\n\n Table privileges apply to all columns in a given table. These\n privileges are stored in the mysql.tables_priv table. GRANT ALL ON\n db_name.tbl_name and REVOKE ALL ON db_name.tbl_name grant and revoke\n only table privileges.\n\no Column level\n\n Column privileges apply to single columns in a given table. These\n privileges are stored in the mysql.columns_priv table. When using\n REVOKE, you must specify the same columns that were granted.\n\no Routine level\n\n The CREATE ROUTINE, ALTER ROUTINE, EXECUTE, and GRANT privileges\n apply to stored routines. They can be granted at the global and\n database levels. Also, except for CREATE ROUTINE, these privileges\n can be granted at the routine level for individual routines and are\n stored in the mysql.procs_priv table.\n\nThe object_type clause was added in MySQL 5.0.6. It should be specified\nas TABLE, FUNCTION, or PROCEDURE when the following object is a table,\na stored function, or a stored procedure. To use this clause when\nupgrading from a version of MySQL older than 5.0.6, you must upgrade\nyour grant tables. See [upgrading-grant-tables].\n","","grant");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (171,6,"MBRINTERSECTS","MBRIntersects(g1,g2)\n\nReturns 1 or 0 to indicate whether or not the Minimum Bounding\nRectangles of the two geometries g1 and g2 intersect.\n","","relations-on-geometry-mbr");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (172,14,"BIT_OR","Syntax:\nBIT_OR(expr)\n\nReturns the bitwise OR of all bits in expr. The calculation is\nperformed with 64-bit (BIGINT) precision.\n","","group-by-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (173,27,"YEARWEEK","Syntax:\nYEARWEEK(date), YEARWEEK(date,start)\n\nReturns year and week for a date. The start argument works exactly like\nthe start argument to WEEK(). The year in the result may be different\nfrom the year in the date argument for the first and the last week of\nthe year.\n","mysql> SELECT YEARWEEK('1987-01-01');\n -> 198653\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (174,17,"NOT BETWEEN","Syntax:\nexpr NOT BETWEEN min AND max\n\nThis is the same as NOT (expr BETWEEN min AND max).\n","","comparison-operators");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (175,5,"LOG10","Syntax:\nLOG10(X)\n\nReturns the base-10 logarithm of X.\n","mysql> SELECT LOG10(2);\n -> 0.30102999566398\nmysql> SELECT LOG10(100);\n -> 2\nmysql> SELECT LOG10(-100);\n -> NULL\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (176,5,"SQRT","Syntax:\nSQRT(X)\n\nReturns the square root of a non-negative number X.\n","mysql> SELECT SQRT(4);\n -> 2\nmysql> SELECT SQRT(20);\n -> 4.4721359549996\nmysql> SELECT SQRT(-16);\n -> NULL \n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (177,19,"DECIMAL","DECIMAL[(M[,D])] [UNSIGNED] [ZEROFILL]\n\nFor MySQL 5.0.3 and above:\n\nA packed \"exact\" fixed-point number. M is the total number of decimal\ndigits (the precision) and D is the number of digits after the decimal\npoint (the scale). The decimal point and (for negative numbers) the `-'\nsign are not counted in M. If D is 0, values have no decimal point or\nfractional part. The maximum number of digits (M) for DECIMAL is 65 (64\nfrom 5.0.3 to 5.0.5). The maximum number of supported decimals (D) is\n30. If D is omitted, the default is 0. If M is omitted, the default is\n10.\n\nIf UNSIGNED is specified, negative values are disallowed.\n\nAll basic calculations (+, -, *, /) with DECIMAL columns are done with\na precision of 65 digits.\n\nBefore MySQL 5.0.3:\n\nAn unpacked fixed-point number. Behaves like a CHAR column; \"unpacked\"\nmeans the number is stored as a string, using one character for each\ndigit of the value. M is the total number of digits and D is the number\nof digits after the decimal point. The decimal point and (for negative\nnumbers) the `-' sign are not counted in M, although space for them is\nreserved. If D is 0, values have no decimal point or fractional part.\nThe maximum range of DECIMAL values is the same as for DOUBLE, but the\nactual range for a given DECIMAL column may be constrained by the\nchoice of M and D. If D is omitted, the default is 0. If M is omitted,\nthe default is 10.\n\nIf UNSIGNED is specified, negative values are disallowed.\n","","numeric-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (178,33,"CREATE FUNCTION","Syntax:\nCREATE [AGGREGATE] FUNCTION function_name RETURNS {STRING|INTEGER|REAL|DECIMAL}\n SONAME shared_library_name\n\nA user-defined function (UDF) is a way to extend MySQL with a new\nfunction that works like a native (built-in) MySQL function such as\nABS() or CONCAT().\n\nfunction_name is the name that should be used in SQL statements to\ninvoke the function. The RETURNS clause indicates the type of the\nfunction's return value. As of MySQL 5.0.3, DECIMAL is a legal value\nafter RETURNS, but currently DECIMAL functions return string values and\nshould be written like STRING functions.\n\nshared_library_name is the basename of the shared object file that\ncontains the code that implements the function. The file must be\nlocated in a directory that is searched by your system's dynamic\nlinker.\n\nTo create a function, you must have the INSERT and privilege for the\nmysql database. This is because CREATE FUNCTION adds a row to the\nmysql.func system table that records the function's name, type, and\nshared library name. If you do not have this table, you should run the\nmysql_fix_privilege_tables script to create it. See\n[upgrading-grant-tables].\n","","create-function");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (179,22,"GEOMETRYN","GeometryN(gc,n)\n\nReturns the n-th geometry in the GeometryCollection value gc. Geometry\nnumbers begin at 1.\n","mysql> SET @gc = 'GeometryCollection(Point(1 1),LineString(2 2, 3 3))';\nmysql> SELECT AsText(GeometryN(GeomFromText(@gc),1));\n+----------------------------------------+\n| AsText(GeometryN(GeomFromText(@gc),1)) |\n+----------------------------------------+\n| POINT(1 1) |\n+----------------------------------------+\n","geometrycollection-property-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (180,35,"CREATE INDEX","Syntax:\nCREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name\n [USING index_type]\n ON tbl_name (index_col_name,...)\n\nindex_col_name:\n col_name [(length)] [ASC | DESC]\n\nCREATE INDEX is mapped to an ALTER TABLE statement to create indexes.\nSee [alter-table].\n","","create-index");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (181,35,"ALTER DATABASE","Syntax:\nALTER {DATABASE | SCHEMA} [db_name]\n alter_specification [, alter_specification] ...\n\nalter_specification:\n [DEFAULT] CHARACTER SET charset_name\n | [DEFAULT] COLLATE collation_name\n\nALTER DATABASE allows you to change the overall characteristics of a\ndatabase. These characteristics are stored in the db.opt file in the\ndatabase directory. To use ALTER DATABASE, you need the ALTER privilege\non the database.\n","","alter-database");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (182,18,"<<","Syntax:\n<<\n\nShifts a longlong (BIGINT) number to the left.\n","mysql> SELECT 1 << 2;\n -> 4\n","bit-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (183,10,"MD5","Syntax:\nMD5(str)\n\nCalculates an MD5 128-bit checksum for the string. The value is\nreturned as a binary string of 32 hex digits, or NULL if the argument\nwas NULL. The return value can, for example, be used as a hash key.\n","mysql> SELECT MD5('testing');\n -> 'ae2b1fca515949e5d54fb22b8ed95575'\n","encryption-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (184,17,"<","Syntax:\n<\n\nLess than:\n","mysql> SELECT 2 < 2;\n -> 0\n","comparison-operators");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (185,27,"UNIX_TIMESTAMP","Syntax:\nUNIX_TIMESTAMP(), UNIX_TIMESTAMP(date)\n\nIf called with no argument, returns a Unix timestamp (seconds since\n'1970-01-01 00:00:00' GMT) as an unsigned integer. If UNIX_TIMESTAMP()\nis called with a date argument, it returns the value of the argument as\nseconds since '1970-01-01 00:00:00' GMT. date may be a DATE string, a\nDATETIME string, a TIMESTAMP, or a number in the format YYMMDD or\nYYYYMMDD in local time.\n","mysql> SELECT UNIX_TIMESTAMP();\n -> 882226357\nmysql> SELECT UNIX_TIMESTAMP('1997-10-04 22:23:00');\n -> 875996580\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (186,27,"DAYOFMONTH","Syntax:\nDAYOFMONTH(date)\n\nReturns the day of the month for date, in the range 1 to 31.\n","mysql> SELECT DAYOFMONTH('1998-02-03');\n -> 3\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (187,32,"ASCII","Syntax:\nASCII(str)\n\nReturns the numeric value of the leftmost character of the string str.\nReturns 0 if str is the empty string. Returns NULL if str is NULL.\nASCII() works for characters with numeric values from 0 to 255.\n","mysql> SELECT ASCII('2');\n -> 50\nmysql> SELECT ASCII(2);\n -> 50\nmysql> SELECT ASCII('dx');\n -> 100\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (188,5,"DIV","Syntax:\nDIV\n\nInteger division. Similar to FLOOR() but safe with BIGINT values.\n","mysql> SELECT 5 DIV 2;\n -> 2\n","arithmetic-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (189,23,"RENAME USER","Syntax:\nRENAME USER old_user TO new_user\n [, old_user TO new_user] ...\n\nThe RENAME USER statement renames existing MySQL accounts. To use it,\nyou must have the global CREATE USER privilege or the UPDATE privilege\nfor the mysql database. An error occurs if any old account does not\nexist or any new account exists. The old_user and new_user values are\ngiven the same way as for the GRANT statement.\n","","rename-user");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (190,24,"SHOW SLAVE STATUS","Syntax:\nSHOW SLAVE STATUS\n\nProvides status information on essential parameters of the slave\nthreads. If you issue this statement using the mysql client, you can\nuse a \\G statement terminator rather than a semicolon to obtain a more\nreadable vertical layout:\n\nmysql> SHOW SLAVE STATUS\\G\n*************************** 1. row ***************************\n Slave_IO_State: Waiting for master to send event\n Master_Host: localhost\n Master_User: root\n Master_Port: 3306\n Connect_Retry: 3\n Master_Log_File: gbichot-bin.005\n Read_Master_Log_Pos: 79\n Relay_Log_File: gbichot-relay-bin.005\n Relay_Log_Pos: 548\nRelay_Master_Log_File: gbichot-bin.005\n Slave_IO_Running: Yes\n Slave_SQL_Running: Yes\n Replicate_Do_DB:\n Replicate_Ignore_DB:\n Last_Errno: 0\n Last_Error:\n Skip_Counter: 0\n Exec_Master_Log_Pos: 79\n Relay_Log_Space: 552\n Until_Condition: None\n Until_Log_File:\n Until_Log_Pos: 0\n Master_SSL_Allowed: No\n Master_SSL_CA_File:\n Master_SSL_CA_Path:\n Master_SSL_Cert:\n Master_SSL_Cipher:\n Master_SSL_Key:\nSeconds_Behind_Master: 8\n","","show-slave-status");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (191,29,"GEOMETRY","MySQL provides a standard way of creating spatial columns for geometry\ntypes, for example, with CREATE TABLE or ALTER TABLE. Currently,\nspatial columns are supported for MyISAM, InnoDB, NDB, BDB, and ARCHIVE\ntables. (Support for storage engines other than MyISAM was added in\nMySQL 5.0.16.) See also the annotations about spatial indexes under\n[creating-spatial-indexes].\n","mysql> CREATE TABLE geom (g GEOMETRY);\nQuery OK, 0 rows affected (0.02 sec)\n","creating-spatial-columns");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (192,11,"NUMPOINTS","NumPoints(ls)\n\nReturns the number of points in the LineString value ls.\n","mysql> SET @ls = 'LineString(1 1,2 2,3 3)';\nmysql> SELECT NumPoints(GeomFromText(@ls));\n+------------------------------+\n| NumPoints(GeomFromText(@ls)) |\n+------------------------------+\n| 3 |\n+------------------------------+\n","linestring-property-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (193,18,"&","Syntax:\n&\n\nBitwise AND:\n","mysql> SELECT 29 & 15;\n -> 13\n","bit-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (194,27,"LOCALTIMESTAMP","Syntax:\nLOCALTIMESTAMP, LOCALTIMESTAMP()\n\nLOCALTIMESTAMP and LOCALTIMESTAMP() are synonyms for NOW().\n","","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (195,27,"ADDDATE","Syntax:\nADDDATE(date,INTERVAL expr type), ADDDATE(expr,days)\n\nWhen invoked with the INTERVAL form of the second argument, ADDDATE()\nis a synonym for DATE_ADD(). The related function SUBDATE() is a\nsynonym for DATE_SUB(). For information on the INTERVAL argument, see\nthe discussion for DATE_ADD().\n\nmysql> SELECT DATE_ADD('1998-01-02', INTERVAL 31 DAY);\n -> '1998-02-02'\nmysql> SELECT ADDDATE('1998-01-02', INTERVAL 31 DAY);\n -> '1998-02-02'\n\nIf the days argument is simply an integer value, then MySQL 5.0 treats\nit as the number of days to be added to expr.\n","mysql> SELECT ADDDATE('1998-01-02', 31);\n -> '1998-02-02'\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (196,34,"REPEAT LOOP","Syntax:\n[begin_label:] REPEAT\n statement_list\nUNTIL search_condition\nEND REPEAT [end_label]\n\nThe statement or statements within a REPEAT statement are repeated\nuntil the search_condition is true.\n\nA REPEAT statement can be labeled. end_label cannot be given unless\nbegin_label also is present, and if both are present, they must be the\nsame.\n","mysql> delimiter //\n\nmysql> CREATE PROCEDURE dorepeat(p1 INT)\n -> BEGIN\n -> SET @x = 0;\n -> REPEAT SET @x = @x + 1; UNTIL @x > p1 END REPEAT;\n -> END\n -> //\nQuery OK, 0 rows affected (0.00 sec)\n\nmysql> CALL dorepeat(1000)//\nQuery OK, 0 rows affected (0.00 sec)\n\nmysql> SELECT @x//\n+------+\n| @x |\n+------+\n| 1001 |\n+------+\n1 row in set (0.00 sec)\n","repeat-statement");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (197,19,"SMALLINT","SMALLINT[(M)] [UNSIGNED] [ZEROFILL]\n\nA small integer. The signed range is -32768 to 32767. The unsigned\nrange is 0 to 65535.\n","","numeric-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (198,19,"DOUBLE PRECISION","DOUBLE PRECISION[(M,D)] [UNSIGNED] [ZEROFILL], REAL[(M,D)] [UNSIGNED]\n[ZEROFILL]\n\nThese are synonyms for DOUBLE. Exception: If the server SQL mode\nincludes the REAL_AS_FLOAT option, REAL is a synonym for FLOAT rather\nthan DOUBLE.\n","","numeric-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (199,32,"ORD","Syntax:\nORD(str)\n\nIf the leftmost character of the string str is a multi-byte character,\nreturns the code for that character, calculated from the numeric values\nof its constituent bytes using this formula:\n\n (1st byte code)\n+ (2nd byte code × 256)\n+ (3rd byte code × 2562) ...\n\nIf the leftmost character is not a multi-byte character, ORD() returns\nthe same value as the ASCII() function.\n","mysql> SELECT ORD('2');\n -> 50\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (200,31,"ENVELOPE","Envelope(g)\n\nReturns the Minimum Bounding Rectangle (MBR) for the geometry value g.\nThe result is returned as a Polygon value.\n\nThe polygon is defined by the corner points of the bounding box:\n\nPOLYGON((MINX MINY, MAXX MINY, MAXX MAXY, MINX MAXY, MINX MINY))\n","mysql> SELECT AsText(Envelope(GeomFromText('LineString(1 1,2 2)')));\n+-------------------------------------------------------+\n| AsText(Envelope(GeomFromText('LineString(1 1,2 2)'))) |\n+-------------------------------------------------------+\n| POLYGON((1 1,2 1,2 2,1 2,1 1)) |\n+-------------------------------------------------------+\n","general-geometry-property-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (201,13,"IS_FREE_LOCK","Syntax:\nIS_FREE_LOCK(str)\n\nChecks whether the lock named str is free to use (that is, not locked).\nReturns 1 if the lock is free (no one is using the lock), 0 if the lock\nis in use, and NULL on errors (such as incorrect arguments).\n","","miscellaneous-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (202,25,"TOUCHES","Touches(g1,g2)\n\nReturns 1 or 0 to indicate whether or not g1 spatially touches g2. Two\ngeometries spatially touch if the interiors of the geometries do not\nintersect, but the boundary of one of the geometries intersects either\nthe boundary or the interior of the other.\n","","functions-that-test-spatial-relationships-between-geometries");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (203,13,"INET_ATON","Syntax:\nINET_ATON(expr)\n\nGiven the dotted-quad representation of a network address as a string,\nreturns an integer that represents the numeric value of the address.\nAddresses may be 4- or 8-byte addresses.\n","mysql> SELECT INET_ATON('209.207.224.40');\n -> 3520061480\n","miscellaneous-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (204,3,"AUTO_INCREMENT","The AUTO_INCREMENT attribute can be used to generate a unique identity\nfor new rows:\n","CREATE TABLE animals (\n id MEDIUMINT NOT NULL AUTO_INCREMENT,\n name CHAR(30) NOT NULL,\n PRIMARY KEY (id)\n );\n\nINSERT INTO animals (name) VALUES \n ('dog'),('cat'),('penguin'),\n ('lax'),('whale'),('ostrich');\n\nSELECT * FROM animals;\n","example-auto-increment");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (205,32,"UNCOMPRESS","Syntax:\nUNCOMPRESS(string_to_uncompress)\n\nUncompresses a string compressed by the COMPRESS() function. If the\nargument is not a compressed value, the result is NULL. This function\nrequires MySQL to have been compiled with a compression library such as\nzlib. Otherwise, the return value is always NULL.\n","mysql> SELECT UNCOMPRESS(COMPRESS('any string'));\n -> 'any string'\nmysql> SELECT UNCOMPRESS('any string');\n -> NULL\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (206,31,"ISSIMPLE","IsSimple(g)\n\nCurrently, this function is a placeholder and should not be used. If\nimplemented, its behavior will be as described in the next paragraph.\n\nReturns 1 if the geometry value g has no anomalous geometric points,\nsuch as self-intersection or self-tangency. IsSimple() returns 0 if the\nargument is not simple, and −1 if it is NULL.\n\nThe description of each instantiable geometric class given earlier in\nthe chapter includes the specific conditions that cause an instance of\nthat class to be classified as not simple.\n","","general-geometry-property-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (207,5,"- BINARY","Syntax:\n-\n\nSubtraction:\n","mysql> SELECT 3-5;\n -> -2\n","arithmetic-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (208,4,"GEOMCOLLFROMTEXT","GeomCollFromText(wkt[,srid]) , GeometryCollectionFromText(wkt[,srid])\n\nConstructs a GEOMETRYCOLLECTION value using its WKT representation and\nSRID.\n","","gis-wkt-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (209,4,"WKT DEFINITION","The Well-Known Text (WKT) representation of Geometry is designed to\nexchange geometry data in ASCII form.\n","","gis-wkt-format");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (210,27,"CURRENT_TIME","Syntax:\nCURRENT_TIME, CURRENT_TIME()\n\nCURRENT_TIME and CURRENT_TIME() are synonyms for CURTIME().\n","","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (211,15,"LAST_INSERT_ID","Syntax:\nLAST_INSERT_ID(), LAST_INSERT_ID(expr)\n\nReturns the first automatically generated value that was set for an\nAUTO_INCREMENT column by the last INSERT or UPDATE query to affect such\na column.\n","mysql> SELECT LAST_INSERT_ID();\n -> 195\n","information-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (212,27,"LAST_DAY","Syntax:\nLAST_DAY(date)\n\nTakes a date or datetime value and returns the corresponding value for\nthe last day of the month. Returns NULL if the argument is invalid.\n","mysql> SELECT LAST_DAY('2003-02-05');\n -> '2003-02-28'\nmysql> SELECT LAST_DAY('2004-02-05');\n -> '2004-02-29'\nmysql> SELECT LAST_DAY('2004-01-01 01:01:01');\n -> '2004-01-31'\nmysql> SELECT LAST_DAY('2003-03-32');\n -> NULL\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (213,19,"MEDIUMINT","MEDIUMINT[(M)] [UNSIGNED] [ZEROFILL]\n\nA medium-size integer. The signed range is -8388608 to 8388607. The\nunsigned range is 0 to 16777215.\n","","numeric-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (214,5,"FLOOR","Syntax:\nFLOOR(X)\n\nReturns the largest integer value not greater than X.\n","mysql> SELECT FLOOR(1.23);\n -> 1\nmysql> SELECT FLOOR(-1.23);\n -> -2\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (215,32,"RTRIM","Syntax:\nRTRIM(str)\n\nReturns the string str with trailing space characters removed.\n","mysql> SELECT RTRIM('barbar ');\n -> 'barbar'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (216,5,"DEGREES","Syntax:\nDEGREES(X)\n\nReturns the argument X, converted from radians to degrees.\n","mysql> SELECT DEGREES(PI());\n -> 180\nmysql> SELECT DEGREES(PI() / 2);\n -> 90\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (217,24,"EXPLAIN","Syntax:\nEXPLAIN tbl_name\n\nOr:\n\nEXPLAIN [EXTENDED] SELECT select_options\n\nThe EXPLAIN statement can be used either as a synonym for DESCRIBE or\nas a way to obtain information about how MySQL executes a SELECT\nstatement:\n\no EXPLAIN tbl_name is synonymous with DESCRIBE tbl_name or SHOW COLUMNS\n FROM tbl_name.\n\no When you precede a SELECT statement with the keyword EXPLAIN, MySQL\n explains how it would process the SELECT, providing information about\n how tables are joined and in which order.\n","","explain");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (218,19,"VARCHAR","[NATIONAL] VARCHAR(M) [BINARY]\n\nA variable-length string. M represents the maximum column length. In\nMySQL 5.0, the range of M is 0 to 255 before MySQL 5.0.3, and 0 to\n65,535 in MySQL 5.0.3 and later. (The actual maximum length of a\nVARCHAR in MySQL 5.0 is determined by the maximum row size and the\ncharacter set you use. The maximum effective length starting with MySQL\n5.0.3 is 65,532 bytes.)\n\nNote: Before 5.0.3, trailing spaces were removed when VARCHAR values\nwere stored, which differs from the standard SQL specification.\n\nPrior to MySQL 5.0.3, a VARCHAR column with a length specification\ngreater than 255 was converted to the smallest TEXT type that could\nhold values of the given length. For example, VARCHAR(500) was\nconverted to TEXT, and VARCHAR(200000) was converted to MEDIUMTEXT.\nThis was a compatibility feature. However, this conversion affected\ntrailing-space removal.\n\nVARCHAR is shorthand for CHARACTER VARYING.\n\nThe BINARY attribute is shorthand for specifying the binary collation\nof the column character set. Sorting and comparison is based on numeric\ncharacter values.\n\nStarting from MySQL 5.0.3, VARCHAR is stored with a one-byte or\ntwo-byte length prefix + data. The length prefix is two bytes if the\nVARCHAR column is declared with a length greater than 255.\n","","string-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (219,32,"UNHEX","Syntax:\n\nUNHEX(str)\n\nPerforms the opposite operation from HEX(str). That is, it interprets\neach pair of hexadecimal digits in the argument as a number and\nconverts it to the character represented by the number. The resulting\ncharacters are returned as a binary string.\n","mysql> SELECT UNHEX('4D7953514C');\n -> 'MySQL'\nmysql> SELECT 0x4D7953514C;\n -> 'MySQL'\nmysql> SELECT UNHEX(HEX('string'));\n -> 'string'\nmysql> SELECT HEX(UNHEX('1267'));\n -> '1267'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (220,5,"- UNARY","Syntax:\n-\n\nUnary minus. Changes the sign of the argument.\n","mysql> SELECT - 2;\n -> -2\n","arithmetic-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (221,34,"SELECT INTO","Syntax:\nSELECT col_name[,...] INTO var_name[,...] table_expr\n\nThis SELECT syntax stores selected columns directly into variables.\nTherefore, only a single row may be retrieved.\n","SELECT id,data INTO x,y FROM test.t1 LIMIT 1;\n","select-into-statement");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (222,5,"COS","Syntax:\nCOS(X)\n\nReturns the cosine of X, where X is given in radians.\n","mysql> SELECT COS(PI());\n -> -1\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (223,27,"DATE FUNCTION","Syntax:\nDATE(expr)\n\nExtracts the date part of the date or datetime expression expr.\n","mysql> SELECT DATE('2003-12-31 01:02:03');\n -> '2003-12-31'\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (224,20,"DROP TRIGGER","Syntax:\nDROP TRIGGER [schema_name.]trigger_name\n\nThis statement drops a trigger. The schema (database) name is optional.\nIf the schema is omitted, the trigger is dropped from the default\nschema. DROP TRIGGER was added in MySQL 5.0.2. Its use requires the\nSUPER privilege.\n","","drop-trigger");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (225,24,"RESET MASTER","Syntax:\nRESET MASTER\n\nDeletes all binary logs listed in the index file, resets the binary log\nindex file to be empty, and creates a new binary log file.\n","","reset-master");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (226,5,"TAN","Syntax:\nTAN(X)\n\nReturns the tangent of X, where X is given in radians.\n","mysql> SELECT TAN(PI());\n -> -1.2246063538224e-16\nmysql> SELECT TAN(PI()+1);\n -> 1.5574077246549\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (227,5,"PI","Syntax:\nPI()\n\nReturns the value of ϖ (pi). The default number of decimals displayed\nis seven, but MySQL internally uses the full double-precision value.\n","mysql> SELECT PI();\n -> 3.141593\nmysql> SELECT PI()+0.000000000000000000;\n -> 3.141592653589793116\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (228,27,"WEEKOFYEAR","Syntax:\nWEEKOFYEAR(date)\n\nReturns the calendar week of the date as a number in the range from 1\nto 53. It is a compatibility function that is equivalent to\nWEEK(date,3).\n","mysql> SELECT WEEKOFYEAR('1998-02-20');\n -> 8\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (229,5,"/","Syntax:\n/\n\nDivision:\n","mysql> SELECT 3/5;\n -> 0.60\n","arithmetic-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (230,14,"STDDEV_SAMP","Syntax:\nSTDDEV_SAMP(expr)\n\nReturns the sample standard deviation of expr (the square root of\nVAR_SAMP(). This function was added in MySQL 5.0.3.\n\nSTDDEV_SAMP() returns NULL if there were no matching rows.\n","","group-by-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (231,15,"SCHEMA","Syntax:\nSCHEMA()\n\nThis function is a synonym for DATABASE(). It was added in MySQL 5.0.2.\n","","information-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (232,28,"MLINEFROMWKB","MLineFromWKB(wkb[,srid]) , MultiLineStringFromWKB(wkb[,srid])\n\nConstructs a MULTILINESTRING value using its WKB representation and\nSRID.\n","","gis-wkb-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (233,32,"UNCOMPRESSED_LENGTH","Syntax:\nUNCOMPRESSED_LENGTH(compressed_string)\n\nReturns the length of a compressed string before compression.\n","mysql> SELECT UNCOMPRESSED_LENGTH(COMPRESS(REPEAT('a',30)));\n -> 30\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (234,5,"LOG2","Syntax:\nLOG2(X)\n\nReturns the base-2 logarithm of X.\n","mysql> SELECT LOG2(65536);\n -> 16\nmysql> SELECT LOG2(-100);\n -> NULL\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (235,27,"SUBTIME","Syntax:\nSUBTIME(expr,expr2)\n\nSUBTIME() subtracts expr2 from expr and returns the result. expr is a\ntime or datetime expression, and expr2 is a time expression.\n","mysql> SELECT SUBTIME('1997-12-31 23:59:59.999999','1 1:1:1.000002');\n -> '1997-12-30 22:58:58.999997'\nmysql> SELECT SUBTIME('01:00:00.999999', '02:00:00.999998');\n -> '-00:59:59.999999'\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (236,35,"DROP TABLE","Syntax:\nDROP [TEMPORARY] TABLE [IF EXISTS]\n tbl_name [, tbl_name] ...\n [RESTRICT | CASCADE]\n\nDROP TABLE removes one or more tables. You must have the DROP privilege\nfor each table. All table data and the table definition are removed, so\nbe careful with this statement!\n\nUse IF EXISTS to prevent an error from occurring for tables that do not\nexist. A NOTE is generated for each non-existent table when using IF\nEXISTS. See [show-warnings].\n\nRESTRICT and CASCADE are allowed to make porting easier. For the\nmoment, they do nothing.\n\nNote: DROP TABLE automatically commits the current active transaction,\nunless you use the TEMPORARY keyword.\n","","drop-table");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (237,24,"SHOW CREATE TABLE","Syntax:\nSHOW CREATE TABLE tbl_name\n\nShows a CREATE TABLE statement that creates the given table. As of\nMySQL 5.0.1, this statement also works with views.\nSHOW CREATE TABLE quotes table and column names according to the value\nof the SQL_QUOTE_SHOW_CREATE option. See [set-option].\n","mysql> SHOW CREATE TABLE t\\G\n*************************** 1. row ***************************\n Table: t\nCreate Table: CREATE TABLE t (\n id INT(11) default NULL auto_increment,\n s char(60) default NULL,\n PRIMARY KEY (id)\n) ENGINE=MyISAM\n","show-create-table");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (238,24,"DUAL","You are allowed to specify DUAL as a dummy table name in situations\nwhere no tables are referenced:\n\nmysql> SELECT 1 + 1 FROM DUAL;\n -> 2\n\nDUAL is purely for compatibility with some other servers that require a\nFROM clause. MySQL does not require the clause if no tables are\nreferenced, and the preceding statement can be written this way:\n\nmysql> SELECT 1 + 1;\n -> 2\n","","select");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (239,32,"INSTR","Syntax:\nINSTR(str,substr)\n\nReturns the position of the first occurrence of substring substr in\nstring str. This is the same as the two-argument form of LOCATE(),\nexcept that the order of the arguments is reversed.\n","mysql> SELECT INSTR('foobarbar', 'bar');\n -> 4\nmysql> SELECT INSTR('xbar', 'foobar');\n -> 0\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (240,27,"NOW","Syntax:\nNOW()\n\nReturns the current date and time as a value in 'YYYY-MM-DD HH:MM:SS'\nor YYYYMMDDHHMMSS format, depending on whether the function is used in\na string or numeric context.\n","mysql> SELECT NOW();\n -> '1997-12-15 23:50:26'\nmysql> SELECT NOW() + 0;\n -> 19971215235026\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (241,17,">=","Syntax:\n>=\n\nGreater than or equal:\n","mysql> SELECT 2 >= 2;\n -> 1\n","comparison-operators");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (242,5,"EXP","Syntax:\nEXP(X)\n\nReturns the value of e (the base of natural logarithms) raised to the\npower of X.\n","mysql> SELECT EXP(2);\n -> 7.3890560989307\nmysql> SELECT EXP(-2);\n -> 0.13533528323661\nmysql> SELECT EXP(0);\n -> 1\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (243,10,"SHA","Syntax:\nSHA1(str), SHA(str)\n\nCalculates an SHA1 160-bit checksum for the string, as described in RFC\n3174 (Secure Hash Algorithm). The value is returned as a string of 40\nhex digits, or NULL if the argument was NULL. One of the possible uses\nfor this function is as a hash key. You can also use it as a\ncryptographically safe function for storing passwords.\n","mysql> SELECT SHA1('abc');\n -> 'a9993e364706816aba3e25717850c26c9cd0d89d'\n","encryption-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (244,19,"LONGBLOB","LONGBLOB\n\nA BLOB column with a maximum length of 4,294,967,295 or 4GB (232 - 1)\nbytes. The maximum effective (permitted) length of LONGBLOB columns\ndepends on the configured maximum packet size in the client/server\nprotocol and available memory.\n","","string-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (245,11,"POINTN","PointN(ls,n)\n\nReturns the n-th point in the Linestring value ls. Point numbers begin\nat 1.\n","mysql> SET @ls = 'LineString(1 1,2 2,3 3)';\nmysql> SELECT AsText(PointN(GeomFromText(@ls),2));\n+-------------------------------------+\n| AsText(PointN(GeomFromText(@ls),2)) |\n+-------------------------------------+\n| POINT(2 2) |\n+-------------------------------------+\n","linestring-property-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (246,19,"YEAR DATA TYPE","YEAR[(2|4)]\n\nA year in two-digit or four-digit format. The default is four-digit\nformat. In four-digit format, the allowable values are 1901 to 2155,\nand 0000. In two-digit format, the allowable values are 70 to 69,\nrepresenting years from 1970 to 2069. MySQL displays YEAR values in\nYYYY format, but allows you to assign values to YEAR columns using\neither strings or numbers.\n","","date-and-time-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (247,14,"SUM","Syntax:\nSUM([DISTINCT] expr)\n\nReturns the sum of expr. If the return set has no rows, SUM() returns\nNULL. The DISTINCT keyword can be used in MySQL 5.0 to sum only the\ndistinct values of expr.\n\nSUM() returns NULL if there were no matching rows.\n","","group-by-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (248,32,"OCT","Syntax:\nOCT(N)\n\nReturns a string representation of the octal value of N, where N is a\nlonglong (BIGINT)number. This is equivalent to CONV(N,10,8). Returns\nNULL if N is NULL.\n","mysql> SELECT OCT(12);\n -> '14'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (249,27,"SYSDATE","Syntax:\nSYSDATE()\n\nReturns the current date and time as a value in 'YYYY-MM-DD HH:MM:SS'\nor YYYYMMDDHHMMSS format, depending on whether the function is used in\na string or numeric context.\n\nWithin a stored routine or trigger, SYSDATE() returns the time at which\nit executes, not the time at which the routine or triggering statement\nbegan to execute. This differs from the behavior for NOW().\n","","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (250,28,"ASBINARY","AsBinary(g)\n\nConverts a value in internal geometry format to its WKB representation\nand returns the binary result.\n","SELECT AsBinary(g) FROM geom;\n","functions-to-convert-geometries-between-formats");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (251,32,"REPEAT FUNCTION","Syntax:\nREPEAT(str,count)\n\nReturns a string consisting of the string str repeated count times. If\ncount <= 0, returns an empty string. Returns NULL if str or count are\nNULL.\n","mysql> SELECT REPEAT('MySQL', 3);\n -> 'MySQLMySQLMySQL'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (252,27,"MAKEDATE","Syntax:\nMAKEDATE(year,dayofyear)\n\nReturns a date, given year and day-of-year values. dayofyear must be\ngreater than 0 or the result is NULL.\n","mysql> SELECT MAKEDATE(2001,31), MAKEDATE(2001,32);\n -> '2001-01-31', '2001-02-01'\nmysql> SELECT MAKEDATE(2001,365), MAKEDATE(2004,365);\n -> '2001-12-31', '2004-12-30'\nmysql> SELECT MAKEDATE(2001,0);\n -> NULL\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (253,32,"BINARY OPERATOR","Syntax:\nBINARY\n\nThe BINARY operator casts the string following it to a binary string.\nThis is an easy way to force a column comparison to be done byte by\nbyte rather than character by character. This causes the comparison to\nbe case sensitive even if the column isn't defined as BINARY or BLOB.\nBINARY also causes trailing spaces to be significant.\n","mysql> SELECT 'a' = 'A';\n -> 1\nmysql> SELECT BINARY 'a' = 'A';\n -> 0\nmysql> SELECT 'a' = 'a ';\n -> 1\nmysql> SELECT BINARY 'a' = 'a ';\n -> 0\n","cast-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (254,6,"MBROVERLAPS","MBROverlaps(g1,g2)\n\nReturns 1 or 0 to indicate whether or not the Minimum Bounding\nRectangles of the two geometries g1 and g2 overlap.\n","","relations-on-geometry-mbr");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (255,32,"SOUNDEX","Syntax:\nSOUNDEX(str)\n\nReturns a soundex string from str. Two strings that sound almost the\nsame should have identical soundex strings. A standard soundex string\nis four characters long, but the SOUNDEX() function returns an\narbitrarily long string. You can use SUBSTRING() on the result to get a\nstandard soundex string. All non-alphabetic characters in str are\nignored. All international alphabetic characters outside the A-Z range\nare treated as vowels.\n","mysql> SELECT SOUNDEX('Hello');\n -> 'H400'\nmysql> SELECT SOUNDEX('Quadratically');\n -> 'Q36324'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (256,24,"SHOW MASTER LOGS","Syntax:\nSHOW MASTER LOGS\nSHOW BINARY LOGS\n\nLists the binary log files on the server. This statement is used as\npart of the procedure described in [purge-master-logs] for determining\nwhich logs can be purged.\n\nmysql> SHOW BINARY LOGS;\n+---------------+-----------+\n| Log_name | File_size |\n+---------------+-----------+\n| binlog.000015 | 724935 |\n| binlog.000016 | 733481 |\n+---------------+-----------+\n","","show-master-logs");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (257,6,"MBRTOUCHES","MBRTouches(g1,g2)\n\nReturns 1 or 0 to indicate whether or not the Minimum Bounding\nRectangles of the two geometries g1 and g2 touch.\n","","relations-on-geometry-mbr");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (258,34,"CREATE PROCEDURE","Syntax:\nCREATE PROCEDURE sp_name ([proc_parameter[,...]])\n [characteristic ...] routine_body\n\nCREATE FUNCTION sp_name ([func_parameter[,...]])\n RETURNS type\n [characteristic ...] routine_body\n \nproc_parameter:\n [ IN | OUT | INOUT ] param_name type\n \nfunc_parameter:\n param_name type\n\ntype:\n Any valid MySQL data type\n\ncharacteristic:\n LANGUAGE SQL\n | [NOT] DETERMINISTIC\n | { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }\n | SQL SECURITY { DEFINER | INVOKER }\n | COMMENT 'string'\n\nroutine_body:\n Valid SQL procedure statement\n\nThese statements create stored routines. As of MySQL 5.0.3, to create a\nroutine, it is necessary to have the CREATE ROUTINE privilege, and the\nALTER ROUTINE and EXECUTE privileges are granted automatically to its\ncreator. If binary logging is enabled, you may also need the SUPER\nprivilege, as described in [stored-procedure-logging].\n\nBy default, the routine is associated with the current database. To\nassociate the routine explicitly with a given database, specify the\nname as db_name.sp_name when you create it.\n\nIf the routine name is the same as the name of a built-in SQL function,\nyou need to use a space between the name and the following parenthesis\nwhen defining the routine, or a syntax error occurs. This is also true\nwhen you invoke the routine later. For this reason --- even though it\nis possible to do so --- we suggest that it is better to avoid re-using\nthe names of existing SQL functions for your own stored routines.\n\nThe parameter list enclosed within parentheses must always be present.\nIf there are no parameters, an empty parameter list of () should be\nused. Each parameter is an IN parameter by default. To specify\notherwise for a parameter, use the keyword OUT or INOUT before the\nparameter name.\n\nNote: Specifying a parameter as IN, OUT, or INOUT is valid only for a\nPROCEDURE. (FUNCTION parameters are always regarded as IN parameters.)\n\nThe RETURNS clause may be specified only for a FUNCTION, for which it\nis mandatory. It is used to indicate the return type of the function,\nand the function body must contain a RETURN value statement.\n\nThe routine_body consists of a valid SQL procedure statement. This can\nbe a simple statement such as SELECT or INSERT, or it can be a compound\nstatement written using BEGIN and END. Compound statement syntax is\ndescribed in [begin-end]. Compound statements can contain declarations,\nloops, and other control structure statements. The syntax for these\nstatements is described later in this chapter. See, for example,\n[declare] and [flow-control-constructs]\n","mysql> delimiter //\n\nmysql> CREATE PROCEDURE simpleproc (OUT param1 INT)\n -> BEGIN\n -> SELECT COUNT(*) INTO param1 FROM t;\n -> END\n -> //\nQuery OK, 0 rows affected (0.00 sec)\n\nmysql> delimiter ;\n\nmysql> CALL simpleproc(@a);\nQuery OK, 0 rows affected (0.00 sec)\n\nmysql> SELECT @a;\n+------+\n| @a |\n+------+\n| 3 |\n+------+\n1 row in set (0.00 sec)\n","create-procedure");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (259,24,"INSERT SELECT","Syntax:\nINSERT [LOW_PRIORITY | HIGH_PRIORITY] [IGNORE]\n [INTO] tbl_name [(col_name,...)]\n SELECT ...\n [ ON DUPLICATE KEY UPDATE col_name=expr, ... ]\n\nWith INSERT ... SELECT, you can quickly insert many rows into a table\nfrom one or many tables.\n","INSERT INTO tbl_temp2 (fld_id)\n SELECT tbl_temp1.fld_order_id\n FROM tbl_temp1 WHERE tbl_temp1.fld_order_id > 100;\n","insert-select");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (260,19,"VARBINARY","VARBINARY(M)\n\nThe VARBINARY type is similar to the VARCHAR type, but stores binary\nbyte strings rather than non-binary character strings.\n","","string-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (261,24,"LOAD INDEX","Syntax:\nLOAD INDEX INTO CACHE\n tbl_index_list [, tbl_index_list] ...\n\ntbl_index_list:\n tbl_name\n [[INDEX|KEY] (index_name[, index_name] ...)]\n [IGNORE LEAVES]\n\nThe LOAD INDEX INTO CACHE statement preloads a table index into the key\ncache to which it has been assigned by an explicit CACHE INDEX\nstatement, or into the default key cache otherwise. LOAD INDEX INTO\nCACHE is used only for MyISAM tables.\n\nThe IGNORE LEAVES modifier causes only blocks for the non-leaf nodes of\nthe index to be preloaded.\n","","load-index");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (262,24,"UNION","Syntax:\nSELECT ...\nUNION [ALL | DISTINCT]\nSELECT ...\n[UNION [ALL | DISTINCT]\nSELECT ...]\n\nUNION is used to combine the result from a number of SELECT statements\ninto one result set.\n\nSelected columns listed in corresponding positions of each SELECT\nstatement should have the same type. (For example, the first column\nselected by the first statement should have the same type as the first\ncolumn selected by the other statements.) The column names used in the\nfirst SELECT statement are used as the column names for the results\nreturned.\n","","union");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (263,27,"TO_DAYS","Syntax:\nTO_DAYS(date)\n\nGiven a date date, returns a daynumber (the number of days since year\n0).\n","mysql> SELECT TO_DAYS(950501);\n -> 728779\nmysql> SELECT TO_DAYS('1997-10-07');\n -> 729669\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (264,32,"NOT REGEXP","Syntax:\nexpr NOT REGEXP pat, expr NOT RLIKE pat\n\nThis is the same as NOT (expr REGEXP pat).\n","","string-comparison-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (265,24,"SHOW CREATE DATABASE","Syntax:\nSHOW CREATE {DATABASE | SCHEMA} db_name\n\nShows a CREATE DATABASE statement that creates the given database. SHOW\nCREATE SCHEMA can be used as of MySQL 5.0.2.\n","mysql> SHOW CREATE DATABASE test\\G\n*************************** 1. row ***************************\n Database: test\nCreate Database: CREATE DATABASE `test`\n /*!40100 DEFAULT CHARACTER SET latin1 */\n\nmysql> SHOW CREATE SCHEMA test\\G\n*************************** 1. row ***************************\n Database: test\nCreate Database: CREATE DATABASE `test`\n /*!40100 DEFAULT CHARACTER SET latin1 */\n","show-create-database");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (266,34,"LEAVE","Syntax:\nLEAVE label\n\nThis statement is used to exit any labeled flow control construct. It\ncan be used with BEGIN ... END or loops.\n","","leave-statement");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (267,17,"NOT IN","Syntax:\nexpr NOT IN (value,...)\n\nThis is the same as NOT (expr IN (value,...)).\n","","comparison-operators");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (268,12,"!","Syntax:\nNOT, !\n\nLogical NOT. Evaluates to 1 if the operand is 0, to 0 if the operand is\nnon-zero, and NOT NULL returns NULL.\n","mysql> SELECT NOT 10;\n -> 0\nmysql> SELECT NOT 0;\n -> 1\nmysql> SELECT NOT NULL;\n -> NULL\nmysql> SELECT ! (1+1);\n -> 0\nmysql> SELECT ! 1+1;\n -> 1\n","logical-operators");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (269,34,"DECLARE HANDLER","Syntax:\nDECLARE handler_type HANDLER FOR condition_value[,...] statement\n\nhandler_type:\n CONTINUE\n | EXIT\n | UNDO\n\ncondition_value:\n SQLSTATE [VALUE] sqlstate_value\n | condition_name\n | SQLWARNING\n | NOT FOUND\n | SQLEXCEPTION\n | mysql_error_code\n\nThe DECLARE ... HANDLER statement specifies handlers that each may deal\nwith one or more conditions. If one of these conditions occurs, the\nspecified statement is executed. statement can be a simple statement\n(for example, SET var_name = value), or it can be a compound statement\nwritten using BEGIN and END. Compound statement syntax is described in\n[begin-end].\n\nFor a CONTINUE handler, execution of the current routine continues\nafter execution of the handler statement. For an EXIT handler,\nexecution terminates for the BEGIN...END compound statement in which\nthe handler is declared. (This is true even if the condition occurs in\nan inner block.) The UNDO handler type statement is not yet supported.\n\no SQLWARNING is shorthand for all SQLSTATE codes that begin with 01.\n\no NOT FOUND is shorthand for all SQLSTATE codes that begin with 02.\n\no SQLEXCEPTION is shorthand for all SQLSTATE codes not caught by\n SQLWARNING or NOT FOUND.\n\nIn addition to SQLSTATE values, MySQL error codes are also supported.\n","mysql> CREATE TABLE test.t (s1 int,primary key (s1));\nQuery OK, 0 rows affected (0.00 sec)\n\nmysql> delimiter //\n\nmysql> CREATE PROCEDURE handlerdemo ()\n -> BEGIN\n -> DECLARE CONTINUE HANDLER FOR SQLSTATE '23000' SET @x2 = 1;\n -> SET @x = 1;\n -> INSERT INTO test.t VALUES (1);\n -> SET @x = 2;\n -> INSERT INTO test.t VALUES (1);\n -> SET @x = 3;\n -> END;\n -> //\nQuery OK, 0 rows affected (0.00 sec)\n\nmysql> CALL handlerdemo()//\nQuery OK, 0 rows affected (0.00 sec)\n\nmysql> SELECT @x//\n +------+\n | @x |\n +------+\n | 3 |\n +------+\n 1 row in set (0.00 sec)\n","declare-handlers");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (270,19,"DOUBLE","DOUBLE[(M,D)] [UNSIGNED] [ZEROFILL]\n\nA normal-size (double-precision) floating-point number. Allowable\nvalues are -1.7976931348623157E+308 to -2.2250738585072014E-308, 0, and\n2.2250738585072014E-308 to 1.7976931348623157E+308. These are the\ntheoretical limits, based on the IEEE standard. The actual range might\nbe slightly smaller depending on your hardware or operating system.\n\nM is the total number of decimal digits and D is the number of digits\nfollowing the decimal point. If M and D are omitted, values are stored\nto the limits allowed by the hardware. A double-precision\nfloating-point number is accurate to approximately 15 decimal places.\n\nIf UNSIGNED is specified, negative values are disallowed.\n","","numeric-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (271,19,"TIME","TIME\n\nA time. The range is '-838:59:59' to '838:59:59'. MySQL displays TIME\nvalues in 'HH:MM:SS' format, but allows you to assign values to TIME\ncolumns using either strings or numbers.\n","","date-and-time-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (272,12,"&&","Syntax:\nAND, &&\n\nLogical AND. Evaluates to 1 if all operands are non-zero and not NULL,\nto 0 if one or more operands are 0, otherwise NULL is returned.\n","mysql> SELECT 1 && 1;\n -> 1\nmysql> SELECT 1 && 0;\n -> 0\nmysql> SELECT 1 && NULL;\n -> NULL\nmysql> SELECT 0 && NULL;\n -> 0\nmysql> SELECT NULL && 0;\n -> 0\n","logical-operators");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (273,9,"X","X(p)\n\nReturns the X-coordinate value for the point p as a double-precision\nnumber.\n","mysql> SELECT X(GeomFromText('Point(56.7 53.34)'));\n+--------------------------------------+\n| X(GeomFromText('Point(56.7 53.34)')) |\n+--------------------------------------+\n| 56.7 |\n+--------------------------------------+\n","point-property-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (274,15,"FOUND_ROWS","Syntax:\nFOUND_ROWS()\n\nA SELECT statement may include a LIMIT clause to restrict the number of\nrows the server returns to the client. In some cases, it is desirable\nto know how many rows the statement would have returned without the\nLIMIT, but without running the statement again. To get this row count,\ninclude a SQL_CALC_FOUND_ROWS option in the SELECT statement, then\ninvoke FOUND_ROWS() afterward:\n","mysql> SELECT SQL_CALC_FOUND_ROWS * FROM tbl_name\n -> WHERE id > 100 LIMIT 10;\nmysql> SELECT FOUND_ROWS();\n","information-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (275,15,"SYSTEM_USER","Syntax:\nSYSTEM_USER()\n\nSYSTEM_USER() is a synonym for USER().\n","","information-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (276,25,"CROSSES","Crosses(g1,g2)\n\nReturns 1 if g1 spatially crosses g2. Returns NULL if g1 is a Polygon\nor a MultiPolygon, or if g2 is a Point or a MultiPoint. Otherwise,\nreturns 0.\n\nThe term spatially crosses denotes a spatial relation between two given\ngeometries that has the following properties:\n\no The two geometries intersect\n\no Their intersection results in a geometry that has a dimension that is\n one less than the maximum dimension of the two given geometries\n\no Their intersection is not equal to either of the two given geometries\n","","functions-that-test-spatial-relationships-between-geometries");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (277,24,"TRUNCATE TABLE","Syntax:\nTRUNCATE [TABLE] tbl_name\n\nTRUNCATE TABLE empties a table completely. Logically, this is\nequivalent to a DELETE statement that deletes all rows, but there are\npractical differences under some circumstances.\n\nFor InnoDB before version 5.0.3, TRUNCATE TABLE is mapped to DELETE, so\nthere is no difference. Starting with MySQL 5.0.3, fast TRUNCATE TABLE\nis available. However, the operation is still mapped to DELETE if there\nare foreign key constraints that reference the table. (When fast\ntruncate is used, it resets any AUTO_INCREMENT counter. From MySQL\n5.0.13 on, the AUTO_INCREMENT counter is reset by TRUNCATE TABLE,\nregardless of whether there is a foreign key constraint.)\n\nFor other storage engines, TRUNCATE TABLE differs from DELETE FROM in\nthe following ways in MySQL 5.0:\n\no Truncate operations drop and re-create the table, which is much\n faster than deleting rows one by one.\n\no Truncate operations are not transaction-safe; an error occurs when\n attempting one in the course of an active transaction or active table\n lock.\n\no The number of deleted rows is not returned.\n\no As long as the table definition file tbl_name.frm is valid, the table\n can be re-created as an empty table with TRUNCATE TABLE, even if the\n data or index files have become corrupted.\n\no The table handler does not remember the last used AUTO_INCREMENT\n value, but starts counting from the beginning. This is true even for\n MyISAM and InnoDB, which normally do not reuse sequence values.\n\nTRUNCATE TABLE is an Oracle SQL extension adopted in MySQL.\n","","truncate");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (278,14,"BIT_XOR","Syntax:\nBIT_XOR(expr)\n\nReturns the bitwise XOR of all bits in expr. The calculation is\nperformed with 64-bit (BIGINT) precision.\n","","group-by-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (279,27,"CURRENT_DATE","Syntax:\nCURRENT_DATE, CURRENT_DATE()\n\nCURRENT_DATE and CURRENT_DATE() are synonyms for CURDATE().\n","","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (280,2,"AREA","Area(poly)\n\nReturns as a double-precision number the area of the Polygon value\npoly, as measured in its spatial reference system.\n","mysql> SET @poly = 'Polygon((0 0,0 3,3 0,0 0),(1 1,1 2,2 1,1 1))';\nmysql> SELECT Area(GeomFromText(@poly));\n+---------------------------+\n| Area(GeomFromText(@poly)) |\n+---------------------------+\n| 4 |\n+---------------------------+\n","polygon-property-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (281,24,"START SLAVE","Syntax:\nSTART SLAVE [thread_type [, thread_type] ... ]\nSTART SLAVE [SQL_THREAD] UNTIL\n MASTER_LOG_FILE = 'log_name', MASTER_LOG_POS = log_pos\nSTART SLAVE [SQL_THREAD] UNTIL\n RELAY_LOG_FILE = 'log_name', RELAY_LOG_POS = log_pos\n\nthread_type: IO_THREAD | SQL_THREAD\n\nSTART SLAVE with no options starts both of the slave threads. The I/O\nthread reads queries from the master server and stores them in the\nrelay log. The SQL thread reads the relay log and executes the queries.\nSTART SLAVE requires the SUPER privilege.\n\nIf START SLAVE succeeds in starting the slave threads, it returns\nwithout any error. However, even in that case, it might be that the\nslave threads start and then later stop (for example, because they do\nnot manage to connect to the master or read its binary logs, or some\nother problem). START SLAVE does not warn you about this. You must\ncheck the slave's error log for error messages generated by the slave\nthreads, or check that they are running satisfactorilly with SHOW SLAVE\nSTATUS.\n","","start-slave");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (282,34,"BEGIN END","Syntax:\n[begin_label:] BEGIN\n [statement_list]\nEND [end_label]\n\nStored routines may contain multiple statements, using a BEGIN ... END\ncompound statement. statement_list represents a list of one or more\nstatements. Each statement within statement_list must be terminated by\na semicolon character (;).\n\nA compound statement can be labeled. end_label cannot be given unless\nbegin_label also is present, and if both are present, they must be the\nsame.\n","","begin-end");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (283,24,"FLUSH","Syntax:\nFLUSH [LOCAL | NO_WRITE_TO_BINLOG] flush_option [, flush_option] ...\n\nYou should use the FLUSH statement if you want to clear some of the\ninternal caches MySQL uses. To execute FLUSH, you must have the RELOAD\nprivilege.\n","","flush");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (284,34,"SHOW PROCEDURE STATUS","Syntax:\nSHOW {PROCEDURE | FUNCTION} STATUS [LIKE 'pattern']\n\nThis statement is a MySQL extension. It returns characteristics of\nroutines, such as the database, name, type, creator, and creation and\nmodification dates. If no pattern is specified, the information for all\nstored procedures or all stored functions is listed, depending on which\nstatement you use.\n","mysql> SHOW FUNCTION STATUS LIKE 'hello'\\G\n*************************** 1. row ***************************\n Db: test\n Name: hello\n Type: FUNCTION\n Definer: testuser@localhost\n Modified: 2004-08-03 15:29:37\n Created: 2004-08-03 15:29:37\nSecurity_type: DEFINER\n Comment:\n","show-procedure-status");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (285,23,"DESCRIBE","Syntax:\n{DESCRIBE | DESC} tbl_name [col_name | wild]\n\nDESCRIBE provides information about the columns in a table. It is a\nshortcut for SHOW COLUMNS FROM. As of MySQL 5.0.1, these statements\nalso display information for views.\n","","describe");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (286,23,"DROP USER","Syntax:\nDROP USER user [, user] ...\n\nThe DROP USER statement deletes one or more MySQL accounts. To use it,\nyou must have the global CREATE USER privilege or the DELETE privilege\nfor the mysql database. Each account is named using the same format as\nfor GRANT or REVOKE; for example, 'jeffrey'@'localhost'. The user and\nhost parts of the account name correspond to the User and Host column\nvalues of the user table record for the account.\n\nDROP USER as present in MySQL 5.0.0 removes only accounts that have no\nprivileges. In MySQL 5.0.2, it was modified to remove account\nprivileges as well. This means that the procedure for removing an\naccount depends on your version of MySQL.\n\nAs of MySQL 5.0.2, you can remove an account and its privileges as\nfollows:\n\nDROP USER user;\n\nThe statement removes privilege records for the account from all grant\ntables.\n","","drop-user");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (287,14,"STDDEV_POP","Syntax:\nSTDDEV_POP(expr)\n\nReturns the population standard deviation of expr (the square root of\nVAR_POP()). This function was added in MySQL 5.0.3. Before 5.0.3, you\ncan use STD() or STDDEV(), which are equivalent but not standard SQL.\n\nSTDDEV_POP() returns NULL if there were no matching rows.\n","","group-by-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (288,24,"SHOW CHARACTER SET","Syntax:\nSHOW CHARACTER SET [LIKE 'pattern']\n\nThe SHOW CHARACTER SET statement shows all available character sets. It\ntakes an optional LIKE clause that indicates which character set names\nto match. For example:\n\nmysql> SHOW CHARACTER SET LIKE 'latin%';\n+---------+-----------------------------+-------------------+--------+\n| Charset | Description | Default collation | Maxlen |\n+---------+-----------------------------+-------------------+--------+\n| latin1 | cp1252 West European | latin1_swedish_ci | 1 |\n| latin2 | ISO 8859-2 Central European | latin2_general_ci | 1 |\n| latin5 | ISO 8859-9 Turkish | latin5_turkish_ci | 1 |\n| latin7 | ISO 8859-13 Baltic | latin7_general_ci | 1 |\n+---------+-----------------------------+-------------------+--------+\n","","show-character-set");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (289,32,"SUBSTRING","Syntax:\nSUBSTRING(str,pos), SUBSTRING(str FROM pos), SUBSTRING(str,pos,len),\nSUBSTRING(str FROM pos FOR len)\n\nThe forms without a len argument return a substring from string str\nstarting at position pos. The forms with a len argument return a\nsubstring len characters long from string str, starting at position\npos. The forms that use FROM are standard SQL syntax. It is also\npossible to use a negative value for pos. In this case, the beginning\nof the substring is pos characters from the end of the string, rather\nthan the beginning. A negative value may be used for pos in any of the\nforms of this function.\n","mysql> SELECT SUBSTRING('Quadratically',5);\n -> 'ratically'\nmysql> SELECT SUBSTRING('foobarbar' FROM 4);\n -> 'barbar'\nmysql> SELECT SUBSTRING('Quadratically',5,6);\n -> 'ratica' \nmysql> SELECT SUBSTRING('Sakila', -3);\n -> 'ila' \nmysql> SELECT SUBSTRING('Sakila', -5, 3);\n -> 'aki'\nmysql> SELECT SUBSTRING('Sakila' FROM -4 FOR 2);\n -> 'ki'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (290,31,"ISEMPTY","IsEmpty(g)\n\nReturns 1 if the geometry value g is the empty geometry, 0 if it is not\nempty, and −1 if the argument is NULL. If the geometry is empty, it\nrepresents the empty point set.\n","","general-geometry-property-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (291,32,"LTRIM","Syntax:\nLTRIM(str)\n\nReturns the string str with leading space characters removed.\n","mysql> SELECT LTRIM(' barbar');\n -> 'barbar'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (292,25,"INTERSECTS","Intersects(g1,g2)\n\nReturns 1 or 0 to indicate whether or not g1 spatially intersects g2.\n","","functions-that-test-spatial-relationships-between-geometries");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (293,34,"CALL","Syntax:\nCALL sp_name([parameter[,...]])\n\nThe CALL statement invokes a procedure that was defined previously with\nCREATE PROCEDURE.\n\nCALL can pass back values to its caller using parameters that are\ndeclared as OUT or INOUT parameters. It also \"returns\" the number of\nrows affected, which a client program can obtain at the SQL level by\ncalling the ROW_COUNT() function and from C by calling the\nmysql_affected_rows() C API function.\n","","call");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (294,6,"MBRDISJOINT","MBRDisjoint(g1,g2)\n\nReturns 1 or 0 to indicate whether or not the Minimum Bounding\nRectangles of the two geometries g1 and g2 are disjoint (do not\nintersect).\n","","relations-on-geometry-mbr");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (295,13,"VALUES","Syntax:\nVALUES(col_name)\n\nIn an INSERT ... ON DUPLICATE KEY UPDATE ... statement, you can use the\nVALUES(col_name) function in the UPDATE clause to refer to column\nvalues from the INSERT portion of the statement. In other words,\nVALUES(col_name) in the UPDATE clause refers to the value of col_name\nthat would be inserted, had no duplicate-key conflict occurred. This\nfunction is especially useful in multiple-row inserts. The VALUES()\nfunction is meaningful only in INSERT ... UPDATE statements and returns\nNULL otherwise. [insert].\n","mysql> INSERT INTO table (a,b,c) VALUES (1,2,3),(4,5,6)\n -> ON DUPLICATE KEY UPDATE c=VALUES(a)+VALUES(b);\n","miscellaneous-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (296,32,"SUBSTRING_INDEX","Syntax:\nSUBSTRING_INDEX(str,delim,count)\n\nReturns the substring from string str before count occurrences of the\ndelimiter delim. If count is positive, everything to the left of the\nfinal delimiter (counting from the left) is returned. If count is\nnegative, everything to the right of the final delimiter (counting from\nthe right) is returned. SUBSTRING_INDEX() performs a case-sensitive\nmatch when searching for delim.\n","mysql> SELECT SUBSTRING_INDEX('www.mysql.com', '.', 2);\n -> 'www.mysql'\nmysql> SELECT SUBSTRING_INDEX('www.mysql.com', '.', -2);\n -> 'mysql.com'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (297,10,"ENCODE","Syntax:\nENCODE(str,pass_str)\n\nEncrypt str using pass_str as the password. To decrypt the result, use\nDECODE().\n\nThe result is a binary string of the same length as str. If you want to\nsave it in a column, use a BLOB column type.\n","","encryption-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (298,34,"LOOP","Syntax:\n[begin_label:] LOOP\n statement_list\nEND LOOP [end_label]\n\nLOOP implements a simple loop construct, enabling repeated execution of\na particular statement or statements. The statements within the loop\nare repeated until the loop is exited; usually this is accomplished\nwith a LEAVE statement.\n\nA LOOP statement can be labeled. end_label cannot be given unless\nbegin_label also is present, and if both are present, they must be the\nsame.\n","","loop-statement");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (299,5,"TRUNCATE","Syntax:\nTRUNCATE(X,D)\n\nReturns the number X, truncated to D decimals. If D is 0, the result\nhas no decimal point or fractional part. D can be negative in order to\ntruncate (make zero) D digits left of the decimal point of the value X.\n","mysql> SELECT TRUNCATE(1.223,1);\n -> 1.2\nmysql> SELECT TRUNCATE(1.999,1);\n -> 1.9\nmysql> SELECT TRUNCATE(1.999,0);\n -> 1\nmysql> SELECT TRUNCATE(-1.999,1);\n -> -1.9\nmysql> SELECT TRUNCATE(122,-2);\n -> 100\nmysql> SELECT TRUNCATE(10.28*100,0);\n -> 1028\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (300,27,"TIMESTAMPADD","Syntax:\nTIMESTAMPADD(interval,int_expr,datetime_expr)\n\nAdds the integer expression int_expr to the date or datetime expression\ndatetime_expr. The unit for int_expr is given by the interval argument,\nwhich should be one of the following values: FRAC_SECOND, SECOND,\nMINUTE, HOUR, DAY, WEEK, MONTH, QUARTER, or YEAR.\n\nThe interval value may be specified using one of keywords as shown, or\nwith a prefix of SQL_TSI_. For example, DAY or SQL_TSI_DAY both are\nlegal.\n","mysql> SELECT TIMESTAMPADD(MINUTE,1,'2003-01-02');\n -> '2003-01-02 00:01:00'\nmysql> SELECT TIMESTAMPADD(WEEK,1,'2003-01-02');\n -> '2003-01-09'\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (301,24,"SHOW","SHOW has many forms that provide information about databases, tables,\ncolumns, or status information about the server. This section describes\nthose following:\n\nSHOW [FULL] COLUMNS FROM tbl_name [FROM db_name] [LIKE 'pattern']\nSHOW CREATE DATABASE db_name\nSHOW CREATE TABLE tbl_name\nSHOW DATABASES [LIKE 'pattern']\nSHOW ENGINE engine_name {LOGS | STATUS }\nSHOW [STORAGE] ENGINES\nSHOW ERRORS [LIMIT [offset,] row_count]\nSHOW GRANTS FOR user\nSHOW INDEX FROM tbl_name [FROM db_name]\nSHOW INNODB STATUS\nSHOW [BDB] LOGS\nSHOW PRIVILEGES\nSHOW [FULL] PROCESSLIST\nSHOW [GLOBAL | SESSION] STATUS [LIKE 'pattern']\nSHOW TABLE STATUS [FROM db_name] [LIKE 'pattern']\nSHOW [OPEN] TABLES [FROM db_name] [LIKE 'pattern']\nSHOW TRIGGERS\nSHOW [GLOBAL | SESSION] VARIABLES [LIKE 'pattern']\nSHOW WARNINGS [LIMIT [offset,] row_count]\n\nThe SHOW statement also has forms that provide information about\nreplication master and slave servers and are described in\n[replication-sql]:\n\nSHOW BINLOG EVENTS\nSHOW MASTER LOGS\nSHOW MASTER STATUS\nSHOW SLAVE HOSTS\nSHOW SLAVE STATUS\n\nIf the syntax for a given SHOW statement includes a LIKE 'pattern'\npart, 'pattern' is a string that can contain the SQL `%' and `_'\nwildcard characters. The pattern is useful for restricting statement\noutput to matching values.\n\nSeveral SHOW statements also accept a WHERE clause that provides more\nflexibility in specifying which rows to display. See [extended-show].\n","","show");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (302,17,"GREATEST","Syntax:\nGREATEST(value1,value2,...)\n\nWith two or more arguments, returns the largest (maximum-valued)\nargument. The arguments are compared using the same rules as for\nLEAST().\n","mysql> SELECT GREATEST(2,0);\n -> 2\nmysql> SELECT GREATEST(34.0,3.0,5.0,767.0);\n -> 767.0\nmysql> SELECT GREATEST('B','A','C');\n -> 'C'\n","comparison-operators");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (303,32,"OCTETLENGTH","Syntax:\nOCTET_LENGTH(str)\n\nOCTET_LENGTH() is a synonym for LENGTH().\n","","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (304,14,"BIT_AND","Syntax:\nBIT_AND(expr)\n\nReturns the bitwise AND of all bits in expr. The calculation is\nperformed with 64-bit (BIGINT) precision.\n","","group-by-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (305,27,"SECOND","Syntax:\nSECOND(time)\n\nReturns the second for time, in the range 0 to 59.\n","mysql> SELECT SECOND('10:05:03');\n -> 3\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (306,5,"ATAN2","Syntax:\nATAN(Y,X), ATAN2(Y,X)\n\nReturns the arc tangent of the two variables X and Y. It is similar to\ncalculating the arc tangent of Y / X, except that the signs of both\narguments are used to determine the quadrant of the result.\n","mysql> SELECT ATAN(-2,2);\n -> -0.78539816339745\nmysql> SELECT ATAN2(PI(),0);\n -> 1.5707963267949\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (307,6,"MBRCONTAINS","MBRContains(g1,g2)\n\nReturns 1 or 0 to indicate whether or not the Minimum Bounding\nRectangle of g1 contains the Minimum Bounding Rectangle of g2.\n","mysql> SET @g1 = GeomFromText('Polygon((0 0,0 3,3 3,3 0,0 0))');\nmysql> SET @g2 = GeomFromText('Point(1 1)');\nmysql> SELECT MBRContains(@g1,@g2), MBRContains(@g2,@g1);\n----------------------+----------------------+\n| MBRContains(@g1,@g2) | MBRContains(@g2,@g1) |\n+----------------------+----------------------+\n| 1 | 0 |\n+----------------------+----------------------+\n","relations-on-geometry-mbr");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (308,27,"HOUR","Syntax:\nHOUR(time)\n\nReturns the hour for time. The range of the return value is 0 to 23 for\ntime-of-day values.\n","mysql> SELECT HOUR('10:05:03');\n -> 10\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (309,24,"SELECT","Syntax:\nSELECT\n [ALL | DISTINCT | DISTINCTROW ]\n [HIGH_PRIORITY]\n [STRAIGHT_JOIN]\n [SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT]\n [SQL_CACHE | SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS]\n select_expr, ...\n [INTO OUTFILE 'file_name' export_options\n | INTO DUMPFILE 'file_name']\n [FROM table_references\n [WHERE where_definition]\n [GROUP BY {col_name | expr | position}\n [ASC | DESC], ... [WITH ROLLUP]]\n [HAVING where_definition]\n [ORDER BY {col_name | expr | position}\n [ASC | DESC] , ...]\n [LIMIT {[offset,] row_count | row_count OFFSET offset}]\n [PROCEDURE procedure_name(argument_list)]\n [FOR UPDATE | LOCK IN SHARE MODE]]\n\nSELECT is used to retrieve rows selected from one or more tables, and\ncan include UNION statements and subqueries. See [union] and\n[subqueries].\n\no Each select_expr indicates a column you want to retrieve.\n\no table_references indicates the table or tables from which to retrieve\n rows. Its syntax is described in [join].\n\no where_definition consists of the keyword WHERE followed by an\n expression that indicates the condition or conditions that rows must\n satisfy to be selected.\n\nSELECT can also be used to retrieve rows computed without reference to\nany table.\n","","select");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (310,5,"COT","Syntax:\nCOT(X)\n\nReturns the cotangent of X.\n","mysql> SELECT COT(12);\n -> -1.5726734063977\nmysql> SELECT COT(0);\n -> NULL\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (311,23,"BACKUP TABLE","Syntax:\nBACKUP TABLE tbl_name [, tbl_name] ... TO '/path/to/backup/directory'\n\nNote: This statement is deprecated. We are working on a better\nreplacement for it that will provide online backup capabilities. In the\nmeantime, the mysqlhotcopy script can be used instead.\n\nBACKUP TABLE copies to the backup directory the minimum number of table\nfiles needed to restore the table, after flushing any buffered changes\nto disk. The statement works only for MyISAM tables. It copies the .frm\ndefinition and .MYD data files. The .MYI index file can be rebuilt from\nthose two files. The directory should be specified as a full pathname.\n","","backup-table");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (312,32,"LOAD_FILE","Syntax:\nLOAD_FILE(file_name)\n\nReads the file and returns the file contents as a string. The file must\nbe located on the server, you must specify the full pathname to the\nfile, and you must have the FILE privilege. The file must be readable\nby all and its size less than max_allowed_packet bytes.\n\nIf the file does not exist or cannot be read because one of the\npreceding conditions is not satisfied, the function returns NULL.\n","mysql> UPDATE tbl_name\n SET blob_column=LOAD_FILE('/tmp/picture')\n WHERE id=1;\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (313,4,"POINTFROMTEXT","PointFromText(wkt[,srid])\n\nConstructs a POINT value using its WKT representation and SRID.\n","","gis-wkt-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (314,24,"LOAD TABLE FROM MASTER","Syntax:\nLOAD TABLE tbl_name FROM MASTER\n\nTransfers a copy of the table from the master to the slave. This\nstatement is implemented mainly for debugging of LOAD DATA FROM MASTER.\nIt requires that the account used for connecting to the master server\nhas the RELOAD and SUPER privileges on the master and the SELECT\nprivilege on the master table to load. On the slave side, the user that\nissues LOAD TABLE FROM MASTER should have privileges to drop and create\nthe table.\n\nThe conditions for LOAD DATA FROM MASTER apply here as well. For\nexample, LOAD TABLE FROM MASTER works only for MyISAM tables. The\ntimeout notes for LOAD DATA FROM MASTER apply as well.\n","","load-table-from-master");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (315,14,"GROUP_CONCAT","Syntax:\nGROUP_CONCAT(expr)\n\nThis function returns a string result with the concatenated non-NULL\nvalues from a group. It returns NULL if there are no non-NULL values.\nThe full syntax is as follows:\n\nGROUP_CONCAT([DISTINCT] expr [,expr ...]\n [ORDER BY {unsigned_integer | col_name | expr}\n [ASC | DESC] [,col_name ...]]\n [SEPARATOR str_val])\n","mysql> SELECT student_name,\n -> GROUP_CONCAT(test_score)\n -> FROM student\n -> GROUP BY student_name;\n","group-by-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (316,27,"DATE_FORMAT","Syntax:\nDATE_FORMAT(date,format)\n\nFormats the date value according to the format string.\n","mysql> SELECT DATE_FORMAT('1997-10-04 22:23:00', '%W %M %Y');\n -> 'Saturday October 1997'\nmysql> SELECT DATE_FORMAT('1997-10-04 22:23:00', '%H:%i:%s');\n -> '22:23:00'\nmysql> SELECT DATE_FORMAT('1997-10-04 22:23:00',\n '%D %y %a %d %m %b %j');\n -> '4th 97 Sat 04 10 Oct 277'\nmysql> SELECT DATE_FORMAT('1997-10-04 22:23:00',\n '%H %k %I %r %T %S %w');\n -> '22 22 10 10:23:00 PM 22:23:00 00 6'\nmysql> SELECT DATE_FORMAT('1999-01-01', '%X %V');\n -> '1998 52'\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (317,15,"BENCHMARK","Syntax:\nBENCHMARK(count,expr)\n\nThe BENCHMARK() function executes the expression expr repeatedly count\ntimes. It may be used to time how quickly MySQL processes the\nexpression. The result value is always 0. The intended use is from\nwithin the mysql client, which reports query execution times:\n","mysql> SELECT BENCHMARK(1000000,ENCODE('hello','goodbye'));\n+----------------------------------------------+\n| BENCHMARK(1000000,ENCODE('hello','goodbye')) |\n+----------------------------------------------+\n| 0 |\n+----------------------------------------------+\n1 row in set (4.74 sec)\n","information-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (318,27,"YEAR","Syntax:\nYEAR(date)\n\nReturns the year for date, in the range 1000 to 9999.\n","mysql> SELECT YEAR('98-02-03');\n -> 1998\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (319,24,"SHOW ENGINE","Syntax:\nSHOW ENGINE engine_name {LOGS | STATUS }\n\nSHOW ENGINE displays log or status information about storage engines.\nThe following statements currently are supported:\n\nSHOW ENGINE BDB LOGS\nSHOW ENGINE INNODB STATUS\n","","show-engine");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (320,13,"NAME_CONST","Syntax:\nNAME_CONST(name,value)\n\nReturns the given value. When used to produce a result set column,\nNAME_CONST() causes the column to have the given name.\n\nmysql> SELECT NAME_CONST('myname', 14);\n+--------+\n| myname |\n+--------+\n| 14 |\n+--------+\n","","miscellaneous-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (321,13,"RELEASE_LOCK","Syntax:\nRELEASE_LOCK(str)\n\nReleases the lock named by the string str that was obtained with\nGET_LOCK(). Returns 1 if the lock was released, 0 if the lock was not\nestablished by this thread (in which case the lock is not released),\nand NULL if the named lock did not exist. The lock does not exist if it\nwas never obtained by a call to GET_LOCK() or if it has previously been\nreleased.\n\nThe DO statement is convenient to use with RELEASE_LOCK(). See [do].\n","","miscellaneous-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (322,17,"IS NULL","Syntax:\nIS NULL, IS NOT NULL\n\nTests whether a value is or is not NULL.\n","mysql> SELECT 1 IS NULL, 0 IS NULL, NULL IS NULL;\n -> 0, 0, 1\nmysql> SELECT 1 IS NOT NULL, 0 IS NOT NULL, NULL IS NOT NULL;\n -> 1, 1, 0\n","comparison-operators");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (323,27,"CONVERT_TZ","Syntax:\nCONVERT_TZ(dt,from_tz,to_tz)\n\nCONVERT_TZ() converts a datetime value dt from time zone given by\nfrom_tz to the time zone given by to_tz and returns the resulting\nvalue. Time zones may be specified as described in [time-zone-support].\nThis function returns NULL if the arguments are invalid.\n","mysql> SELECT CONVERT_TZ('2004-01-01 12:00:00','GMT','MET');\n -> '2004-01-01 13:00:00'\nmysql> SELECT CONVERT_TZ('2004-01-01 12:00:00','+00:00','+10:00');\n -> '2004-01-01 22:00:00'\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (324,27,"TIME_TO_SEC","Syntax:\nTIME_TO_SEC(time)\n\nReturns the time argument, converted to seconds.\n","mysql> SELECT TIME_TO_SEC('22:23:00');\n -> 80580\nmysql> SELECT TIME_TO_SEC('00:39:38');\n -> 2378\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (325,27,"WEEKDAY","Syntax:\nWEEKDAY(date)\n\nReturns the weekday index for date (0 = Monday, 1 = Tuesday, ... 6 =\nSunday).\n","mysql> SELECT WEEKDAY('1998-02-03 22:23:00');\n -> 1\nmysql> SELECT WEEKDAY('1997-11-05');\n -> 2\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (326,32,"EXPORT_SET","Syntax:\nEXPORT_SET(bits,on,off[,separator[,number_of_bits]])\n\nReturns a string in which for every bit set in the value bits, you get\nan on string and for every reset bit you get an off string. Bits in\nbits are examined from right to left (from low-order to high-order\nbits). Strings are added to the result from left to right, separated by\nthe separator string (the default being the comma character `,'). The\nnumber of bits examined is given by number_of_bits (defaults to 64).\n","mysql> SELECT EXPORT_SET(5,'Y','N',',',4);\n -> 'Y,N,Y,N'\nmysql> SELECT EXPORT_SET(6,'1','0',',',10);\n -> '0,1,1,0,0,0,0,0,0,0'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (327,27,"TIME FUNCTION","Syntax:\nTIME(expr)\n\nExtracts the time part of the time or datetime expression expr and\nreturns it as a string.\n","mysql> SELECT TIME('2003-12-31 01:02:03');\n -> '01:02:03'\nmysql> SELECT TIME('2003-12-31 01:02:03.000123');\n -> '01:02:03.000123'\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (328,32,"CAST","Syntax:\nCAST(expr AS type), CONVERT(expr,type), CONVERT(expr USING\ntranscoding_name)\n\nThe CAST() and CONVERT() functions can be used to take a value of one\ntype and produce a value of another type.\n\nThe type can be one of the following values:\n\no BINARY[(N)]\n\no CHAR[(N)]\n\no DATE\n\no DATETIME\n\no DECIMAL\n\no SIGNED [INTEGER]\n\no TIME\n\no UNSIGNED [INTEGER]\n\nBINARY produces a binary string. See the entry for the BINARY operator\nin this section for a description of how this affects comparisons.\n\nIf the optional length N is given, BINARY[N] causes the cast to use no\nmore than N bytes of the argument. As of MySQL 5.0.17, values shorter\nthan N bytes are padded with 0x00 bytes to a length of N.\n\nCHAR[N] causes the cast to use no more than N characters of the\nargument.\n\nThe DECIMAL type is available as of MySQL 5.0.8.\n\nCAST() and CONVERT(... USING ...) are standard SQL syntax. The\nnon-USING form of CONVERT() is ODBC syntax.\n\nCONVERT() with USING is used to convert data between different\ncharacter sets. In MySQL, transcoding names are the same as the\ncorresponding character set names. For example, this statement converts\nthe string 'abc' in the server's default character set to the\ncorresponding string in the utf8 character set:\n\nSELECT CONVERT('abc' USING utf8);\n","SELECT enum_col FROM tbl_name ORDER BY CAST(enum_col AS CHAR);\n","cast-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (329,32,"SOUNDS LIKE","Syntax:\nexpr1 SOUNDS LIKE expr2\n\nThis is the same as SOUNDEX(expr1) = SOUNDEX(expr2).\n","","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (330,27,"PERIOD_DIFF","Syntax:\nPERIOD_DIFF(P1,P2)\n\nReturns the number of months between periods P1 and P2. P1 and P2\nshould be in the format YYMM or YYYYMM. Note that the period arguments\nP1 and P2 are not date values.\n","mysql> SELECT PERIOD_DIFF(9802,199703);\n -> 11\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (331,32,"LIKE","Syntax:\nexpr LIKE pat [ESCAPE 'escape-char']\n\nPattern matching using SQL simple regular expression comparison.\nReturns 1 (TRUE) or 0 (FALSE). If either expr or pat is NULL, the\nresult is NULL.\n\nThe pattern need not be a literal string. For example, it can be\nspecified as a string expression or table column.\n","mysql> SELECT 'David!' LIKE 'David_';\n -> 1\nmysql> SELECT 'David!' LIKE '%D%v%';\n -> 1\n","string-comparison-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (332,21,"MULTIPOINT","MultiPoint(pt1,pt2,...)\n\nConstructs a WKB MultiPoint value using WKB Point arguments. If any\nargument is not a WKB Point, the return value is NULL.\n","","gis-mysql-specific-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (333,18,">>","Syntax:\n>>\n\nShifts a longlong (BIGINT) number to the right.\n","mysql> SELECT 4 >> 2;\n -> 1\n","bit-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (334,34,"FETCH","Syntax:\nFETCH cursor_name INTO var_name [, var_name] ...\n\nThis statement fetches the next row (if a row exists) using the\nspecified open cursor, and advances the cursor pointer.\n","","fetch");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (335,26,"TRUE FALSE","The constant TRUE evaluates to 1 and the constant FALSE evaluates to 0.\nThe constant names can be written in any lettercase.\n\nmysql> SELECT TRUE, true, FALSE, false;\n -> 1, 1, 0, 0\n","","boolean-values");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (336,14,"AVG","Syntax:\nAVG([DISTINCT] expr)\n\nReturns the average value of expr. The DISTINCT option can be used as\nof MySQL 5.0.3 to return the average of the distinct values of expr.\n\nAVG() returns NULL if there were no matching rows.\n","mysql> SELECT student_name, AVG(test_score)\n -> FROM student\n -> GROUP BY student_name;\n","group-by-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (337,6,"MBRWITHIN","MBRWithin(g1,g2)\n\nReturns 1 or 0 to indicate whether or not the Minimum Bounding\nRectangle of g1 is within the Minimum Bounding Rectangle of g2.\n","mysql> SET @g1 = GeomFromText('Polygon((0 0,0 3,3 3,3 0,0 0))');\nmysql> SET @g2 = GeomFromText('Polygon((0 0,0 5,5 5,5 0,0 0))');\nmysql> SELECT MBRWithin(@g1,@g2), MBRWithin(@g2,@g1);\n+--------------------+--------------------+\n| MBRWithin(@g1,@g2) | MBRWithin(@g2,@g1) |\n+--------------------+--------------------+\n| 1 | 0 |\n+--------------------+--------------------+\n","relations-on-geometry-mbr");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (338,17,"IN","Syntax:\nexpr IN (value,...)\n\nReturns 1 if expr is equal to any of the values in the IN list, else\nreturns 0. If all values are constants, they are evaluated according to\nthe type of expr and sorted. The search for the item then is done using\na binary search. This means IN is very quick if the IN value list\nconsists entirely of constants. Otherwise, type conversion takes place\naccording to the rules described at the beginning of this section, but\napplied to all the arguments.\n","mysql> SELECT 2 IN (0,3,5,'wefwf');\n -> 0\nmysql> SELECT 'wefwf' IN (0,3,5,'wefwf');\n -> 1\n","comparison-operators");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (339,32,"QUOTE","Syntax:\nQUOTE(str)\n\nQuotes a string to produce a result that can be used as a properly\nescaped data value in an SQL statement. The string is returned\nsurrounded by single quotes and with each instance of single quote\n(`''), backslash (`\\'), ASCII NUL, and Control-Z preceded by a\nbackslash. If the argument is NULL, the return value is the word \"NULL\"\nwithout surrounding single quotes.\n","mysql> SELECT QUOTE('Don\\'t!');\n -> 'Don\\'t!'\nmysql> SELECT QUOTE(NULL);\n -> NULL\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (340,15,"SESSION_USER","Syntax:\nSESSION_USER()\n\nSESSION_USER() is a synonym for USER().\n","","information-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (341,27,"QUARTER","Syntax:\nQUARTER(date)\n\nReturns the quarter of the year for date, in the range 1 to 4.\n","mysql> SELECT QUARTER('98-04-01');\n -> 2\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (342,32,"POSITION","Syntax:\nPOSITION(substr IN str)\n\nPOSITION(substr IN str) is a synonym for LOCATE(substr,str).\n","","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (343,13,"IS_USED_LOCK","Syntax:\nIS_USED_LOCK(str)\n\nChecks whether the lock named str is in use (that is, locked). If so,\nit returns the connection identifier of the client that holds the lock.\nOtherwise, it returns NULL.\n","","miscellaneous-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (344,4,"POLYFROMTEXT","PolyFromText(wkt[,srid]) , PolygonFromText(wkt[,srid])\n\nConstructs a POLYGON value using its WKT representation and SRID.\n","","gis-wkt-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (345,10,"DES_ENCRYPT","Syntax:\nDES_ENCRYPT(str[,(key_num|key_str)])\n\nEncrypts the string with the given key using the Triple-DES algorithm.\nOn error, this function returns NULL.\n","key_num des_key_str\n","encryption-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (346,32,"LENGTH","Syntax:\nLENGTH(str)\n\nReturns the length of the string str, measured in bytes. A multi-byte\ncharacter counts as multiple bytes. This means that for a string\ncontaining five two-byte characters, LENGTH() returns 10, whereas\nCHAR_LENGTH() returns 5.\n","mysql> SELECT LENGTH('text');\n -> 4\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (347,27,"STR_TO_DATE","Syntax:\nSTR_TO_DATE(str,format)\n\nThis is the reverse of the DATE_FORMAT() function. It takes a string\nstr and a format string format. STR_TO_DATE() returns a DATETIME value\nif the format string contains both date and time parts, or a DATE or\nTIME value if the string contains only date or time parts.\n\nThe date, time, or datetime values contained in str should be given in\nthe format indicated by format. For the specifiers that can be used in\nformat, see the table in the DATE_FORMAT() function description. All\nother characters are just taken verbatim, thus not being interpreted.\nIf str contains an illegal date, time, or datetime value, STR_TO_DATE()\nreturns NULL. Starting from MySQL 5.0.3, an illegal value also produces\na warning.\n","","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (348,9,"Y","Y(p)\n\nReturns the Y-coordinate value for the point p as a double-precision\nnumber.\n","mysql> SELECT Y(GeomFromText('Point(56.7 53.34)'));\n+--------------------------------------+\n| Y(GeomFromText('Point(56.7 53.34)')) |\n+--------------------------------------+\n| 53.34 |\n+--------------------------------------+\n","point-property-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (349,23,"CHECKSUM TABLE","Syntax:\nCHECKSUM TABLE tbl_name [, tbl_name] ... [ QUICK | EXTENDED ]\n\nReports a table checksum.\n\nIf QUICK is specified, the live table checksum is reported if it is\navailable, or NULL otherwise. This is very fast. A live checksum is\nenabled by specifying the CHECKSUM=1 table option, currently supported\nonly for MyISAM tables. See [create-table].\n\nIn EXTENDED mode the whole table is read row by row and the checksum is\ncalculated. This can be very slow for large tables.\n\nBy default, if neither QUICK nor EXTENDED is specified, MySQL returns a\nlive checksum if the table storage engine supports it and scans the\ntable otherwise.\n\nCHECKSUM TABLE returns NULL for non-existent tables. As of MySQL 5.0.3,\na warning is generated for this condition.\n","","checksum-table");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (350,2,"NUMINTERIORRINGS","NumInteriorRings(poly)\n\nReturns the number of interior rings in the Polygon value poly.\n","mysql> SET @poly =\n -> 'Polygon((0 0,0 3,3 3,3 0,0 0),(1 1,1 2,2 2,2 1,1 1))';\nmysql> SELECT NumInteriorRings(GeomFromText(@poly));\n+---------------------------------------+\n| NumInteriorRings(GeomFromText(@poly)) |\n+---------------------------------------+\n| 1 |\n+---------------------------------------+\n","polygon-property-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (351,2,"INTERIORRINGN","InteriorRingN(poly,n)\n\nReturns the n-th interior ring for the Polygon value poly as a\nLineString. Ring numbers begin at 1.\n","mysql> SET @poly =\n -> 'Polygon((0 0,0 3,3 3,3 0,0 0),(1 1,1 2,2 2,2 1,1 1))';\nmysql> SELECT AsText(InteriorRingN(GeomFromText(@poly),1));\n+----------------------------------------------+\n| AsText(InteriorRingN(GeomFromText(@poly),1)) |\n+----------------------------------------------+\n| LINESTRING(1 1,1 2,2 2,2 1,1 1) |\n+----------------------------------------------+\n","polygon-property-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (352,27,"UTC_TIME","Syntax:\nUTC_TIME, UTC_TIME()\n\nReturns the current UTC time as a value in 'HH:MM:SS' or HHMMSS format,\ndepending on whether the function is used in a string or numeric\ncontext.\n","mysql> SELECT UTC_TIME(), UTC_TIME() + 0;\n -> '18:07:53', 180753\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (353,33,"DROP FUNCTION","Syntax:\nDROP FUNCTION function_name\n\nThis statement drops the user-defined function (UDF) named\nfunction_name.\n\nTo drop a function, you must have the DELETE privilege for the mysql\ndatabase. This is because DROP FUNCTION removes a row from the\nmysql.func system table that records the function's name, type, and\nshared library name.\n","","drop-function");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (354,14,"STDDEV","Syntax:\nSTD(expr) STDDEV(expr)\n\nReturns the population standard deviation of expr. This is an extension\nto standard SQL. The STDDEV() form of this function is provided for\ncompatibility with Oracle. As of MySQL 5.0.3, the standard SQL function\nSTDDEV_POP() can be used instead.\n\nThese functions return NULL if there were no matching rows.\n","","group-by-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (355,27,"PERIOD_ADD","Syntax:\nPERIOD_ADD(P,N)\n\nAdds N months to period P (in the format YYMM or YYYYMM). Returns a\nvalue in the format YYYYMM. Note that the period argument P is not a\ndate value.\n","mysql> SELECT PERIOD_ADD(9801,2);\n -> 199803\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (356,18,"|","Syntax:\n|\n\nBitwise OR:\n","mysql> SELECT 29 | 15;\n -> 31\n","bit-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (357,4,"GEOMFROMTEXT","GeomFromText(wkt[,srid]) , GeometryFromText(wkt[,srid])\n\nConstructs a geometry value of any type using its WKT representation\nand SRID.\n","","gis-wkt-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (358,32,"RIGHT","Syntax:\nRIGHT(str,len)\n\nReturns the rightmost len characters from the string str.\n","mysql> SELECT RIGHT('foobarbar', 4);\n -> 'rbar'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (359,27,"DATEDIFF","Syntax:\nDATEDIFF(expr,expr2)\n\nDATEDIFF() returns the number of days between the start date expr and\nthe end date expr2. expr and expr2 are date or date-and-time\nexpressions. Only the date parts of the values are used in the\ncalculation.\n","mysql> SELECT DATEDIFF('1997-12-31 23:59:59','1997-12-30');\n -> 1\nmysql> SELECT DATEDIFF('1997-11-30 23:59:59','1997-12-31');\n -> -31\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (360,34,"DROP PROCEDURE","Syntax:\nDROP {PROCEDURE | FUNCTION} [IF EXISTS] sp_name\n\nThis statement is used to drop a stored procedure or function. That is,\nthe specified routine is removed from the server. You must have the\nALTER ROUTINE privilege for the routine as of MySQL 5.0.3. This\nprivilege is granted automatically to the routine creator.\n\nThe IF EXISTS clause is a MySQL extension. It prevents an error from\noccurring if the procedure or function does not exist. A warning is\nproduced that can be viewed with SHOW WARNINGS.\n","","drop-procedure");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (361,23,"CHECK TABLE","Syntax:\nCHECK TABLE tbl_name [, tbl_name] ... [option] ...\n\noption = {QUICK | FAST | MEDIUM | EXTENDED | CHANGED}\n\nChecks a table or tables for errors. CHECK TABLE works for MyISAM and\nInnoDB tables. For MyISAM tables, the key statistics are updated.\n\nAs of MySQL 5.0.2, CHECK TABLE can also check views for problems, such\nas tables that are referenced in the view definition that no longer\nexist.\n","","check-table");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (362,32,"BIN","Syntax:\nBIN(N)\n\nReturns a string representation of the binary value of N, where N is a\nlonglong (BIGINT) number. This is equivalent to CONV(N,10,2). Returns\nNULL if N is NULL.\n","mysql> SELECT BIN(12);\n -> '1100'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (363,7,"CASE FUNCTION","Syntax:\nCASE value WHEN [compare-value] THEN result [WHEN [compare-value] THEN\nresult ...] [ELSE result] END\n\nCASE WHEN [condition] THEN result [WHEN [condition] THEN result ...]\n[ELSE result] END\n\nThe first version returns the result where value=compare-value. The\nsecond version returns the result for the first condition that is true.\nIf there was no matching result value, the result after ELSE is\nreturned, or NULL if there is no ELSE part.\n","mysql> SELECT CASE 1 WHEN 1 THEN 'one'\n -> WHEN 2 THEN 'two' ELSE 'more' END;\n -> 'one'\nmysql> SELECT CASE WHEN 1>0 THEN 'true' ELSE 'false' END;\n -> 'true'\nmysql> SELECT CASE BINARY 'B'\n -> WHEN 'a' THEN 1 WHEN 'b' THEN 2 END;\n -> NULL\n","control-flow-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (364,34,"DECLARE CURSOR","Syntax:\nDECLARE cursor_name CURSOR FOR select_statement\n\nThis statement declares a cursor. Multiple cursors may be defined in a\nroutine, but each cursor in a block must have a unique name.\n\nThe SELECT statement cannot have an INTO clause.\n","","declare-cursors");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (365,21,"MULTILINESTRING","MultiLineString(ls1,ls2,...)\n\nConstructs a WKB MultiLineString value using WKB LineString arguments.\nIf any argument is not a WKB LineString, the return value is NULL.\n","","gis-mysql-specific-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (366,24,"LOAD DATA","Syntax:\nLOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name.txt'\n [REPLACE | IGNORE]\n INTO TABLE tbl_name\n [FIELDS\n [TERMINATED BY 'string']\n [[OPTIONALLY] ENCLOSED BY 'char']\n [ESCAPED BY 'char' ]\n ]\n [LINES\n [STARTING BY 'string']\n [TERMINATED BY 'string']\n ]\n [IGNORE number LINES]\n [(col_name_or_user_var,...)]\n [SET col_name = expr,...)]\n\nThe LOAD DATA INFILE statement reads rows from a text file into a table\nat a very high speed. The filename must be given as a literal string.\n\nFor more information about the efficiency of INSERT versus LOAD DATA\nINFILE and speeding up LOAD DATA INFILE, see [insert-speed].\n\nThe character set indicated by the character_set_database system\nvariable is used to interpret the information in the file. SET NAMES\nand the setting of character_set_client do not affect interpretation of\ninput.\n\nNote that it's currently not possible to load UCS2 data files.\n\nYou can also load data files by using the mysqlimport utility; it\noperates by sending a LOAD DATA INFILE statement to the server. The\n--local option causes mysqlimport to read data files from the client\nhost. You can specify the --compress option to get better performance\nover slow networks if the client and server support the compressed\nprotocol. See [mysqlimport].\n\nIf you use LOW_PRIORITY, execution of the LOAD DATA statement is\ndelayed until no other clients are reading from the table.\n\nIf you specify CONCURRENT with a MyISAM table that satisfies the\ncondition for concurrent inserts (that is, it contains no free blocks\nin the middle), then other threads can retrieve data from the table\nwhile LOAD DATA is executing. Using this option affects the performance\nof LOAD DATA a bit, even if no other thread is using the table at the\nsame time.\n\nIf LOCAL is specified, it is interpreted with respect to the client end\nof the connection:\n\no If LOCAL is specified, the file is read by the client program on the\n client host and sent to the server. The file can be given as a full\n pathname to specify its exact location. If given as a relative\n pathname, the name is interpreted relative to the directory in which\n the client program was started.\n\no If LOCAL is not specified, the file must be located on the server\n host and is read directly by the server.\n\nWhen locating files on the server host, the server uses the following\nrules:\n\no If an absolute pathname is given, the server uses the pathname as is.\n\no If a relative pathname with one or more leading components is given,\n the server searches for the file relative to the server's data\n directory.\n\no If a filename with no leading components is given, the server looks\n for the file in the database directory of the default database.\n\nNote that these rules mean that a file named as ./myfile.txt is read\nfrom the server's data directory, whereas the same file named as\nmyfile.txt is read from the database directory of the default database.\nFor example, the following LOAD DATA statement reads the file data.txt\nfrom the database directory for db1 because db1 is the current\ndatabase, even though the statement explicitly loads the file into a\ntable in the db2 database:\n\nmysql> USE db1;\nmysql> LOAD DATA INFILE 'data.txt' INTO TABLE db2.my_table;\n\nNote that Windows pathnames are specified using forward slashes rather\nthan backslashes. If you do use backslashes, you must double them.\n\nFor security reasons, when reading text files located on the server,\nthe files must either reside in the database directory or be readable\nby all. Also, to use LOAD DATA INFILE on server files, you must have\nthe FILE privilege.\n","","load-data");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (367,27,"LOCALTIME","Syntax:\nLOCALTIME, LOCALTIME()\n\nLOCALTIME and LOCALTIME() are synonyms for NOW().\n","","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (368,4,"MPOINTFROMTEXT","MPointFromText(wkt[,srid]) , MultiPointFromText(wkt[,srid])\n\nConstructs a MULTIPOINT value using its WKT representation and SRID.\n","","gis-wkt-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (369,19,"BLOB","BLOB[(M)]\n\nA BLOB column with a maximum length of 65,535 (216 - 1) bytes.\n\nAn optional length M can be given for this type. If this is done, then\nMySQL will create the column as the smallest BLOB type large enough to\nhold values of M bytes.\n","","string-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (370,10,"PASSWORD","Syntax:\nPASSWORD(str)\n\nCalculates and returns a password string from the plaintext password\nstr, or NULL if the argument was NULL. This is the function that is\nused for encrypting MySQL passwords for storage in the Password column\nof the user grant table.\n","mysql> SELECT PASSWORD('badpwd');\n -> '*AAB3E285149C0135D51A520E1940DD3263DC008C'\n","encryption-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (371,19,"CHAR","[NATIONAL] CHAR(M) [BINARY | ASCII | UNICODE]\n\nA fixed-length string that is always right-padded with spaces to the\nspecified length when stored. M represents the column length. The range\nof M is 0 to 255 characters.\n\nNote: Trailing spaces are removed when CHAR values are retrieved.\n\nBefore MySQL 5.0.3, a CHAR column with a length specification greater\nthan 255 is converted to the smallest TEXT type that can hold values of\nthe given length. For example, CHAR(500) is converted to TEXT, and\nCHAR(200000) is converted to MEDIUMTEXT. This is a compatibility\nfeature. However, this conversion causes the column to become a\nvariable-length column, and also affects trailing-space removal.\n\nIn MySQL 5.0.3 and later, if you attempt to set the length of a CHAR\ngreater than 255, the CREATE TABLE or ALTER TABLE statement in which\nthis is done fails with an error:\n\nmysql> CREATE TABLE c1 (col1 INT, col2 CHAR(500));\nERROR 1074 (42000): Column length too big for column 'col' (max = 255); use BLOB or TEXT instead\nmysql> SHOW CREATE TABLE c1;\nERROR 1146 (42S02): Table 'test.c1' doesn't exist\n","","string-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (372,27,"UTC_DATE","Syntax:\nUTC_DATE, UTC_DATE()\n\nReturns the current UTC date as a value in 'YYYY-MM-DD' or YYYYMMDD\nformat, depending on whether the function is used in a string or\nnumeric context.\n","mysql> SELECT UTC_DATE(), UTC_DATE() + 0;\n -> '2003-08-14', 20030814\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (373,31,"DIMENSION","Dimension(g)\n\nReturns the inherent dimension of the geometry value g. The result can\nbe −1, 0, 1, or 2. (The meaning of these values is given in\n[gis-class-geometry].)\n","mysql> SELECT Dimension(GeomFromText('LineString(1 1,2 2)'));\n+------------------------------------------------+\n| Dimension(GeomFromText('LineString(1 1,2 2)')) |\n+------------------------------------------------+\n| 1 |\n+------------------------------------------------+\n","general-geometry-property-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (374,14,"COUNT DISTINCT","Syntax:\nCOUNT(DISTINCT expr,[expr...])\n\nReturns a count of the number of different non-NULL values.\n\nCOUNT(DISTINCT) returns 0 if there were no matching rows.\n","mysql> SELECT COUNT(DISTINCT results) FROM student;\n","group-by-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (375,19,"BIT","BIT[(M)]\n\nA bit-field type. M indicates the number of bits per value, from 1 to\n64. The default is 1 if M is omitted.\n\nThis data type was added in MySQL 5.0.3 for MyISAM, and extended in\n5.0.5 to MEMORY, InnoDB, and BDB. Before 5.0.3, BIT is a synonym for\nTINYINT(1).\n","","numeric-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (376,25,"EQUALS","Equals(g1,g2)\n\nReturns 1 or 0 to indicate whether or not g1 is spatially equal to g2.\n","","functions-that-test-spatial-relationships-between-geometries");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (377,35,"SHOW CREATE VIEW","Syntax:\nSHOW CREATE VIEW view_name\n\nThis statement shows a CREATE VIEW statement that creates the given\nview.\n","","show-create-view");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (378,17,"INTERVAL","Syntax:\nINTERVAL(N,N1,N2,N3,...)\n\nReturns 0 if N < N1, 1 if N < N2 and so on or -1 if N is NULL. All\narguments are treated as integers. It is required that N1 < N2 < N3 <\n... < Nn for this function to work correctly. This is because a binary\nsearch is used (very fast).\n","mysql> SELECT INTERVAL(23, 1, 15, 17, 30, 44, 200);\n -> 3\nmysql> SELECT INTERVAL(10, 1, 10, 100, 1000);\n -> 2\nmysql> SELECT INTERVAL(22, 23, 30, 44, 200);\n -> 0\n","comparison-operators");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (379,27,"FROM_DAYS","Syntax:\nFROM_DAYS(N)\n\nGiven a daynumber N, returns a DATE value.\n","mysql> SELECT FROM_DAYS(729669);\n -> '1997-10-07'\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (380,34,"ALTER PROCEDURE","Syntax:\nALTER {PROCEDURE | FUNCTION} sp_name [characteristic ...]\n\ncharacteristic:\n { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }\n | SQL SECURITY { DEFINER | INVOKER }\n | COMMENT 'string'\n\nThis statement can be used to change the characteristics of a stored\nprocedure or function. You must have the ALTER ROUTINE privilege for\nthe routine as of MySQL 5.0.3. This privilege is granted automatically\nto the routine creator. If binary logging is enabled, you may also need\nthe SUPER privilege, as described in [stored-procedure-logging].\n\nMore than one change may be specified in an ALTER PROCEDURE or ALTER\nFUNCTION statement.\n","","alter-procedure");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (381,18,"BIT_COUNT","Syntax:\nBIT_COUNT(N)\n\nReturns the number of bits that are set in the argument N.\n","mysql> SELECT BIT_COUNT(29);\n -> 4\n","bit-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (382,27,"UTC_TIMESTAMP","Syntax:\nUTC_TIMESTAMP, UTC_TIMESTAMP()\n\nReturns the current UTC date and time as a value in 'YYYY-MM-DD\nHH:MM:SS' or YYYYMMDDHHMMSS format, depending on whether the function\nis used in a string or numeric context.\n","mysql> SELECT UTC_TIMESTAMP(), UTC_TIMESTAMP() + 0;\n -> '2003-08-14 18:08:04', 20030814180804\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (383,5,"+","Syntax:\n+\n\nAddition:\n","mysql> SELECT 3+5;\n -> 8\n","arithmetic-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (384,13,"INET_NTOA","Syntax:\nINET_NTOA(expr)\n\nGiven a numeric network address (4 or 8 byte), returns the dotted-quad\nrepresentation of the address as a string.\n","mysql> SELECT INET_NTOA(3520061480);\n -> '209.207.224.40'\n","miscellaneous-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (385,5,"ACOS","Syntax:\nACOS(X)\n\nReturns the arc cosine of X, that is, the value whose cosine is X.\nReturns NULL if X is not in the range -1 to 1.\n","mysql> SELECT ACOS(1);\n -> 0\nmysql> SELECT ACOS(1.0001);\n -> NULL\nmysql> SELECT ACOS(0);\n -> 1.5707963267949\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (386,8,"ISOLATION","Syntax:\nSET [GLOBAL | SESSION] TRANSACTION ISOLATION LEVEL\n{ READ UNCOMMITTED | READ COMMITTED | REPEATABLE READ | SERIALIZABLE }\n\nThis statement sets the transaction isolation level for the next\ntransaction, globally, or for the current session.\n\nThe default behavior of SET TRANSACTION is to set the isolation level\nfor the next (not yet started) transaction. If you use the GLOBAL\nkeyword, the statement sets the default transaction level globally for\nall new connections created from that point on. Existing connections\nare unaffected. You need the SUPER privilege to do this. Using the\nSESSION keyword sets the default transaction level for all future\ntransactions performed on the current connection.\n\nFor descriptions of each InnoDB transaction isolation level, see\n[innodb-transaction-isolation]. InnoDB supports each of these levels in\nMySQL 5.0. The default level is REPEATABLE READ.\n\nYou can set the initial default global isolation level for mysqld with\nthe --transaction-isolation option. See [server-options].\n","","set-transaction");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (387,5,"CEILING","Syntax:\nCEILING(X), CEIL(X)\n\nReturns the smallest integer value not less than X.\n","mysql> SELECT CEILING(1.23);\n -> 2\nmysql> SELECT CEIL(-1.23);\n -> -1\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (388,5,"SIN","Syntax:\nSIN(X)\n\nReturns the sine of X, where X is given in radians.\n","mysql> SELECT SIN(PI());\n -> 1.2246063538224e-16\nmysql> SELECT ROUND(SIN(PI()));\n -> 0\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (389,27,"DAYOFWEEK","Syntax:\nDAYOFWEEK(date)\n\nReturns the weekday index for date (1 = Sunday, 2 = Monday, ..., 7 =\nSaturday). These index values correspond to the ODBC standard.\n","mysql> SELECT DAYOFWEEK('1998-02-03');\n -> 3\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (390,28,"LINEFROMWKB","LineFromWKB(wkb[,srid]) , LineStringFromWKB(wkb[,srid])\n\nConstructs a LINESTRING value using its WKB representation and SRID.\n","","gis-wkb-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (391,24,"SHOW PROCESSLIST","Syntax:\nSHOW [FULL] PROCESSLIST\n\nSHOW PROCESSLIST shows you which threads are running. You can also get\nthis information using the mysqladmin processlist statement. If you\nhave the SUPER privilege, you can see all threads. Otherwise, you can\nsee only your own threads (that is, threads associated with the MySQL\naccount that you are using). See [kill]. If you do not use the FULL\nkeyword, only the first 100 characters of each query are shown.\n","","show-processlist");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (392,31,"GEOMETRYTYPE","GeometryType(g)\n\nReturns as a string the name of the geometry type of which the geometry\ninstance g is a member. The name corresponds to one of the instantiable\nGeometry subclasses.\n","mysql> SELECT GeometryType(GeomFromText('POINT(1 1)'));\n+------------------------------------------+\n| GeometryType(GeomFromText('POINT(1 1)')) |\n+------------------------------------------+\n| POINT |\n+------------------------------------------+\n","general-geometry-property-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (393,35,"CREATE VIEW","Syntax:\nCREATE\n [OR REPLACE]\n [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]\n [DEFINER = { user | CURRENT_USER }]\n [SQL SECURITY { DEFINER | INVOKER }]\n VIEW view_name [(column_list)]\n AS select_statement\n [WITH [CASCADED | LOCAL] CHECK OPTION]\n\nThis statement creates a new view, or replaces an existing one if the\nOR REPLACE clause is given. The select_statement is a SELECT statement\nthat provides the definition of the view. The statement can select from\nbase tables or other views.\n\nThis statement requires the CREATE VIEW privilege for the view, and\nsome privilege for each column selected by the SELECT statement. For\ncolumns used elsewhere in the SELECT statement you must have the SELECT\nprivilege. If the OR REPLACE clause is present, you must also have the\nDROP privilege for the view.\n\nA view belongs to a database. By default, a new view is created in the\ncurrent database. To create the view explicitly in a given database,\nspecify the name as db_name.view_name when you create it.\n\nmysql> CREATE VIEW test.v AS SELECT * FROM t;\n\nTables and views share the same namespace within a database, so a\ndatabase cannot contain a table and a view that have the same name.\n\nViews must have unique column names with no duplicates, just like base\ntables. By default, the names of the columns retrieved by the SELECT\nstatement are used for the view column names. To define explicit names\nfor the view columns, the optional column_list clause can be given as a\nlist of comma-separated identifiers. The number of names in column_list\nmust be the same as the number of columns retrieved by the SELECT\nstatement.\n\nColumns retrieved by the SELECT statement can be simple references to\ntable columns. They can also be expressions that use functions,\nconstant values, operators, and so forth.\n\nUnqualified table or view names in the SELECT statement are interpreted\nwith respect to the default database. A view can refer to tables or\nviews in other databases by qualifying the table or view name with the\nproper database name.\n\nA view can be created from many kinds of SELECT statements. It can\nrefer to base tables or other views. It can use joins, UNION, and\nsubqueries. The SELECT need not even refer to any tables. The following\nexample defines a view that selects two columns from another table, as\nwell as an expression calculated from those columns:\n\nmysql> CREATE TABLE t (qty INT, price INT);\nmysql> INSERT INTO t VALUES(3, 50);\nmysql> CREATE VIEW v AS SELECT qty, price, qty*price AS value FROM t;\nmysql> SELECT * FROM v;\n+------+-------+-------+\n| qty | price | value |\n+------+-------+-------+\n| 3 | 50 | 150 |\n+------+-------+-------+\n\nA view definition is subject to the following restrictions:\n\no The SELECT statement cannot contain a subquery in the FROM clause.\n\no The SELECT statement cannot refer to system or user variables.\n\no The SELECT statement cannot refer to prepared statement parameters.\n\no Within a stored routine, the definition cannot refer to routine\n parameters or local variables.\n\no Any table or view referred to in the definition must exist. However,\n after a view has been created, it is possible to drop a table or view\n that the definition refers to. To check a view definition for\n problems of this kind, use the CHECK TABLE statement.\n\no The definition cannot refer to a TEMPORARY table, and you cannot\n create a TEMPORARY view.\n\no The tables named in the view definition must already exist.\n\no You cannot associate a trigger with a view.\n\nORDER BY is allowed in a view definition, but it is ignored if you\nselect from a view using a statement that has its own ORDER BY.\n\nFor other options or clauses in the definition, they are added to the\noptions or clauses of the statement that references the view, but the\neffect is undefined. For example, if a view definition includes a LIMIT\nclause, and you select from the view using a statement that has its own\nLIMIT clause, it is undefined which limit applies. This same principle\napplies to options such as ALL, DISTINCT, or SQL_SMALL_RESULT that\nfollow the SELECT keyword, and to clauses such as INTO, FOR UPDATE,\nLOCK IN SHARE MODE, and PROCEDURE.\n\nIf you create a view and then change the query processing environment\nby changing system variables, that may affect the results you get from\nthe view:\n\nmysql> CREATE VIEW v AS SELECT CHARSET(CHAR(65)), COLLATION(CHAR(65));\nQuery OK, 0 rows affected (0.00 sec)\n\nmysql> SET NAMES 'latin1';\nQuery OK, 0 rows affected (0.00 sec)\n\nmysql> SELECT * FROM v;\n+-------------------+---------------------+\n| CHARSET(CHAR(65)) | COLLATION(CHAR(65)) |\n+-------------------+---------------------+\n| latin1 | latin1_swedish_ci |\n+-------------------+---------------------+\n1 row in set (0.00 sec)\n\nmysql> SET NAMES 'utf8';\nQuery OK, 0 rows affected (0.00 sec)\n\nmysql> SELECT * FROM v;\n+-------------------+---------------------+\n| CHARSET(CHAR(65)) | COLLATION(CHAR(65)) |\n+-------------------+---------------------+\n| utf8 | utf8_general_ci |\n+-------------------+---------------------+\n1 row in set (0.00 sec)\n\nThe DEFINER and SQL SECURITY clauses specify the security context to be\nused when checking access privileges at view invocation time. They were\naddded in MySQL 5.0.13, but have no effect until MySQL 5.0.16.\n\nCURRENT_USER also can be given as CURRENT_USER().\n\nWithin a stored routine that is defined with the SQL SECURITY DEFINER\ncharacteristic, CURRENT_USER returns the routine creator. This also\naffects a view defined within such a routine, if the view definition\ncontains a DEFINER value of CURRENT_USER.\n\nThe default DEFINER value is the the user who executes the CREATE VIEW\nstatement. (This is the same as DEFINER = CURRENT_USER.) If a user\nvalue is given, it should be a MySQL account in 'user_name'@'host_name'\nformat (the same format as for the GRANT statement). The user_name and\nhost_name values both are required.\n\nIf you specify the DEFINER clause, you cannot set the value to any user\nbut your own unless you have the SUPER privilege. These rules determine\nthe legal DEFINER user values:\n\no If you do not have the SUPER privilege, the only legal user value is\n your own account, either specified literally or by using\n CURRENT_USER. You cannot set the definer to some other account.\n\no If you have the SUPER privilege, you can specify any syntactically\n legal account name. If the account does not actually exist, a warning\n is generated.\n\nThe SQL SECURITY characteristic determines which account to use when\nchecking access privileges for the view when the view is executed. The\nlegal characteristic values are DEFINER and INVOKER. These indicate\nthat the view must be executable by the user who defined it or invoked\nit, respectively. The default SQL SECURITY value is DEFINER.\n\nAs of MySQL 5.0.16, view privileges are checked like this:\n\no At view definition time, the view creator must have the privileges\n needed to use the top-level objects accessed by the view. For\n example, if the view definition refers to a stored function, only the\n privileges needed to invoke the function can be checked. The\n privileges required when the function runs can be checked only as it\n executes: For different invocations of the function, different\n execution paths within the function might be taken.\n\no At view execution time, privileges for objects accessed by the view\n are checked against the privileges held by the view creator or\n invoker, depending on whether the SQL SECURITY characteristic is\n DEFINER or INVOKER, respectively.\n\no If view execution causes execution of a stored function, privilege\n checking for statements executed within the function depend on\n whether the function is defined with a SQL SECURITY characteristic of\n DEFINER or INVOKER. If the security characteristic is DEFINER,\n privileges within the function runs with the privileges of its\n creator. If the characteristic is INVOKER, the function runs with the\n privileges determined by the view's SQL SECURITY characteristic.\n\nPrior to MySQL 5.0.16 (before the DEFINE and SQL SECURITY clauses were\nimplemented), privileges required for objects used in a view are\nchecked at view creation time.\n\nExample: A view might depend on a stored function, and that function\nmight invoke other stored routines. For example, the following view\ninvokes a stored function f():\n\nCREATE VIEW v AS SELECT * FROM t WHERE t.id = f(t.name);\n\nSuppose that f() contains a statement such as this:\n\nIF name IS NULL then\n CALL p1();\nELSE\n CALL p2();\nEND IF;\n\nThe privileges required for executing statements within f() need to be\nchecked when f() executes. This might mean that privileges are needed\nfor p1() or p2(), depending on the execution path within f(). Those\nprivileges need to be checked at runtime, and the user who must possess\nthe privileges is determined by the SQL SECURITY values of the function\nf() and the view v.\n\nThe DEFINER and SQL SECURITY clauses for views are extensions to\nstandard SQL. In standard SQL, views are handled using the rules for\nSQL SECURITY INVOKER.\n\nIf you invoke a view that was created before MySQL 5.0.13, it is\ntreated as though it was created with a SQL SECURITY INVOKER clause and\nwith a DEFINER value that is the same as your account. However, because\nthe actual definer is unknown, MySQL issues a warning. To make the\nwarning go away, it is sufficient to recreate the view so that the view\ndefinition includes a DEFINER clause.\n\nThe optional ALGORITHM clause is a MySQL extension to standard SQL.\nALGORITHM takes three values: MERGE, TEMPTABLE, or UNDEFINED. The\ndefault algorithm is UNDEFINED if no ALGORITHM clause is present. The\nalgorithm affects how MySQL processes the view.\n\nFor MERGE, the text of a statement that refers to the view and the view\ndefinition are merged such that parts of the view definition replace\ncorresponding parts of the statement.\n\nFor TEMPTABLE, the results from the view are retrieved into a temporary\ntable, which then is used to execute the statement.\n\nFor UNDEFINED, MySQL chooses which algorithm to use. It prefers MERGE\nover TEMPTABLE if possible, because MERGE is usually more efficient and\nbecause a view cannot be updatable if a temporary table is used.\n\nA reason to choose TEMPTABLE explicitly is that locks can be released\non underlying tables after the temporary table has been created and\nbefore it is used to finish processing the statement. This might result\nin quicker lock release than the MERGE algorithm so that other clients\nthat use the view are not blocked as long.\n\nA view algorithm can be UNDEFINED three ways:\n\no No ALGORITHM clause is present in the CREATE VIEW statement.\n\no The CREATE VIEW statement has an explicit ALGORITHM = UNDEFINED\n clause.\n\no ALGORITHM = MERGE is specified for a view that can be processed only\n with a temporary table. In this case, MySQL generates a warning and\n sets the algorithm to UNDEFINED.\n\nAs mentioned earlier, MERGE is handled by merging corresponding parts\nof a view definition into the statement that refers to the view. The\nfollowing examples briefly illustrate how the MERGE algorithm works.\nThe examples assume that there is a view v_merge that has this\ndefinition:\n\nCREATE ALGORITHM = MERGE VIEW v_merge (vc1, vc2) AS\nSELECT c1, c2 FROM t WHERE c3 > 100;\n\nExample 1: Suppose that we issue this statement:\n\nSELECT * FROM v_merge;\n\nMySQL handles the statement as follows:\n\no v_merge becomes t\n\no * becomes vc1, vc2, which corresponds to c1, c2\n\no The view WHERE clause is added\n\nThe resulting statement to be executed becomes:\n\nSELECT c1, c2 FROM t WHERE c3 > 100;\n\nExample 2: Suppose that we issue this statement:\n\nSELECT * FROM v_merge WHERE vc1 < 100;\n\nThis statement is handled similarly to the previous one, except that\nvc1 < 100 becomes c1 < 100 and the view WHERE clause is added to the\nstatement WHERE clause using an AND connective (and parentheses are\nadded to make sure the parts of the clause are executed with correct\nprecedence). The resulting statement to be executed becomes:\n\nSELECT c1, c2 FROM t WHERE (c3 > 100) AND (c1 < 100);\n\nEffectively, the statement to be executed has a WHERE clause of this\nform:\n\nWHERE (select WHERE) AND (view WHERE)\n\nThe MERGE algorithm requires a one-to relationship between the rows in\nthe view and the rows in the underlying table. If this relationship\ndoes not hold, a temporary table must be used instead. Lack of a\none-to-one relationship occurs if the view contains any of a number of\nconstructs:\n\no Aggregate functions (SUM(), MIN(), MAX(), COUNT(), and so forth)\n\no DISTINCT\n\no GROUP BY\n\no HAVING\n\no UNION or UNION ALL\n\no Refers only to literal values (in this case, there is no underlying\n table)\n\nSome views are updatable. That is, you can use them in statements such\nas UPDATE, DELETE, or INSERT to update the contents of the underlying\ntable. For a view to be updatable, there must be a one-to relationship\nbetween the rows in the view and the rows in the underlying table.\nThere are also certain other constructs that make a view non-updatable.\nTo be more specific, a view is not updatable if it contains any of the\nfollowing:\n\no Aggregate functions (SUM(), MIN(), MAX(), COUNT(), and so forth)\n\no DISTINCT\n\no GROUP BY\n\no HAVING\n\no UNION or UNION ALL\n\no Subquery in the select list\n\no Join\n\no Non-updatable view in the FROM clause\n\no A subquery in the WHERE clause that refers to a table in the FROM\n clause\n\no Refers only to literal values (in this case, there is no underlying\n table to update)\n\no ALGORITHM = TEMPTABLE (use of a temporary table always makes a view\n non-updatable)\n\nWith respect to insertability (being updatable with INSERT statements),\nan updatable view is insertable if it also satisfies these additional\nrequirements for the view columns:\n\no There must be no duplicate view column names.\n\no The view must contain all columns in the base table that do not have\n a default value.\n\no The view columns must be simple column references and not derived\n columns. A derived column is one that is not a simple column\n reference but is derived from an expression. These are examples of\n derived columns:\n\n3.14159\ncol1 + 3\nUPPER(col2)\ncol3 / col4\n(subquery)\n\nA view that has a mix of simple column references and derived columns\nis not insertable, but it can be updatable if you update only those\ncolumns that are not derived. Consider this view:\n\nCREATE VIEW v AS SELECT col1, 1 AS col2 FROM t;\n\nThis view is not insertable because col2 is derived from an expression.\nBut it is updatable if the update does not try to update col2. This\nupdate is allowable:\n\nUPDATE v SET col1 = 0;\n\nThis update is not allowable because it attempts to update a derived\ncolumn:\n\nUPDATE v SET col2 = 0;\n\nIt is sometimes possible for a multiple-table view to be updatable,\nassuming that it can be processed with the MERGE algorithm. For this to\nwork, the view must use an inner join (not an outer join or a UNION).\nAlso, only a single table in the view definition can be updated, so the\nSET clause must name only columns from one of the tables in the view.\nViews that use UNION ALL are disallowed even though they might be\ntheoretically updatable, because the implementation uses temporary\ntables to process them.\n\nFor a multiple-table updatable view, INSERT can work if it inserts into\na single table. DELETE is not supported.\n\nThe WITH CHECK OPTION clause can be given for an updatable view to\nprevent inserts or updates to rows except those for which the WHERE\nclause in the select_statement is true.\n","","create-view");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (394,32,"TRIM","Syntax:\nTRIM([{BOTH | LEADING | TRAILING} [remstr] FROM] str), TRIM(remstr\nFROM] str)\n\nReturns the string str with all remstr prefixes and/or suffixes\nremoved. If none of the specifiers BOTH, LEADING, or TRAILING is given,\nBOTH is assumed. remstr is optional and, if not specified, spaces are\nremoved.\n","mysql> SELECT TRIM(' bar ');\n -> 'bar'\nmysql> SELECT TRIM(LEADING 'x' FROM 'xxxbarxxx');\n -> 'barxxx'\nmysql> SELECT TRIM(BOTH 'x' FROM 'xxxbarxxx');\n -> 'bar'\nmysql> SELECT TRIM(TRAILING 'xyz' FROM 'barxxyz');\n -> 'barx'\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (395,17,"IS","Syntax:\nIS boolean_value, IS NOT boolean_value\n\nTests a value against a boolean value, where boolean_value can be TRUE,\nFALSE, or UNKNOWN.\n","mysql> SELECT 1 IS TRUE, 0 IS FALSE, NULL IS UNKNOWN;\n -> 1, 1, 1\nmysql> SELECT 1 IS NOT UNKNOWN, 0 IS NOT UNKNOWN, NULL IS NOT UNKNOWN;\n -> 1, 1, 0\n","comparison-operators");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (396,27,"GET_FORMAT","Syntax:\nGET_FORMAT(DATE|TIME|DATETIME, 'EUR'|'USA'|'JIS'|'ISO'|'INTERNAL')\n\nReturns a format string. This function is useful in combination with\nthe DATE_FORMAT() and the STR_TO_DATE() functions.\n","mysql> SELECT DATE_FORMAT('2003-10-03',GET_FORMAT(DATE,'EUR'));\n -> '03.10.2003'\nmysql> SELECT STR_TO_DATE('10.31.2003',GET_FORMAT(DATE,'USA'));\n -> '2003-10-31'\n \nFollowing is commented out because not yet implemented:\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (397,19,"TINYBLOB","TINYBLOB\n\nA BLOB column with a maximum length of 255 (28 - 1) bytes.\n","","string-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (398,8,"SAVEPOINT","Syntax:\nSAVEPOINT identifier\nROLLBACK [WORK] TO SAVEPOINT identifier\nRELEASE SAVEPOINT identifier\n\nInnoDB supports the SQL statements SAVEPOINT and ROLLBACK TO SAVEPOINT.\nStarting from MySQL 5.0.3, RELEASE SAVEPOINT and the optional WORK\nkeyword for ROLLBACK are supported as well.\n","","savepoints");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (399,15,"USER","Syntax:\nUSER()\n\nReturns the current MySQL username and hostname.\n","mysql> SELECT USER();\n -> 'davida@localhost'\n","information-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (400,28,"MPOINTFROMWKB","MPointFromWKB(wkb[,srid]) , MultiPointFromWKB(wkb[,srid])\n\nConstructs a MULTIPOINT value using its WKB representation and SRID.\n","","gis-wkb-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (401,35,"ALTER TABLE","Syntax:\nALTER [IGNORE] TABLE tbl_name\n alter_specification [, alter_specification] ...\n\nalter_specification:\n ADD [COLUMN] column_definition [FIRST | AFTER col_name ]\n | ADD [COLUMN] (column_definition,...)\n | ADD INDEX [index_name] [index_type] (index_col_name,...)\n | ADD [CONSTRAINT [symbol]]\n PRIMARY KEY [index_type] (index_col_name,...)\n | ADD [CONSTRAINT [symbol]]\n UNIQUE [INDEX] [index_name] [index_type] (index_col_name,...)\n | ADD [FULLTEXT|SPATIAL] [INDEX] [index_name] (index_col_name,...)\n | ADD [CONSTRAINT [symbol]]\n FOREIGN KEY [index_name] (index_col_name,...)\n [reference_definition]\n | ALTER [COLUMN] col_name {SET DEFAULT literal | DROP DEFAULT}\n | CHANGE [COLUMN] old_col_name column_definition\n [FIRST|AFTER col_name]\n | MODIFY [COLUMN] column_definition [FIRST | AFTER col_name]\n | DROP [COLUMN] col_name\n | DROP PRIMARY KEY\n | DROP INDEX index_name\n | DROP FOREIGN KEY fk_symbol\n | DISABLE KEYS\n | ENABLE KEYS\n | RENAME [TO] new_tbl_name\n | ORDER BY col_name\n | CONVERT TO CHARACTER SET charset_name [COLLATE collation_name]\n | [DEFAULT] CHARACTER SET charset_name [COLLATE collation_name]\n | DISCARD TABLESPACE\n | IMPORT TABLESPACE\n | table_options\n\nALTER TABLE allows you to change the structure of an existing table.\nFor example, you can add or delete columns, create or destroy indexes,\nchange the type of existing columns, or rename columns or the table\nitself. You can also change the comment for the table and type of the\ntable.\n","","alter-table");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (402,24,"PURGE MASTER LOGS","Syntax:\nPURGE {MASTER | BINARY} LOGS TO 'log_name'\nPURGE {MASTER | BINARY} LOGS BEFORE 'date'\n\nDeletes all the binary logs listed in the log index prior to the\nspecified log or date. The logs also are removed from the list recorded\nin the log index file, so that the given log becomes the first.\n","PURGE MASTER LOGS TO 'mysql-bin.010';\nPURGE MASTER LOGS BEFORE '2003-04-02 22:46:26';\n","purge-master-logs");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (403,19,"CHAR BYTE","The data type CHAR BYTE is an alias for CHAR BINARY. This is a\ncompatibility feature.\n","","string-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (404,23,"REPAIR TABLE","Syntax:\nREPAIR [LOCAL | NO_WRITE_TO_BINLOG] TABLE\n tbl_name [, tbl_name] ... [QUICK] [EXTENDED] [USE_FRM]\n\nREPAIR TABLE repairs a possibly corrupted table. By default, it has the\nsame effect as myisamchk --recover tbl_name. REPAIR TABLE works on\nMyISAM and on ARCHIVE tables. See [myisam-storage-engine],\n[archive-storage-engine].\n","","repair-table");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (405,35,"MERGE","The MERGE storage engine, also known as the MRG_MyISAM engine, is a\ncollection of identical MyISAM tables that can be used as one.\n\"Identical\" means that all tables have identical column and index\ninformation. You cannot merge tables in which the columns are listed in\na different order, do not have exactly the same columns, or have the\nindexes in different order. However, any or all of the tables can be\ncompressed with myisampack. See [myisampack]. Differences in table\noptions such as AVG_ROW_LENGTH, MAX_ROWS, or PACK_KEYS do not matter.\n","mysql> CREATE TABLE t1 (\n -> a INT NOT NULL AUTO_INCREMENT PRIMARY KEY,\n -> message CHAR(20));\nmysql> CREATE TABLE t2 (\n -> a INT NOT NULL AUTO_INCREMENT PRIMARY KEY,\n -> message CHAR(20));\nmysql> INSERT INTO t1 (message) VALUES ('Testing'),('table'),('t1');\nmysql> INSERT INTO t2 (message) VALUES ('Testing'),('table'),('t2');\nmysql> CREATE TABLE total (\n -> a INT NOT NULL AUTO_INCREMENT,\n -> message CHAR(20), INDEX(a))\n -> ENGINE=MERGE UNION=(t1,t2) INSERT_METHOD=LAST;\n","merge-storage-engine");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (406,35,"CREATE TABLE","Syntax:\nCREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name\n [(create_definition,...)]\n [table_options] [select_statement]\n\nOr:\n\nCREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name\n [(] LIKE old_tbl_name [)];\n\ncreate_definition:\n column_definition\n | [CONSTRAINT [symbol]] PRIMARY KEY [index_type] (index_col_name,...)\n | KEY [index_name] [index_type] (index_col_name,...)\n | INDEX [index_name] [index_type] (index_col_name,...)\n | [CONSTRAINT [symbol]] UNIQUE [INDEX]\n [index_name] [index_type] (index_col_name,...)\n | [FULLTEXT|SPATIAL] [INDEX] [index_name] (index_col_name,...)\n | [CONSTRAINT [symbol]] FOREIGN KEY\n [index_name] (index_col_name,...) [reference_definition]\n | CHECK (expr)\n\ncolumn_definition:\n col_name type [NOT NULL | NULL] [DEFAULT default_value]\n [AUTO_INCREMENT] [UNIQUE [KEY] | [PRIMARY] KEY]\n [COMMENT 'string'] [reference_definition]\n\ntype:\n TINYINT[(length)] [UNSIGNED] [ZEROFILL]\n | SMALLINT[(length)] [UNSIGNED] [ZEROFILL]\n | MEDIUMINT[(length)] [UNSIGNED] [ZEROFILL]\n | INT[(length)] [UNSIGNED] [ZEROFILL]\n | INTEGER[(length)] [UNSIGNED] [ZEROFILL]\n | BIGINT[(length)] [UNSIGNED] [ZEROFILL]\n | REAL[(length,decimals)] [UNSIGNED] [ZEROFILL]\n | DOUBLE[(length,decimals)] [UNSIGNED] [ZEROFILL]\n | FLOAT[(length,decimals)] [UNSIGNED] [ZEROFILL]\n | DECIMAL(length,decimals) [UNSIGNED] [ZEROFILL]\n | NUMERIC(length,decimals) [UNSIGNED] [ZEROFILL]\n | DATE\n | TIME\n | TIMESTAMP\n | DATETIME\n | CHAR(length) [BINARY | ASCII | UNICODE]\n | VARCHAR(length) [BINARY]\n | TINYBLOB\n | BLOB\n | MEDIUMBLOB\n | LONGBLOB\n | TINYTEXT [BINARY]\n | TEXT [BINARY]\n | MEDIUMTEXT [BINARY]\n | LONGTEXT [BINARY]\n | ENUM(value1,value2,value3,...)\n | SET(value1,value2,value3,...)\n | spatial_type\n\nindex_col_name:\n col_name [(length)] [ASC | DESC]\n\nreference_definition:\n REFERENCES tbl_name [(index_col_name,...)]\n [MATCH FULL | MATCH PARTIAL | MATCH SIMPLE]\n [ON DELETE reference_option]\n [ON UPDATE reference_option]\n\nreference_option:\n RESTRICT | CASCADE | SET NULL | NO ACTION\n\ntable_options: table_option [table_option] ...\n\ntable_option:\n {ENGINE|TYPE} = engine_name\n | AUTO_INCREMENT = value\n | AVG_ROW_LENGTH = value\n | [DEFAULT] CHARACTER SET charset_name [COLLATE collation_name]\n | CHECKSUM = {0 | 1}\n | COMMENT = 'string'\n | CONNECTION = 'connect_string'\n | MAX_ROWS = value\n | MIN_ROWS = value\n | PACK_KEYS = {0 | 1 | DEFAULT}\n | PASSWORD = 'string'\n | DELAY_KEY_WRITE = {0 | 1}\n | ROW_FORMAT = {DEFAULT|DYNAMIC|FIXED|COMPRESSED|REDUNDANT|COMPACT}\n | UNION = (tbl_name[,tbl_name]...)\n | INSERT_METHOD = { NO | FIRST | LAST }\n | DATA DIRECTORY = 'absolute path to directory'\n | INDEX DIRECTORY = 'absolute path to directory'\n\nselect_statement:\n [IGNORE | REPLACE] [AS] SELECT ... (Some legal select statement)\n\nCREATE TABLE creates a table with the given name. You must have the\nCREATE privilege for the table.\n\nRules for allowable table names are given in [legal-names]. By default,\nthe table is created in the current database. An error occurs if the\ntable exists, if there is no current database, or if the database does\nnot exist.\n","","create-table");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (407,17,">","Syntax:\n>\n\nGreater than:\n","mysql> SELECT 2 > 2;\n -> 0\n","comparison-operators");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (408,23,"ANALYZE TABLE","Syntax:\nANALYZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE tbl_name [, tbl_name] ...\n\nThis statement analyzes and stores the key distribution for a table.\nDuring the analysis, the table is locked with a read lock. This works\nwith MyISAM, BDB, and InnoDB tables. For MyISAM tables, this statement\nis equivalent to using myisamchk -a.\n\nMySQL uses the stored key distribution to decide the order in which\ntables should be joined when you perform a join on something other than\na constant.\n","","analyze-table");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (409,27,"MICROSECOND","Syntax:\nMICROSECOND(expr)\n\nReturns the microseconds from the time or datetime expression expr as a\nnumber in the range from 0 to 999999.\n","mysql> SELECT MICROSECOND('12:00:00.123456');\n -> 123456\nmysql> SELECT MICROSECOND('1997-12-31 23:59:59.000010');\n -> 10\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (410,35,"CONSTRAINT","InnoDB also supports foreign key constraints. The syntax for a foreign\nkey constraint definition in InnoDB looks like this:\n\n[CONSTRAINT symbol] FOREIGN KEY [id] (index_col_name, ...)\n REFERENCES tbl_name (index_col_name, ...)\n [ON DELETE {RESTRICT | CASCADE | SET NULL | NO ACTION}]\n [ON UPDATE {RESTRICT | CASCADE | SET NULL | NO ACTION}]\n","CREATE TABLE product (category INT NOT NULL, id INT NOT NULL,\n price DECIMAL,\n PRIMARY KEY(category, id)) ENGINE=INNODB;\nCREATE TABLE customer (id INT NOT NULL,\n PRIMARY KEY (id)) ENGINE=INNODB;\nCREATE TABLE product_order (no INT NOT NULL AUTO_INCREMENT,\n product_category INT NOT NULL,\n product_id INT NOT NULL,\n customer_id INT NOT NULL,\n PRIMARY KEY(no),\n INDEX (product_category, product_id),\n FOREIGN KEY (product_category, product_id)\n REFERENCES product(category, id)\n ON UPDATE CASCADE ON DELETE RESTRICT,\n INDEX (customer_id),\n FOREIGN KEY (customer_id)\n REFERENCES customer(id)) ENGINE=INNODB;\n","innodb-foreign-key-constraints");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (411,32,"FIELD","Syntax:\nFIELD(str,str1,str2,str3,...)\n\nReturns the index of str in the str1, str2, str3, ... list. Returns 0\nif str is not found.\n\nIf all arguments to FIELD() are strings, all arguments are compared as\nstrings. If all arguments are numbers, they are compared as numbers.\nOtherwise, the arguments are compared as double.\n\nIf str is NULL, the return value is 0 because NULL fails equality\ncomparison with any value. FIELD() is the complement of ELT().\n","mysql> SELECT FIELD('ej', 'Hej', 'ej', 'Heja', 'hej', 'foo');\n -> 2\nmysql> SELECT FIELD('fo', 'Hej', 'ej', 'Heja', 'hej', 'foo');\n -> 0\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (412,27,"MAKETIME","Syntax:\nMAKETIME(hour,minute,second)\n\nReturns a time value calculated from the hour, minute, and second\narguments.\n","mysql> SELECT MAKETIME(12,15,30);\n -> '12:15:30'\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (413,27,"CURDATE","Syntax:\nCURDATE()\n\nReturns the current date as a value in 'YYYY-MM-DD' or YYYYMMDD format,\ndepending on whether the function is used in a string or numeric\ncontext.\n","mysql> SELECT CURDATE();\n -> '1997-12-15'\nmysql> SELECT CURDATE() + 0;\n -> 19971215\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (414,14,"MIN MAX","Syntax:\nMIN([DISTINCT] expr), MAX([DISTINCT] expr)\n\nReturns the minimum or maximum value of expr. MIN() and MAX() may take\na string argument; in such cases they return the minimum or maximum\nstring value. See [mysql-indexes]. The DISTINCT keyword can be used to\nfind the minimum or maximum of the distinct values of expr, however,\nthis produces the same result as omitting DISTINCT.\n\nMIN() and MAX() return NULL if there were no matching rows.\n","mysql> SELECT student_name, MIN(test_score), MAX(test_score)\n -> FROM student\n -> GROUP BY student_name;\n","group-by-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (415,23,"SET PASSWORD","Syntax:\nSET PASSWORD = PASSWORD('some password')\nSET PASSWORD FOR user = PASSWORD('some password')\n\nThe SET PASSWORD statement assigns a password to an existing MySQL user\naccount.\n\nThe first syntax sets the password for the current user. Any client\nthat has connected to the server using a non-anonymous account can\nchange the password for that account.\n\nThe second syntax sets the password for a specific account on the\ncurrent server host. Only clients with the UPDATE privilege for the\nmysql database can do this. The user value should be given in\nuser_name@host_name format, where user_name and host_name are exactly\nas they are listed in the User and Host columns of the mysql.user table\nentry. For example, if you had an entry with User and Host column\nvalues of 'bob' and '%.loc.gov', you would write the statement like\nthis:\n\nmysql> SET PASSWORD FOR 'bob'@'%.loc.gov' = PASSWORD('newpass');\n","","set-password");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (416,19,"ENUM","ENUM('value1','value2',...)\n\nAn enumeration. A string object that can have only one value, chosen\nfrom the list of values 'value1', 'value2', ..., NULL or the special ''\nerror value. An ENUM column can have a maximum of 65,535 distinct\nvalues. ENUM values are represented internally as integers.\n","","string-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (417,7,"IF FUNCTION","Syntax:\nIF(expr1,expr2,expr3)\n\nIf expr1 is TRUE (expr1 <> 0 and expr1 <> NULL) then IF() returns\nexpr2; otherwise it returns expr3. IF() returns a numeric or string\nvalue, depending on the context in which it is used.\n","mysql> SELECT IF(1>2,2,3);\n -> 3\nmysql> SELECT IF(1<2,'yes','no');\n -> 'yes'\nmysql> SELECT IF(STRCMP('test','test1'),'no','yes');\n -> 'no'\n","control-flow-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (418,15,"DATABASE","Syntax:\nDATABASE()\n\nReturns the default (current) database name using the utf8 character\nset. Within a stored routine, the default database is the database that\nthe routine is associated with, which is not necessarily the same as\nthe database that is the default in the calling context.\n","mysql> SELECT DATABASE();\n -> 'test'\n","information-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (419,28,"POINTFROMWKB","PointFromWKB(wkb[,srid])\n\nConstructs a POINT value using its WKB representation and SRID.\n","","gis-wkb-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (420,5,"POWER","Syntax:\nPOW(X,Y), POWER(X,Y)\n\nReturns the value of X raised to the power of Y.\n","mysql> SELECT POW(2,2);\n -> 4\nmysql> SELECT POW(2,-2);\n -> 0.25\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (421,5,"ATAN","Syntax:\nATAN(X)\n\nReturns the arc tangent of X, that is, the value whose tangent is X.\n","mysql> SELECT ATAN(2);\n -> 1.1071487177941\nmysql> SELECT ATAN(-2);\n -> -1.1071487177941\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (422,32,"STRCMP","Syntax:\nSTRCMP(expr1,expr2)\n\nSTRCMP() returns 0 if the strings are the same, -1 if the first\nargument is smaller than the second according to the current sort\norder, and 1 otherwise.\n","mysql> SELECT STRCMP('text', 'text2');\n -> -1\nmysql> SELECT STRCMP('text2', 'text');\n -> 1\nmysql> SELECT STRCMP('text', 'text');\n -> 0\n","string-comparison-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (423,24,"INSERT DELAYED","Syntax:\nINSERT DELAYED ...\n\nThe DELAYED option for the INSERT statement is a MySQL extension to\nstandard SQL that is very useful if you have clients that cannot wait\nfor the INSERT to complete. This is a common problem when you use MySQL\nfor logging and you also periodically run SELECT and UPDATE statements\nthat take a long time to complete.\n\nWhen a client uses INSERT DELAYED, it gets an okay from the server at\nonce, and the row is queued to be inserted when the table is not in use\nby any other thread.\n\nAnother major benefit of using INSERT DELAYED is that inserts from many\nclients are bundled together and written in one block. This is much\nfaster than performing many separate inserts.\n\nThere are some constraints on the use of DELAYED:\n\no INSERT DELAYED works only with MyISAM, MEMORY, and ARCHIVE tables.\n For MyISAM tables, if there are no free blocks in the middle of the\n data file, concurrent SELECT and INSERT statements are supported.\n Under these circumstances, you very seldom need to use INSERT DELAYED\n with MyISAM. See [myisam-storage-engine], [memory-storage-engine],\n and [archive-storage-engine].\n\no INSERT DELAYED should be used only for INSERT statements that specify\n value lists. The server ignores DELAYED for INSERT DELAYED ... SELECT\n statements.\n\no The server ignores DELAYED for INSERT DELAYED ... ON DUPLICATE UPDATE\n statements.\n\no Because the statement returns immediately before the rows are\n inserted, you cannot use LAST_INSERT_ID() to get the AUTO_INCREMENT\n value which the statement might generate.\n\no DELAYED rows are not visible to SELECT statements until they actually\n have been inserted.\n\no DELAYED is ignored on slave replication servers because it could\n cause the slave to have different data than the master.\n","","insert-delayed");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (424,19,"MEDIUMTEXT","MEDIUMTEXT\n\nA TEXT column with a maximum length of 16,777,215 (224 - 1) characters.\n","","string-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (425,5,"LN","Syntax:\nLN(X)\n\nReturns the natural logarithm of X, that is, the logarithm of X to the\nbase e.\n","mysql> SELECT LN(2);\n -> 0.69314718055995\nmysql> SELECT LN(-2);\n -> NULL\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (426,24,"SHOW COLLATION","Syntax:\nSHOW COLLATION [LIKE 'pattern']\n\nThe output from SHOW COLLATION includes all available character sets.\nIt takes an optional LIKE clause whose pattern indicates which\ncollation names to match. For example:\n\nmysql> SHOW COLLATION LIKE 'latin1%';\n+-------------------+---------+----+---------+----------+---------+\n| Collation | Charset | Id | Default | Compiled | Sortlen |\n+-------------------+---------+----+---------+----------+---------+\n| latin1_german1_ci | latin1 | 5 | | | 0 |\n| latin1_swedish_ci | latin1 | 8 | Yes | Yes | 0 |\n| latin1_danish_ci | latin1 | 15 | | | 0 |\n| latin1_german2_ci | latin1 | 31 | | Yes | 2 |\n| latin1_bin | latin1 | 47 | | Yes | 0 |\n| latin1_general_ci | latin1 | 48 | | | 0 |\n| latin1_general_cs | latin1 | 49 | | | 0 |\n| latin1_spanish_ci | latin1 | 94 | | | 0 |\n+-------------------+---------+----+---------+----------+---------+\n","","show-collation");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (427,5,"LOG","Syntax:\nLOG(X), LOG(B,X)\n\nIf called with one parameter, this function returns the natural\nlogarithm of X.\n","mysql> SELECT LOG(2);\n -> 0.69314718055995\nmysql> SELECT LOG(-2);\n -> NULL\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (428,24,"SET SQL_LOG_BIN","Syntax:\nSET SQL_LOG_BIN = {0|1}\n\nDisables or enables binary logging for the current connection\n(SQL_LOG_BIN is a session variable) if the client connects using an\naccount that has the SUPER privilege. A statement is refused with an\nerror if the client does not have that privilege.\n","","set-sql-log-bin");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (429,17,"!=","Syntax:\n<>, !=\n\nNot equal:\n","mysql> SELECT '.01' <> '0.01';\n -> 1\nmysql> SELECT .01 <> '0.01';\n -> 0\nmysql> SELECT 'zapp' <> 'zappp';\n -> 1\n","comparison-operators");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (430,34,"WHILE","Syntax:\n[begin_label:] WHILE search_condition DO\n statement_list\nEND WHILE [end_label]\n\nThe statement or statements within a WHILE statement are repeated as\nlong as the search_condition is true.\n\nA WHILE statement can be labeled. end_label cannot be given unless\nbegin_label also is present, and if both are present, they must be the\nsame.\n","CREATE PROCEDURE dowhile()\nBEGIN\n DECLARE v1 INT DEFAULT 5;\n\n WHILE v1 > 0 DO\n ...\n SET v1 = v1 - 1;\n END WHILE;\nEND\n","while-statement");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (431,10,"AES_DECRYPT","Syntax:\nAES_ENCRYPT(str,key_str), AES_DECRYPT(crypt_str,key_str)\n\nThese functions allow encryption and decryption of data using the\nofficial AES (Advanced Encryption Standard) algorithm, previously known\nas \"Rijndael\". Encoding with a 128-bit key length is used, but you can\nextend it up to 256 bits by modifying the source. We chose 128 bits\nbecause it is much faster and it is secure enough for most purposes.\n\nThe input arguments may be any length. If either argument is NULL, the\nresult of this function is also NULL.\n\nBecause AES is a block-level algorithm, padding is used to encode\nuneven length strings and so the result string length may be calculated\nas 16 * (trunc(string_length / 16) + 1).\n\nIf AES_DECRYPT() detects invalid data or incorrect padding, it returns\nNULL. However, it is possible for AES_DECRYPT() to return a non-NULL\nvalue (possibly garbage) if the input data or the key is invalid.\n\nYou can use the AES functions to store data in an encrypted form by\nmodifying your queries:\n","INSERT INTO t VALUES (1,AES_ENCRYPT('text','password'));\n","encryption-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (432,27,"DAYNAME","Syntax:\nDAYNAME(date)\n\nReturns the name of the weekday for date.\n","mysql> SELECT DAYNAME('1998-02-05');\n -> 'Thursday'\n","date-and-time-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (433,15,"COERCIBILITY","Syntax:\nCOERCIBILITY(str)\n\nReturns the collation coercibility value of the string argument.\n","mysql> SELECT COERCIBILITY('abc' COLLATE latin1_swedish_ci);\n -> 0\nmysql> SELECT COERCIBILITY(USER());\n -> 3\nmysql> SELECT COERCIBILITY('abc');\n -> 4\n","information-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (434,19,"INT","INT[(M)] [UNSIGNED] [ZEROFILL]\n\nA normal-size integer. The signed range is -2147483648 to 2147483647.\nThe unsigned range is 0 to 4294967295.\n","","numeric-type-overview");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (435,11,"GLENGTH","GLength(ls)\n\nReturns as a double-precision number the length of the LineString value\nls in its associated spatial reference.\n","mysql> SET @ls = 'LineString(1 1,2 2,3 3)';\nmysql> SELECT GLength(GeomFromText(@ls));\n+----------------------------+\n| GLength(GeomFromText(@ls)) |\n+----------------------------+\n| 2.8284271247462 |\n+----------------------------+\n","linestring-property-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (436,5,"RADIANS","Syntax:\nRADIANS(X)\n\nReturns the argument X, converted from degrees to radians. (Note that\nϖ radians equals 180 degrees.)\n","mysql> SELECT RADIANS(90);\n -> 1.5707963267949\n","mathematical-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (437,15,"COLLATION","Syntax:\nCOLLATION(str)\n\nReturns the collation for the character set of the string argument.\n","mysql> SELECT COLLATION('abc');\n -> 'latin1_swedish_ci'\nmysql> SELECT COLLATION(_utf8'abc');\n -> 'utf8_general_ci'\n","information-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (438,17,"COALESCE","Syntax:\nCOALESCE(value,...)\n\nReturns the first non-NULL value in the list, or NULL if there are no\nnon-NULL values.\n","mysql> SELECT COALESCE(NULL,1);\n -> 1\nmysql> SELECT COALESCE(NULL,NULL,NULL);\n -> NULL\n","comparison-operators");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (439,15,"VERSION","Syntax:\nVERSION()\n\nReturns a string that indicates the MySQL server version. The string\nuses the utf8 character set.\n","mysql> SELECT VERSION();\n -> '5.0.18-standard'\n","information-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (440,32,"MAKE_SET","Syntax:\nMAKE_SET(bits,str1,str2,...)\n\nReturns a set value (a string containing substrings separated by `,'\ncharacters) consisting of the strings that have the corresponding bit\nin bits set. str1 corresponds to bit 0, str2 to bit 1, and so on. NULL\nvalues in str1, str2, ... are not appended to the result.\n","mysql> SELECT MAKE_SET(1,'a','b','c');\n -> 'a'\nmysql> SELECT MAKE_SET(1 | 4,'hello','nice','world');\n -> 'hello,world'\nmysql> SELECT MAKE_SET(1 | 4,'hello','nice',NULL,'world');\n -> 'hello'\nmysql> SELECT MAKE_SET(0,'a','b','c');\n -> ''\n","string-functions");
+insert into help_topic (help_topic_id,help_category_id,name,description,example,url) values (441,32,"FIND_IN_SET","Syntax:\nFIND_IN_SET(str,strlist)\n\nReturns a value in the range of 1 to N if the string str is in the\nstring list strlist consisting of N substrings. A string list is a\nstring composed of substrings separated by `,' characters. If the first\nargument is a constant string and the second is a column of type SET,\nthe FIND_IN_SET() function is optimized to use bit arithmetic. Returns\n0 if str is not in strlist or if strlist is the empty string. Returns\nNULL if either argument is NULL. This function does not work properly\nif the first argument contains a comma (`,') character.\n","mysql> SELECT FIND_IN_SET('b','a,b,c,d');\n -> 2\n","string-functions");
+
+insert into help_keyword (help_keyword_id,name) values (0,"JOIN");
+insert into help_keyword (help_keyword_id,name) values (1,"REPEAT");
+insert into help_keyword (help_keyword_id,name) values (2,"SERIALIZABLE");
+insert into help_keyword (help_keyword_id,name) values (3,"REPLACE");
+insert into help_keyword (help_keyword_id,name) values (4,"RETURNS");
+insert into help_keyword (help_keyword_id,name) values (5,"MASTER_SSL_CA");
+insert into help_keyword (help_keyword_id,name) values (6,"NCHAR");
+insert into help_keyword (help_keyword_id,name) values (7,"COLUMNS");
+insert into help_keyword (help_keyword_id,name) values (8,"WORK");
+insert into help_keyword (help_keyword_id,name) values (9,"DATETIME");
+insert into help_keyword (help_keyword_id,name) values (10,"MODE");
+insert into help_keyword (help_keyword_id,name) values (11,"OPEN");
+insert into help_keyword (help_keyword_id,name) values (12,"INTEGER");
+insert into help_keyword (help_keyword_id,name) values (13,"ESCAPE");
+insert into help_keyword (help_keyword_id,name) values (14,"VALUE");
+insert into help_keyword (help_keyword_id,name) values (15,"GEOMETRYCOLLECTIONFROMWKB");
+insert into help_keyword (help_keyword_id,name) values (16,"SQL_BIG_RESULT");
+insert into help_keyword (help_keyword_id,name) values (17,"DROP");
+insert into help_keyword (help_keyword_id,name) values (18,"EVENTS");
+insert into help_keyword (help_keyword_id,name) values (19,"MONTH");
+insert into help_keyword (help_keyword_id,name) values (20,"INFO");
+insert into help_keyword (help_keyword_id,name) values (21,"DUPLICATE");
+insert into help_keyword (help_keyword_id,name) values (22,"REPLICATION");
+insert into help_keyword (help_keyword_id,name) values (23,"INNODB");
+insert into help_keyword (help_keyword_id,name) values (24,"YEAR_MONTH");
+insert into help_keyword (help_keyword_id,name) values (25,"SUBJECT");
+insert into help_keyword (help_keyword_id,name) values (26,"LOCK");
+insert into help_keyword (help_keyword_id,name) values (27,"NDB");
+insert into help_keyword (help_keyword_id,name) values (28,"CHECK");
+insert into help_keyword (help_keyword_id,name) values (29,"FULL");
+insert into help_keyword (help_keyword_id,name) values (30,"INT4");
+insert into help_keyword (help_keyword_id,name) values (31,"BY");
+insert into help_keyword (help_keyword_id,name) values (32,"NO");
+insert into help_keyword (help_keyword_id,name) values (33,"MINUTE");
+insert into help_keyword (help_keyword_id,name) values (34,"DATA");
+insert into help_keyword (help_keyword_id,name) values (35,"DAY");
+insert into help_keyword (help_keyword_id,name) values (36,"SHARE");
+insert into help_keyword (help_keyword_id,name) values (37,"REAL");
+insert into help_keyword (help_keyword_id,name) values (38,"SEPARATOR");
+insert into help_keyword (help_keyword_id,name) values (39,"DELETE");
+insert into help_keyword (help_keyword_id,name) values (40,"ON");
+insert into help_keyword (help_keyword_id,name) values (41,"CONNECTION");
+insert into help_keyword (help_keyword_id,name) values (42,"CLOSE");
+insert into help_keyword (help_keyword_id,name) values (43,"X509");
+insert into help_keyword (help_keyword_id,name) values (44,"USE");
+insert into help_keyword (help_keyword_id,name) values (45,"WHERE");
+insert into help_keyword (help_keyword_id,name) values (46,"PRIVILEGES");
+insert into help_keyword (help_keyword_id,name) values (47,"SPATIAL");
+insert into help_keyword (help_keyword_id,name) values (48,"SUPER");
+insert into help_keyword (help_keyword_id,name) values (49,"SQL_BUFFER_RESULT");
+insert into help_keyword (help_keyword_id,name) values (50,"IGNORE");
+insert into help_keyword (help_keyword_id,name) values (51,"QUICK");
+insert into help_keyword (help_keyword_id,name) values (52,"SIGNED");
+insert into help_keyword (help_keyword_id,name) values (53,"SECURITY");
+insert into help_keyword (help_keyword_id,name) values (54,"POLYGONFROMWKB");
+insert into help_keyword (help_keyword_id,name) values (55,"NDBCLUSTER");
+insert into help_keyword (help_keyword_id,name) values (56,"FALSE");
+insert into help_keyword (help_keyword_id,name) values (57,"LEVEL");
+insert into help_keyword (help_keyword_id,name) values (58,"FORCE");
+insert into help_keyword (help_keyword_id,name) values (59,"BINARY");
+insert into help_keyword (help_keyword_id,name) values (60,"TO");
+insert into help_keyword (help_keyword_id,name) values (61,"CHANGE");
+insert into help_keyword (help_keyword_id,name) values (62,"HOUR_MINUTE");
+insert into help_keyword (help_keyword_id,name) values (63,"UPDATE");
+insert into help_keyword (help_keyword_id,name) values (64,"INTO");
+insert into help_keyword (help_keyword_id,name) values (65,"FEDERATED");
+insert into help_keyword (help_keyword_id,name) values (66,"VARYING");
+insert into help_keyword (help_keyword_id,name) values (67,"HOUR_SECOND");
+insert into help_keyword (help_keyword_id,name) values (68,"VARIABLE");
+insert into help_keyword (help_keyword_id,name) values (69,"ROLLBACK");
+insert into help_keyword (help_keyword_id,name) values (70,"PROCEDURE");
+insert into help_keyword (help_keyword_id,name) values (71,"RTREE");
+insert into help_keyword (help_keyword_id,name) values (72,"TIMESTAMP");
+insert into help_keyword (help_keyword_id,name) values (73,"IMPORT");
+insert into help_keyword (help_keyword_id,name) values (74,"AGAINST");
+insert into help_keyword (help_keyword_id,name) values (75,"CHECKSUM");
+insert into help_keyword (help_keyword_id,name) values (76,"INSERT");
+insert into help_keyword (help_keyword_id,name) values (77,"COUNT");
+insert into help_keyword (help_keyword_id,name) values (78,"LONGBINARY");
+insert into help_keyword (help_keyword_id,name) values (79,"THEN");
+insert into help_keyword (help_keyword_id,name) values (80,"HANDLER");
+insert into help_keyword (help_keyword_id,name) values (81,"ENGINES");
+insert into help_keyword (help_keyword_id,name) values (82,"DAY_SECOND");
+insert into help_keyword (help_keyword_id,name) values (83,"EXISTS");
+insert into help_keyword (help_keyword_id,name) values (84,"RELEASE");
+insert into help_keyword (help_keyword_id,name) values (85,"BOOLEAN");
+insert into help_keyword (help_keyword_id,name) values (86,"MOD");
+insert into help_keyword (help_keyword_id,name) values (87,"DEFAULT");
+insert into help_keyword (help_keyword_id,name) values (88,"TYPE");
+insert into help_keyword (help_keyword_id,name) values (89,"NO_WRITE_TO_BINLOG");
+insert into help_keyword (help_keyword_id,name) values (90,"RESET");
+insert into help_keyword (help_keyword_id,name) values (91,"DO");
+insert into help_keyword (help_keyword_id,name) values (92,"ITERATE");
+insert into help_keyword (help_keyword_id,name) values (93,"BIGINT");
+insert into help_keyword (help_keyword_id,name) values (94,"SET");
+insert into help_keyword (help_keyword_id,name) values (95,"ISSUER");
+insert into help_keyword (help_keyword_id,name) values (96,"DATE");
+insert into help_keyword (help_keyword_id,name) values (97,"STATUS");
+insert into help_keyword (help_keyword_id,name) values (98,"FULLTEXT");
+insert into help_keyword (help_keyword_id,name) values (99,"COMMENT");
+insert into help_keyword (help_keyword_id,name) values (100,"MASTER_CONNECT_RETRY");
+insert into help_keyword (help_keyword_id,name) values (101,"INNER");
+insert into help_keyword (help_keyword_id,name) values (102,"STOP");
+insert into help_keyword (help_keyword_id,name) values (103,"MASTER_LOG_FILE");
+insert into help_keyword (help_keyword_id,name) values (104,"MRG_MYISAM");
+insert into help_keyword (help_keyword_id,name) values (105,"PRECISION");
+insert into help_keyword (help_keyword_id,name) values (106,"REQUIRE");
+insert into help_keyword (help_keyword_id,name) values (107,"TRAILING");
+insert into help_keyword (help_keyword_id,name) values (108,"LONG");
+insert into help_keyword (help_keyword_id,name) values (109,"OPTION");
+insert into help_keyword (help_keyword_id,name) values (110,"ELSE");
+insert into help_keyword (help_keyword_id,name) values (111,"IO_THREAD");
+insert into help_keyword (help_keyword_id,name) values (112,"CASE");
+insert into help_keyword (help_keyword_id,name) values (113,"CIPHER");
+insert into help_keyword (help_keyword_id,name) values (114,"CONTINUE");
+insert into help_keyword (help_keyword_id,name) values (115,"FROM");
+insert into help_keyword (help_keyword_id,name) values (116,"READ");
+insert into help_keyword (help_keyword_id,name) values (117,"LEFT");
+insert into help_keyword (help_keyword_id,name) values (118,"ELSEIF");
+insert into help_keyword (help_keyword_id,name) values (119,"MINUTE_SECOND");
+insert into help_keyword (help_keyword_id,name) values (120,"COMPACT");
+insert into help_keyword (help_keyword_id,name) values (121,"DEC");
+insert into help_keyword (help_keyword_id,name) values (122,"FOR");
+insert into help_keyword (help_keyword_id,name) values (123,"WARNINGS");
+insert into help_keyword (help_keyword_id,name) values (124,"MIN_ROWS");
+insert into help_keyword (help_keyword_id,name) values (125,"STRING");
+insert into help_keyword (help_keyword_id,name) values (126,"CONDITION");
+insert into help_keyword (help_keyword_id,name) values (127,"FUNCTION");
+insert into help_keyword (help_keyword_id,name) values (128,"ENCLOSED");
+insert into help_keyword (help_keyword_id,name) values (129,"AGGREGATE");
+insert into help_keyword (help_keyword_id,name) values (130,"FIELDS");
+insert into help_keyword (help_keyword_id,name) values (131,"INT3");
+insert into help_keyword (help_keyword_id,name) values (132,"ARCHIVE");
+insert into help_keyword (help_keyword_id,name) values (133,"ADD");
+insert into help_keyword (help_keyword_id,name) values (134,"AVG_ROW_LENGTH");
+insert into help_keyword (help_keyword_id,name) values (135,"FLOAT4");
+insert into help_keyword (help_keyword_id,name) values (136,"VIEW");
+insert into help_keyword (help_keyword_id,name) values (137,"REPEATABLE");
+insert into help_keyword (help_keyword_id,name) values (138,"INFILE");
+insert into help_keyword (help_keyword_id,name) values (139,"ORDER");
+insert into help_keyword (help_keyword_id,name) values (140,"USING");
+insert into help_keyword (help_keyword_id,name) values (141,"MIDDLEINT");
+insert into help_keyword (help_keyword_id,name) values (142,"GRANT");
+insert into help_keyword (help_keyword_id,name) values (143,"UNSIGNED");
+insert into help_keyword (help_keyword_id,name) values (144,"DECIMAL");
+insert into help_keyword (help_keyword_id,name) values (145,"GEOMETRYFROMTEXT");
+insert into help_keyword (help_keyword_id,name) values (146,"INDEXES");
+insert into help_keyword (help_keyword_id,name) values (147,"FOREIGN");
+insert into help_keyword (help_keyword_id,name) values (148,"CACHE");
+insert into help_keyword (help_keyword_id,name) values (149,"HOSTS");
+insert into help_keyword (help_keyword_id,name) values (150,"COMMIT");
+insert into help_keyword (help_keyword_id,name) values (151,"SCHEMAS");
+insert into help_keyword (help_keyword_id,name) values (152,"LEADING");
+insert into help_keyword (help_keyword_id,name) values (153,"DECLARE");
+insert into help_keyword (help_keyword_id,name) values (154,"LOAD");
+insert into help_keyword (help_keyword_id,name) values (155,"SQL_CACHE");
+insert into help_keyword (help_keyword_id,name) values (156,"CONVERT");
+insert into help_keyword (help_keyword_id,name) values (157,"DYNAMIC");
+insert into help_keyword (help_keyword_id,name) values (158,"POLYGONFROMTEXT");
+insert into help_keyword (help_keyword_id,name) values (159,"BYTE");
+insert into help_keyword (help_keyword_id,name) values (160,"LINESTRINGFROMWKB");
+insert into help_keyword (help_keyword_id,name) values (161,"GLOBAL");
+insert into help_keyword (help_keyword_id,name) values (162,"BERKELEYDB");
+insert into help_keyword (help_keyword_id,name) values (163,"WHEN");
+insert into help_keyword (help_keyword_id,name) values (164,"HAVING");
+insert into help_keyword (help_keyword_id,name) values (165,"AS");
+insert into help_keyword (help_keyword_id,name) values (166,"STARTING");
+insert into help_keyword (help_keyword_id,name) values (167,"RELOAD");
+insert into help_keyword (help_keyword_id,name) values (168,"AUTOCOMMIT");
+insert into help_keyword (help_keyword_id,name) values (169,"REVOKE");
+insert into help_keyword (help_keyword_id,name) values (170,"GRANTS");
+insert into help_keyword (help_keyword_id,name) values (171,"OUTER");
+insert into help_keyword (help_keyword_id,name) values (172,"FLOOR");
+insert into help_keyword (help_keyword_id,name) values (173,"WITH");
+insert into help_keyword (help_keyword_id,name) values (174,"STD");
+insert into help_keyword (help_keyword_id,name) values (175,"AFTER");
+insert into help_keyword (help_keyword_id,name) values (176,"CSV");
+insert into help_keyword (help_keyword_id,name) values (177,"DISABLE");
+insert into help_keyword (help_keyword_id,name) values (178,"OUTFILE");
+insert into help_keyword (help_keyword_id,name) values (179,"LOW_PRIORITY");
+insert into help_keyword (help_keyword_id,name) values (180,"FILE");
+insert into help_keyword (help_keyword_id,name) values (181,"BDB");
+insert into help_keyword (help_keyword_id,name) values (182,"SCHEMA");
+insert into help_keyword (help_keyword_id,name) values (183,"SONAME");
+insert into help_keyword (help_keyword_id,name) values (184,"POW");
+insert into help_keyword (help_keyword_id,name) values (185,"MULTIPOINTFROMWKB");
+insert into help_keyword (help_keyword_id,name) values (186,"INDEX");
+insert into help_keyword (help_keyword_id,name) values (187,"MULTIPOINTFROMTEXT");
+insert into help_keyword (help_keyword_id,name) values (188,"BACKUP");
+insert into help_keyword (help_keyword_id,name) values (189,"MULTILINESTRINGFROMWKB");
+insert into help_keyword (help_keyword_id,name) values (190,"EXTENDED");
+insert into help_keyword (help_keyword_id,name) values (191,"CROSS");
+insert into help_keyword (help_keyword_id,name) values (192,"NATIONAL");
+insert into help_keyword (help_keyword_id,name) values (193,"GROUP");
+insert into help_keyword (help_keyword_id,name) values (194,"UNDO");
+insert into help_keyword (help_keyword_id,name) values (195,"ZEROFILL");
+insert into help_keyword (help_keyword_id,name) values (196,"CLIENT");
+insert into help_keyword (help_keyword_id,name) values (197,"MASTER_PASSWORD");
+insert into help_keyword (help_keyword_id,name) values (198,"RELAY_LOG_FILE");
+insert into help_keyword (help_keyword_id,name) values (199,"TRUE");
+insert into help_keyword (help_keyword_id,name) values (200,"CHARACTER");
+insert into help_keyword (help_keyword_id,name) values (201,"MASTER_USER");
+insert into help_keyword (help_keyword_id,name) values (202,"ENGINE");
+insert into help_keyword (help_keyword_id,name) values (203,"TABLE");
+insert into help_keyword (help_keyword_id,name) values (204,"INSERT_METHOD");
+insert into help_keyword (help_keyword_id,name) values (205,"CASCADE");
+insert into help_keyword (help_keyword_id,name) values (206,"RELAY_LOG_POS");
+insert into help_keyword (help_keyword_id,name) values (207,"SQL_CALC_FOUND_ROWS");
+insert into help_keyword (help_keyword_id,name) values (208,"MYISAM");
+insert into help_keyword (help_keyword_id,name) values (209,"LEAVE");
+insert into help_keyword (help_keyword_id,name) values (210,"MODIFY");
+insert into help_keyword (help_keyword_id,name) values (211,"MATCH");
+insert into help_keyword (help_keyword_id,name) values (212,"MASTER_LOG_POS");
+insert into help_keyword (help_keyword_id,name) values (213,"DESC");
+insert into help_keyword (help_keyword_id,name) values (214,"DISTINCTROW");
+insert into help_keyword (help_keyword_id,name) values (215,"TIME");
+insert into help_keyword (help_keyword_id,name) values (216,"NUMERIC");
+insert into help_keyword (help_keyword_id,name) values (217,"EXPANSION");
+insert into help_keyword (help_keyword_id,name) values (218,"CURSOR");
+insert into help_keyword (help_keyword_id,name) values (219,"GEOMETRYCOLLECTIONFROMTEXT");
+insert into help_keyword (help_keyword_id,name) values (220,"CHAIN");
+insert into help_keyword (help_keyword_id,name) values (221,"FLUSH");
+insert into help_keyword (help_keyword_id,name) values (222,"CREATE");
+insert into help_keyword (help_keyword_id,name) values (223,"ISAM");
+insert into help_keyword (help_keyword_id,name) values (224,"MAX_UPDATES_PER_HOUR");
+insert into help_keyword (help_keyword_id,name) values (225,"INT2");
+insert into help_keyword (help_keyword_id,name) values (226,"PROCESSLIST");
+insert into help_keyword (help_keyword_id,name) values (227,"LOGS");
+insert into help_keyword (help_keyword_id,name) values (228,"HEAP");
+insert into help_keyword (help_keyword_id,name) values (229,"SOUNDS");
+insert into help_keyword (help_keyword_id,name) values (230,"BETWEEN");
+insert into help_keyword (help_keyword_id,name) values (231,"MULTILINESTRINGFROMTEXT");
+insert into help_keyword (help_keyword_id,name) values (232,"PACK_KEYS");
+insert into help_keyword (help_keyword_id,name) values (233,"CALL");
+insert into help_keyword (help_keyword_id,name) values (234,"FAST");
+insert into help_keyword (help_keyword_id,name) values (235,"VALUES");
+insert into help_keyword (help_keyword_id,name) values (236,"LOOP");
+insert into help_keyword (help_keyword_id,name) values (237,"VARCHARACTER");
+insert into help_keyword (help_keyword_id,name) values (238,"BEFORE");
+insert into help_keyword (help_keyword_id,name) values (239,"SHOW");
+insert into help_keyword (help_keyword_id,name) values (240,"REDUNDANT");
+insert into help_keyword (help_keyword_id,name) values (241,"ALL");
+insert into help_keyword (help_keyword_id,name) values (242,"USER_RESOURCES");
+insert into help_keyword (help_keyword_id,name) values (243,"PARTIAL");
+insert into help_keyword (help_keyword_id,name) values (244,"BINLOG");
+insert into help_keyword (help_keyword_id,name) values (245,"END");
+insert into help_keyword (help_keyword_id,name) values (246,"SECOND");
+insert into help_keyword (help_keyword_id,name) values (247,"AND");
+insert into help_keyword (help_keyword_id,name) values (248,"FLOAT8");
+insert into help_keyword (help_keyword_id,name) values (249,"PREV");
+insert into help_keyword (help_keyword_id,name) values (250,"HOUR");
+insert into help_keyword (help_keyword_id,name) values (251,"SELECT");
+insert into help_keyword (help_keyword_id,name) values (252,"DATABASES");
+insert into help_keyword (help_keyword_id,name) values (253,"OR");
+insert into help_keyword (help_keyword_id,name) values (254,"IDENTIFIED");
+insert into help_keyword (help_keyword_id,name) values (255,"MASTER_SSL_CIPHER");
+insert into help_keyword (help_keyword_id,name) values (256,"SQL_SLAVE_SKIP_COUNTER");
+insert into help_keyword (help_keyword_id,name) values (257,"BOTH");
+insert into help_keyword (help_keyword_id,name) values (258,"BOOL");
+insert into help_keyword (help_keyword_id,name) values (259,"YEAR");
+insert into help_keyword (help_keyword_id,name) values (260,"MASTER_PORT");
+insert into help_keyword (help_keyword_id,name) values (261,"CONCURRENT");
+insert into help_keyword (help_keyword_id,name) values (262,"UNIQUE");
+insert into help_keyword (help_keyword_id,name) values (263,"PROCESS");
+insert into help_keyword (help_keyword_id,name) values (264,"MASTER_SSL");
+insert into help_keyword (help_keyword_id,name) values (265,"DATE_ADD");
+insert into help_keyword (help_keyword_id,name) values (266,"MAX_CONNECTIONS_PER_HOUR");
+insert into help_keyword (help_keyword_id,name) values (267,"LIKE");
+insert into help_keyword (help_keyword_id,name) values (268,"FETCH");
+insert into help_keyword (help_keyword_id,name) values (269,"IN");
+insert into help_keyword (help_keyword_id,name) values (270,"COLUMN");
+insert into help_keyword (help_keyword_id,name) values (271,"DUMPFILE");
+insert into help_keyword (help_keyword_id,name) values (272,"USAGE");
+insert into help_keyword (help_keyword_id,name) values (273,"EXECUTE");
+insert into help_keyword (help_keyword_id,name) values (274,"MEMORY");
+insert into help_keyword (help_keyword_id,name) values (275,"CEIL");
+insert into help_keyword (help_keyword_id,name) values (276,"QUERY");
+insert into help_keyword (help_keyword_id,name) values (277,"MASTER_HOST");
+insert into help_keyword (help_keyword_id,name) values (278,"LINES");
+insert into help_keyword (help_keyword_id,name) values (279,"SQL_THREAD");
+insert into help_keyword (help_keyword_id,name) values (280,"MAX_QUERIES_PER_HOUR");
+insert into help_keyword (help_keyword_id,name) values (281,"MULTIPOLYGONFROMWKB");
+insert into help_keyword (help_keyword_id,name) values (282,"MASTER_SSL_CERT");
+insert into help_keyword (help_keyword_id,name) values (283,"DAY_MINUTE");
+insert into help_keyword (help_keyword_id,name) values (284,"TRANSACTION");
+insert into help_keyword (help_keyword_id,name) values (285,"DATE_SUB");
+insert into help_keyword (help_keyword_id,name) values (286,"GEOMETRYFROMWKB");
+insert into help_keyword (help_keyword_id,name) values (287,"RENAME");
+insert into help_keyword (help_keyword_id,name) values (288,"INT1");
+insert into help_keyword (help_keyword_id,name) values (289,"ALTER");
+insert into help_keyword (help_keyword_id,name) values (290,"MAX_ROWS");
+insert into help_keyword (help_keyword_id,name) values (291,"RIGHT");
+insert into help_keyword (help_keyword_id,name) values (292,"STRAIGHT_JOIN");
+insert into help_keyword (help_keyword_id,name) values (293,"NATURAL");
+insert into help_keyword (help_keyword_id,name) values (294,"VARIABLES");
+insert into help_keyword (help_keyword_id,name) values (295,"ESCAPED");
+insert into help_keyword (help_keyword_id,name) values (296,"SHA1");
+insert into help_keyword (help_keyword_id,name) values (297,"PASSWORD");
+insert into help_keyword (help_keyword_id,name) values (298,"CHAR");
+insert into help_keyword (help_keyword_id,name) values (299,"OFFSET");
+insert into help_keyword (help_keyword_id,name) values (300,"NEXT");
+insert into help_keyword (help_keyword_id,name) values (301,"SQL_LOG_BIN");
+insert into help_keyword (help_keyword_id,name) values (302,"ERRORS");
+insert into help_keyword (help_keyword_id,name) values (303,"TEMPORARY");
+insert into help_keyword (help_keyword_id,name) values (304,"SQL_SMALL_RESULT");
+insert into help_keyword (help_keyword_id,name) values (305,"COMMITTED");
+insert into help_keyword (help_keyword_id,name) values (306,"DELAY_KEY_WRITE");
+insert into help_keyword (help_keyword_id,name) values (307,"BEGIN");
+insert into help_keyword (help_keyword_id,name) values (308,"MEDIUM");
+insert into help_keyword (help_keyword_id,name) values (309,"INTERVAL");
+insert into help_keyword (help_keyword_id,name) values (310,"SSL");
+insert into help_keyword (help_keyword_id,name) values (311,"DAY_HOUR");
+insert into help_keyword (help_keyword_id,name) values (312,"REFERENCES");
+insert into help_keyword (help_keyword_id,name) values (313,"AES_ENCRYPT");
+insert into help_keyword (help_keyword_id,name) values (314,"ISOLATION");
+insert into help_keyword (help_keyword_id,name) values (315,"INT8");
+insert into help_keyword (help_keyword_id,name) values (316,"RESTRICT");
+insert into help_keyword (help_keyword_id,name) values (317,"LINESTRINGFROMTEXT");
+insert into help_keyword (help_keyword_id,name) values (318,"IS");
+insert into help_keyword (help_keyword_id,name) values (319,"UNCOMMITTED");
+insert into help_keyword (help_keyword_id,name) values (320,"NOT");
+insert into help_keyword (help_keyword_id,name) values (321,"DES_KEY_FILE");
+insert into help_keyword (help_keyword_id,name) values (322,"COMPRESSED");
+insert into help_keyword (help_keyword_id,name) values (323,"START");
+insert into help_keyword (help_keyword_id,name) values (324,"IF");
+insert into help_keyword (help_keyword_id,name) values (325,"SAVEPOINT");
+insert into help_keyword (help_keyword_id,name) values (326,"PRIMARY");
+insert into help_keyword (help_keyword_id,name) values (327,"INNOBASE");
+insert into help_keyword (help_keyword_id,name) values (328,"LAST");
+insert into help_keyword (help_keyword_id,name) values (329,"EXIT");
+insert into help_keyword (help_keyword_id,name) values (330,"KEYS");
+insert into help_keyword (help_keyword_id,name) values (331,"LIMIT");
+insert into help_keyword (help_keyword_id,name) values (332,"KEY");
+insert into help_keyword (help_keyword_id,name) values (333,"MERGE");
+insert into help_keyword (help_keyword_id,name) values (334,"UNTIL");
+insert into help_keyword (help_keyword_id,name) values (335,"SQL_NO_CACHE");
+insert into help_keyword (help_keyword_id,name) values (336,"DELAYED");
+insert into help_keyword (help_keyword_id,name) values (337,"CONSTRAINT");
+insert into help_keyword (help_keyword_id,name) values (338,"SERIAL");
+insert into help_keyword (help_keyword_id,name) values (339,"ACTION");
+insert into help_keyword (help_keyword_id,name) values (340,"WRITE");
+insert into help_keyword (help_keyword_id,name) values (341,"SESSION");
+insert into help_keyword (help_keyword_id,name) values (342,"DATABASE");
+insert into help_keyword (help_keyword_id,name) values (343,"NULL");
+insert into help_keyword (help_keyword_id,name) values (344,"USE_FRM");
+insert into help_keyword (help_keyword_id,name) values (345,"SLAVE");
+insert into help_keyword (help_keyword_id,name) values (346,"TERMINATED");
+insert into help_keyword (help_keyword_id,name) values (347,"ASC");
+insert into help_keyword (help_keyword_id,name) values (348,"ENABLE");
+insert into help_keyword (help_keyword_id,name) values (349,"OPTIONALLY");
+insert into help_keyword (help_keyword_id,name) values (350,"DIRECTORY");
+insert into help_keyword (help_keyword_id,name) values (351,"WHILE");
+insert into help_keyword (help_keyword_id,name) values (352,"MAX_USER_CONNECTIONS");
+insert into help_keyword (help_keyword_id,name) values (353,"DISTINCT");
+insert into help_keyword (help_keyword_id,name) values (354,"LOCAL");
+insert into help_keyword (help_keyword_id,name) values (355,"MASTER_SSL_KEY");
+insert into help_keyword (help_keyword_id,name) values (356,"NONE");
+insert into help_keyword (help_keyword_id,name) values (357,"TABLES");
+insert into help_keyword (help_keyword_id,name) values (358,"<>");
+insert into help_keyword (help_keyword_id,name) values (359,"RLIKE");
+insert into help_keyword (help_keyword_id,name) values (360,"TRIGGER");
+insert into help_keyword (help_keyword_id,name) values (361,"COLLATION");
+insert into help_keyword (help_keyword_id,name) values (362,"SHUTDOWN");
+insert into help_keyword (help_keyword_id,name) values (363,"HIGH_PRIORITY");
+insert into help_keyword (help_keyword_id,name) values (364,"BTREE");
+insert into help_keyword (help_keyword_id,name) values (365,"FIRST");
+insert into help_keyword (help_keyword_id,name) values (366,"TYPES");
+insert into help_keyword (help_keyword_id,name) values (367,"MASTER");
+insert into help_keyword (help_keyword_id,name) values (368,"FIXED");
+insert into help_keyword (help_keyword_id,name) values (369,"MULTIPOLYGONFROMTEXT");
+insert into help_keyword (help_keyword_id,name) values (370,"ROW_FORMAT");
+
+insert into help_relation (help_topic_id,help_keyword_id) values (309,0);
+insert into help_relation (help_topic_id,help_keyword_id) values (196,1);
+insert into help_relation (help_topic_id,help_keyword_id) values (386,2);
+insert into help_relation (help_topic_id,help_keyword_id) values (366,3);
+insert into help_relation (help_topic_id,help_keyword_id) values (178,4);
+insert into help_relation (help_topic_id,help_keyword_id) values (160,5);
+insert into help_relation (help_topic_id,help_keyword_id) values (371,6);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,7);
+insert into help_relation (help_topic_id,help_keyword_id) values (17,7);
+insert into help_relation (help_topic_id,help_keyword_id) values (119,8);
+insert into help_relation (help_topic_id,help_keyword_id) values (328,9);
+insert into help_relation (help_topic_id,help_keyword_id) values (70,10);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,10);
+insert into help_relation (help_topic_id,help_keyword_id) values (12,11);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,11);
+insert into help_relation (help_topic_id,help_keyword_id) values (85,11);
+insert into help_relation (help_topic_id,help_keyword_id) values (434,12);
+insert into help_relation (help_topic_id,help_keyword_id) values (178,12);
+insert into help_relation (help_topic_id,help_keyword_id) values (331,13);
+insert into help_relation (help_topic_id,help_keyword_id) values (204,14);
+insert into help_relation (help_topic_id,help_keyword_id) values (87,15);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,16);
+insert into help_relation (help_topic_id,help_keyword_id) values (360,17);
+insert into help_relation (help_topic_id,help_keyword_id) values (25,17);
+insert into help_relation (help_topic_id,help_keyword_id) values (69,17);
+insert into help_relation (help_topic_id,help_keyword_id) values (224,17);
+insert into help_relation (help_topic_id,help_keyword_id) values (161,17);
+insert into help_relation (help_topic_id,help_keyword_id) values (353,17);
+insert into help_relation (help_topic_id,help_keyword_id) values (236,17);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,17);
+insert into help_relation (help_topic_id,help_keyword_id) values (99,18);
+insert into help_relation (help_topic_id,help_keyword_id) values (26,19);
+insert into help_relation (help_topic_id,help_keyword_id) values (221,20);
+insert into help_relation (help_topic_id,help_keyword_id) values (128,21);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,22);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,23);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,23);
+insert into help_relation (help_topic_id,help_keyword_id) values (26,24);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,25);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,26);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,27);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,28);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,29);
+insert into help_relation (help_topic_id,help_keyword_id) values (17,29);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,29);
+insert into help_relation (help_topic_id,help_keyword_id) values (434,30);
+insert into help_relation (help_topic_id,help_keyword_id) values (40,31);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,31);
+insert into help_relation (help_topic_id,help_keyword_id) values (67,31);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,31);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,31);
+insert into help_relation (help_topic_id,help_keyword_id) values (366,31);
+insert into help_relation (help_topic_id,help_keyword_id) values (315,31);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,31);
+insert into help_relation (help_topic_id,help_keyword_id) values (410,32);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,32);
+insert into help_relation (help_topic_id,help_keyword_id) values (26,33);
+insert into help_relation (help_topic_id,help_keyword_id) values (95,34);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,34);
+insert into help_relation (help_topic_id,help_keyword_id) values (366,34);
+insert into help_relation (help_topic_id,help_keyword_id) values (26,35);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,36);
+insert into help_relation (help_topic_id,help_keyword_id) values (270,37);
+insert into help_relation (help_topic_id,help_keyword_id) values (178,37);
+insert into help_relation (help_topic_id,help_keyword_id) values (315,38);
+insert into help_relation (help_topic_id,help_keyword_id) values (410,39);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,39);
+insert into help_relation (help_topic_id,help_keyword_id) values (410,40);
+insert into help_relation (help_topic_id,help_keyword_id) values (0,40);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,41);
+insert into help_relation (help_topic_id,help_keyword_id) values (43,42);
+insert into help_relation (help_topic_id,help_keyword_id) values (85,42);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,43);
+insert into help_relation (help_topic_id,help_keyword_id) values (0,44);
+insert into help_relation (help_topic_id,help_keyword_id) values (40,45);
+insert into help_relation (help_topic_id,help_keyword_id) values (67,45);
+insert into help_relation (help_topic_id,help_keyword_id) values (85,45);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,46);
+insert into help_relation (help_topic_id,help_keyword_id) values (180,47);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,47);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,48);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,49);
+insert into help_relation (help_topic_id,help_keyword_id) values (0,50);
+insert into help_relation (help_topic_id,help_keyword_id) values (128,50);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,50);
+insert into help_relation (help_topic_id,help_keyword_id) values (67,50);
+insert into help_relation (help_topic_id,help_keyword_id) values (366,50);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,50);
+insert into help_relation (help_topic_id,help_keyword_id) values (404,51);
+insert into help_relation (help_topic_id,help_keyword_id) values (361,51);
+insert into help_relation (help_topic_id,help_keyword_id) values (40,51);
+insert into help_relation (help_topic_id,help_keyword_id) values (328,52);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,53);
+insert into help_relation (help_topic_id,help_keyword_id) values (72,54);
+insert into help_relation (help_topic_id,help_keyword_id) values (419,54);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,55);
+insert into help_relation (help_topic_id,help_keyword_id) values (335,56);
+insert into help_relation (help_topic_id,help_keyword_id) values (386,57);
+insert into help_relation (help_topic_id,help_keyword_id) values (0,58);
+insert into help_relation (help_topic_id,help_keyword_id) values (256,59);
+insert into help_relation (help_topic_id,help_keyword_id) values (218,59);
+insert into help_relation (help_topic_id,help_keyword_id) values (371,59);
+insert into help_relation (help_topic_id,help_keyword_id) values (328,59);
+insert into help_relation (help_topic_id,help_keyword_id) values (402,60);
+insert into help_relation (help_topic_id,help_keyword_id) values (398,60);
+insert into help_relation (help_topic_id,help_keyword_id) values (160,60);
+insert into help_relation (help_topic_id,help_keyword_id) values (160,61);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,61);
+insert into help_relation (help_topic_id,help_keyword_id) values (26,62);
+insert into help_relation (help_topic_id,help_keyword_id) values (410,63);
+insert into help_relation (help_topic_id,help_keyword_id) values (128,63);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,63);
+insert into help_relation (help_topic_id,help_keyword_id) values (261,64);
+insert into help_relation (help_topic_id,help_keyword_id) values (128,64);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,64);
+insert into help_relation (help_topic_id,help_keyword_id) values (35,64);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,65);
+insert into help_relation (help_topic_id,help_keyword_id) values (218,66);
+insert into help_relation (help_topic_id,help_keyword_id) values (26,67);
+insert into help_relation (help_topic_id,help_keyword_id) values (106,68);
+insert into help_relation (help_topic_id,help_keyword_id) values (119,69);
+insert into help_relation (help_topic_id,help_keyword_id) values (398,69);
+insert into help_relation (help_topic_id,help_keyword_id) values (13,70);
+insert into help_relation (help_topic_id,help_keyword_id) values (360,70);
+insert into help_relation (help_topic_id,help_keyword_id) values (380,70);
+insert into help_relation (help_topic_id,help_keyword_id) values (284,70);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,70);
+insert into help_relation (help_topic_id,help_keyword_id) values (258,70);
+insert into help_relation (help_topic_id,help_keyword_id) values (180,71);
+insert into help_relation (help_topic_id,help_keyword_id) values (162,72);
+insert into help_relation (help_topic_id,help_keyword_id) values (78,72);
+insert into help_relation (help_topic_id,help_keyword_id) values (366,73);
+insert into help_relation (help_topic_id,help_keyword_id) values (70,74);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,75);
+insert into help_relation (help_topic_id,help_keyword_id) values (128,76);
+insert into help_relation (help_topic_id,help_keyword_id) values (423,76);
+insert into help_relation (help_topic_id,help_keyword_id) values (374,77);
+insert into help_relation (help_topic_id,help_keyword_id) values (244,78);
+insert into help_relation (help_topic_id,help_keyword_id) values (68,79);
+insert into help_relation (help_topic_id,help_keyword_id) values (23,79);
+insert into help_relation (help_topic_id,help_keyword_id) values (363,79);
+insert into help_relation (help_topic_id,help_keyword_id) values (269,80);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,81);
+insert into help_relation (help_topic_id,help_keyword_id) values (26,82);
+insert into help_relation (help_topic_id,help_keyword_id) values (129,83);
+insert into help_relation (help_topic_id,help_keyword_id) values (25,83);
+insert into help_relation (help_topic_id,help_keyword_id) values (236,83);
+insert into help_relation (help_topic_id,help_keyword_id) values (119,84);
+insert into help_relation (help_topic_id,help_keyword_id) values (70,85);
+insert into help_relation (help_topic_id,help_keyword_id) values (19,85);
+insert into help_relation (help_topic_id,help_keyword_id) values (147,86);
+insert into help_relation (help_topic_id,help_keyword_id) values (128,87);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,87);
+insert into help_relation (help_topic_id,help_keyword_id) values (204,87);
+insert into help_relation (help_topic_id,help_keyword_id) values (168,87);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,87);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,88);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,88);
+insert into help_relation (help_topic_id,help_keyword_id) values (404,89);
+insert into help_relation (help_topic_id,help_keyword_id) values (283,89);
+insert into help_relation (help_topic_id,help_keyword_id) values (92,89);
+insert into help_relation (help_topic_id,help_keyword_id) values (408,89);
+insert into help_relation (help_topic_id,help_keyword_id) values (30,90);
+insert into help_relation (help_topic_id,help_keyword_id) values (225,90);
+insert into help_relation (help_topic_id,help_keyword_id) values (124,90);
+insert into help_relation (help_topic_id,help_keyword_id) values (430,91);
+insert into help_relation (help_topic_id,help_keyword_id) values (101,92);
+insert into help_relation (help_topic_id,help_keyword_id) values (188,93);
+insert into help_relation (help_topic_id,help_keyword_id) values (112,94);
+insert into help_relation (help_topic_id,help_keyword_id) values (288,94);
+insert into help_relation (help_topic_id,help_keyword_id) values (67,94);
+insert into help_relation (help_topic_id,help_keyword_id) values (119,94);
+insert into help_relation (help_topic_id,help_keyword_id) values (410,94);
+insert into help_relation (help_topic_id,help_keyword_id) values (157,94);
+insert into help_relation (help_topic_id,help_keyword_id) values (181,94);
+insert into help_relation (help_topic_id,help_keyword_id) values (428,94);
+insert into help_relation (help_topic_id,help_keyword_id) values (35,94);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,94);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,95);
+insert into help_relation (help_topic_id,help_keyword_id) values (223,96);
+insert into help_relation (help_topic_id,help_keyword_id) values (107,96);
+insert into help_relation (help_topic_id,help_keyword_id) values (328,96);
+insert into help_relation (help_topic_id,help_keyword_id) values (26,96);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,97);
+insert into help_relation (help_topic_id,help_keyword_id) values (47,97);
+insert into help_relation (help_topic_id,help_keyword_id) values (284,97);
+insert into help_relation (help_topic_id,help_keyword_id) values (319,97);
+insert into help_relation (help_topic_id,help_keyword_id) values (190,97);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,98);
+insert into help_relation (help_topic_id,help_keyword_id) values (180,98);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,98);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,99);
+insert into help_relation (help_topic_id,help_keyword_id) values (160,100);
+insert into help_relation (help_topic_id,help_keyword_id) values (0,101);
+insert into help_relation (help_topic_id,help_keyword_id) values (44,102);
+insert into help_relation (help_topic_id,help_keyword_id) values (160,103);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,104);
+insert into help_relation (help_topic_id,help_keyword_id) values (270,105);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,106);
+insert into help_relation (help_topic_id,help_keyword_id) values (394,107);
+insert into help_relation (help_topic_id,help_keyword_id) values (244,108);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,109);
+insert into help_relation (help_topic_id,help_keyword_id) values (68,110);
+insert into help_relation (help_topic_id,help_keyword_id) values (363,110);
+insert into help_relation (help_topic_id,help_keyword_id) values (44,111);
+insert into help_relation (help_topic_id,help_keyword_id) values (281,111);
+insert into help_relation (help_topic_id,help_keyword_id) values (68,112);
+insert into help_relation (help_topic_id,help_keyword_id) values (363,112);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,113);
+insert into help_relation (help_topic_id,help_keyword_id) values (269,114);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,115);
+insert into help_relation (help_topic_id,help_keyword_id) values (95,115);
+insert into help_relation (help_topic_id,help_keyword_id) values (394,115);
+insert into help_relation (help_topic_id,help_keyword_id) values (40,115);
+insert into help_relation (help_topic_id,help_keyword_id) values (99,115);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,115);
+insert into help_relation (help_topic_id,help_keyword_id) values (314,115);
+insert into help_relation (help_topic_id,help_keyword_id) values (386,116);
+insert into help_relation (help_topic_id,help_keyword_id) values (29,116);
+insert into help_relation (help_topic_id,help_keyword_id) values (85,116);
+insert into help_relation (help_topic_id,help_keyword_id) values (0,117);
+insert into help_relation (help_topic_id,help_keyword_id) values (23,118);
+insert into help_relation (help_topic_id,help_keyword_id) values (26,119);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,120);
+insert into help_relation (help_topic_id,help_keyword_id) values (177,121);
+insert into help_relation (help_topic_id,help_keyword_id) values (269,122);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,122);
+insert into help_relation (help_topic_id,help_keyword_id) values (154,122);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,122);
+insert into help_relation (help_topic_id,help_keyword_id) values (364,122);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,123);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,124);
+insert into help_relation (help_topic_id,help_keyword_id) values (178,125);
+insert into help_relation (help_topic_id,help_keyword_id) values (154,126);
+insert into help_relation (help_topic_id,help_keyword_id) values (13,127);
+insert into help_relation (help_topic_id,help_keyword_id) values (360,127);
+insert into help_relation (help_topic_id,help_keyword_id) values (380,127);
+insert into help_relation (help_topic_id,help_keyword_id) values (284,127);
+insert into help_relation (help_topic_id,help_keyword_id) values (178,127);
+insert into help_relation (help_topic_id,help_keyword_id) values (353,127);
+insert into help_relation (help_topic_id,help_keyword_id) values (258,127);
+insert into help_relation (help_topic_id,help_keyword_id) values (366,128);
+insert into help_relation (help_topic_id,help_keyword_id) values (178,129);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,130);
+insert into help_relation (help_topic_id,help_keyword_id) values (366,130);
+insert into help_relation (help_topic_id,help_keyword_id) values (213,131);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,132);
+insert into help_relation (help_topic_id,help_keyword_id) values (49,133);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,133);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,134);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,134);
+insert into help_relation (help_topic_id,help_keyword_id) values (142,135);
+insert into help_relation (help_topic_id,help_keyword_id) values (25,136);
+insert into help_relation (help_topic_id,help_keyword_id) values (133,136);
+insert into help_relation (help_topic_id,help_keyword_id) values (386,137);
+insert into help_relation (help_topic_id,help_keyword_id) values (366,138);
+insert into help_relation (help_topic_id,help_keyword_id) values (40,139);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,139);
+insert into help_relation (help_topic_id,help_keyword_id) values (67,139);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,139);
+insert into help_relation (help_topic_id,help_keyword_id) values (315,139);
+insert into help_relation (help_topic_id,help_keyword_id) values (0,140);
+insert into help_relation (help_topic_id,help_keyword_id) values (40,140);
+insert into help_relation (help_topic_id,help_keyword_id) values (213,141);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,142);
+insert into help_relation (help_topic_id,help_keyword_id) values (270,143);
+insert into help_relation (help_topic_id,help_keyword_id) values (434,143);
+insert into help_relation (help_topic_id,help_keyword_id) values (177,143);
+insert into help_relation (help_topic_id,help_keyword_id) values (19,143);
+insert into help_relation (help_topic_id,help_keyword_id) values (328,143);
+insert into help_relation (help_topic_id,help_keyword_id) values (142,143);
+insert into help_relation (help_topic_id,help_keyword_id) values (105,143);
+insert into help_relation (help_topic_id,help_keyword_id) values (130,144);
+insert into help_relation (help_topic_id,help_keyword_id) values (178,144);
+insert into help_relation (help_topic_id,help_keyword_id) values (357,145);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,146);
+insert into help_relation (help_topic_id,help_keyword_id) values (410,147);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,147);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,147);
+insert into help_relation (help_topic_id,help_keyword_id) values (261,148);
+insert into help_relation (help_topic_id,help_keyword_id) values (81,148);
+insert into help_relation (help_topic_id,help_keyword_id) values (124,148);
+insert into help_relation (help_topic_id,help_keyword_id) values (118,149);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,149);
+insert into help_relation (help_topic_id,help_keyword_id) values (119,150);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,151);
+insert into help_relation (help_topic_id,help_keyword_id) values (134,151);
+insert into help_relation (help_topic_id,help_keyword_id) values (394,152);
+insert into help_relation (help_topic_id,help_keyword_id) values (269,153);
+insert into help_relation (help_topic_id,help_keyword_id) values (154,153);
+insert into help_relation (help_topic_id,help_keyword_id) values (364,153);
+insert into help_relation (help_topic_id,help_keyword_id) values (168,153);
+insert into help_relation (help_topic_id,help_keyword_id) values (261,154);
+insert into help_relation (help_topic_id,help_keyword_id) values (95,154);
+insert into help_relation (help_topic_id,help_keyword_id) values (366,154);
+insert into help_relation (help_topic_id,help_keyword_id) values (314,154);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,155);
+insert into help_relation (help_topic_id,help_keyword_id) values (328,156);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,157);
+insert into help_relation (help_topic_id,help_keyword_id) values (344,158);
+insert into help_relation (help_topic_id,help_keyword_id) values (403,159);
+insert into help_relation (help_topic_id,help_keyword_id) values (390,160);
+insert into help_relation (help_topic_id,help_keyword_id) values (106,161);
+insert into help_relation (help_topic_id,help_keyword_id) values (386,161);
+insert into help_relation (help_topic_id,help_keyword_id) values (157,161);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,162);
+insert into help_relation (help_topic_id,help_keyword_id) values (68,163);
+insert into help_relation (help_topic_id,help_keyword_id) values (363,163);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,164);
+insert into help_relation (help_topic_id,help_keyword_id) values (0,165);
+insert into help_relation (help_topic_id,help_keyword_id) values (29,165);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,165);
+insert into help_relation (help_topic_id,help_keyword_id) values (366,166);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,167);
+insert into help_relation (help_topic_id,help_keyword_id) values (119,168);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,169);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,170);
+insert into help_relation (help_topic_id,help_keyword_id) values (164,170);
+insert into help_relation (help_topic_id,help_keyword_id) values (0,171);
+insert into help_relation (help_topic_id,help_keyword_id) values (188,172);
+insert into help_relation (help_topic_id,help_keyword_id) values (70,173);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,173);
+insert into help_relation (help_topic_id,help_keyword_id) values (354,174);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,175);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,176);
+insert into help_relation (help_topic_id,help_keyword_id) values (366,176);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,177);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,178);
+insert into help_relation (help_topic_id,help_keyword_id) values (128,179);
+insert into help_relation (help_topic_id,help_keyword_id) values (29,179);
+insert into help_relation (help_topic_id,help_keyword_id) values (40,179);
+insert into help_relation (help_topic_id,help_keyword_id) values (67,179);
+insert into help_relation (help_topic_id,help_keyword_id) values (35,179);
+insert into help_relation (help_topic_id,help_keyword_id) values (366,179);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,180);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,181);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,182);
+insert into help_relation (help_topic_id,help_keyword_id) values (129,182);
+insert into help_relation (help_topic_id,help_keyword_id) values (265,182);
+insert into help_relation (help_topic_id,help_keyword_id) values (161,182);
+insert into help_relation (help_topic_id,help_keyword_id) values (181,182);
+insert into help_relation (help_topic_id,help_keyword_id) values (178,183);
+insert into help_relation (help_topic_id,help_keyword_id) values (420,184);
+insert into help_relation (help_topic_id,help_keyword_id) values (400,185);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,186);
+insert into help_relation (help_topic_id,help_keyword_id) values (0,186);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,186);
+insert into help_relation (help_topic_id,help_keyword_id) values (261,186);
+insert into help_relation (help_topic_id,help_keyword_id) values (69,186);
+insert into help_relation (help_topic_id,help_keyword_id) values (81,186);
+insert into help_relation (help_topic_id,help_keyword_id) values (49,186);
+insert into help_relation (help_topic_id,help_keyword_id) values (180,186);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,186);
+insert into help_relation (help_topic_id,help_keyword_id) values (368,187);
+insert into help_relation (help_topic_id,help_keyword_id) values (311,188);
+insert into help_relation (help_topic_id,help_keyword_id) values (232,189);
+insert into help_relation (help_topic_id,help_keyword_id) values (404,190);
+insert into help_relation (help_topic_id,help_keyword_id) values (0,191);
+insert into help_relation (help_topic_id,help_keyword_id) values (218,192);
+insert into help_relation (help_topic_id,help_keyword_id) values (371,192);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,193);
+insert into help_relation (help_topic_id,help_keyword_id) values (269,194);
+insert into help_relation (help_topic_id,help_keyword_id) values (270,195);
+insert into help_relation (help_topic_id,help_keyword_id) values (434,195);
+insert into help_relation (help_topic_id,help_keyword_id) values (177,195);
+insert into help_relation (help_topic_id,help_keyword_id) values (19,195);
+insert into help_relation (help_topic_id,help_keyword_id) values (142,195);
+insert into help_relation (help_topic_id,help_keyword_id) values (105,195);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,196);
+insert into help_relation (help_topic_id,help_keyword_id) values (160,197);
+insert into help_relation (help_topic_id,help_keyword_id) values (160,198);
+insert into help_relation (help_topic_id,help_keyword_id) values (335,199);
+insert into help_relation (help_topic_id,help_keyword_id) values (288,200);
+insert into help_relation (help_topic_id,help_keyword_id) values (218,200);
+insert into help_relation (help_topic_id,help_keyword_id) values (371,200);
+insert into help_relation (help_topic_id,help_keyword_id) values (181,200);
+insert into help_relation (help_topic_id,help_keyword_id) values (160,201);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,202);
+insert into help_relation (help_topic_id,help_keyword_id) values (319,202);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,202);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,202);
+insert into help_relation (help_topic_id,help_keyword_id) values (237,203);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,203);
+insert into help_relation (help_topic_id,help_keyword_id) values (49,203);
+insert into help_relation (help_topic_id,help_keyword_id) values (311,203);
+insert into help_relation (help_topic_id,help_keyword_id) values (314,203);
+insert into help_relation (help_topic_id,help_keyword_id) values (236,203);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,204);
+insert into help_relation (help_topic_id,help_keyword_id) values (410,205);
+insert into help_relation (help_topic_id,help_keyword_id) values (25,205);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,205);
+insert into help_relation (help_topic_id,help_keyword_id) values (236,205);
+insert into help_relation (help_topic_id,help_keyword_id) values (160,206);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,207);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,208);
+insert into help_relation (help_topic_id,help_keyword_id) values (266,209);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,210);
+insert into help_relation (help_topic_id,help_keyword_id) values (70,211);
+insert into help_relation (help_topic_id,help_keyword_id) values (160,212);
+insert into help_relation (help_topic_id,help_keyword_id) values (285,213);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,213);
+insert into help_relation (help_topic_id,help_keyword_id) values (315,213);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,214);
+insert into help_relation (help_topic_id,help_keyword_id) values (271,215);
+insert into help_relation (help_topic_id,help_keyword_id) values (327,215);
+insert into help_relation (help_topic_id,help_keyword_id) values (328,215);
+insert into help_relation (help_topic_id,help_keyword_id) values (177,216);
+insert into help_relation (help_topic_id,help_keyword_id) values (70,217);
+insert into help_relation (help_topic_id,help_keyword_id) values (364,218);
+insert into help_relation (help_topic_id,help_keyword_id) values (208,219);
+insert into help_relation (help_topic_id,help_keyword_id) values (119,220);
+insert into help_relation (help_topic_id,help_keyword_id) values (124,221);
+insert into help_relation (help_topic_id,help_keyword_id) values (13,222);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,222);
+insert into help_relation (help_topic_id,help_keyword_id) values (16,222);
+insert into help_relation (help_topic_id,help_keyword_id) values (129,222);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,222);
+insert into help_relation (help_topic_id,help_keyword_id) values (258,222);
+insert into help_relation (help_topic_id,help_keyword_id) values (237,222);
+insert into help_relation (help_topic_id,help_keyword_id) values (265,222);
+insert into help_relation (help_topic_id,help_keyword_id) values (49,222);
+insert into help_relation (help_topic_id,help_keyword_id) values (178,222);
+insert into help_relation (help_topic_id,help_keyword_id) values (180,222);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,223);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,224);
+insert into help_relation (help_topic_id,help_keyword_id) values (197,225);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,226);
+insert into help_relation (help_topic_id,help_keyword_id) values (391,226);
+insert into help_relation (help_topic_id,help_keyword_id) values (256,227);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,227);
+insert into help_relation (help_topic_id,help_keyword_id) values (319,227);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,228);
+insert into help_relation (help_topic_id,help_keyword_id) values (329,229);
+insert into help_relation (help_topic_id,help_keyword_id) values (120,230);
+insert into help_relation (help_topic_id,help_keyword_id) values (86,231);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,232);
+insert into help_relation (help_topic_id,help_keyword_id) values (293,233);
+insert into help_relation (help_topic_id,help_keyword_id) values (361,234);
+insert into help_relation (help_topic_id,help_keyword_id) values (35,235);
+insert into help_relation (help_topic_id,help_keyword_id) values (298,236);
+insert into help_relation (help_topic_id,help_keyword_id) values (218,237);
+insert into help_relation (help_topic_id,help_keyword_id) values (402,238);
+insert into help_relation (help_topic_id,help_keyword_id) values (256,239);
+insert into help_relation (help_topic_id,help_keyword_id) values (288,239);
+insert into help_relation (help_topic_id,help_keyword_id) values (319,239);
+insert into help_relation (help_topic_id,help_keyword_id) values (134,239);
+insert into help_relation (help_topic_id,help_keyword_id) values (237,239);
+insert into help_relation (help_topic_id,help_keyword_id) values (426,239);
+insert into help_relation (help_topic_id,help_keyword_id) values (265,239);
+insert into help_relation (help_topic_id,help_keyword_id) values (13,239);
+insert into help_relation (help_topic_id,help_keyword_id) values (17,239);
+insert into help_relation (help_topic_id,help_keyword_id) values (190,239);
+insert into help_relation (help_topic_id,help_keyword_id) values (20,239);
+insert into help_relation (help_topic_id,help_keyword_id) values (118,239);
+insert into help_relation (help_topic_id,help_keyword_id) values (47,239);
+insert into help_relation (help_topic_id,help_keyword_id) values (284,239);
+insert into help_relation (help_topic_id,help_keyword_id) values (99,239);
+insert into help_relation (help_topic_id,help_keyword_id) values (391,239);
+insert into help_relation (help_topic_id,help_keyword_id) values (164,239);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,240);
+insert into help_relation (help_topic_id,help_keyword_id) values (262,241);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,241);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,241);
+insert into help_relation (help_topic_id,help_keyword_id) values (283,242);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,243);
+insert into help_relation (help_topic_id,help_keyword_id) values (99,244);
+insert into help_relation (help_topic_id,help_keyword_id) values (68,245);
+insert into help_relation (help_topic_id,help_keyword_id) values (23,245);
+insert into help_relation (help_topic_id,help_keyword_id) values (282,245);
+insert into help_relation (help_topic_id,help_keyword_id) values (363,245);
+insert into help_relation (help_topic_id,help_keyword_id) values (298,245);
+insert into help_relation (help_topic_id,help_keyword_id) values (430,245);
+insert into help_relation (help_topic_id,help_keyword_id) values (196,245);
+insert into help_relation (help_topic_id,help_keyword_id) values (26,246);
+insert into help_relation (help_topic_id,help_keyword_id) values (120,247);
+insert into help_relation (help_topic_id,help_keyword_id) values (272,247);
+insert into help_relation (help_topic_id,help_keyword_id) values (270,248);
+insert into help_relation (help_topic_id,help_keyword_id) values (85,249);
+insert into help_relation (help_topic_id,help_keyword_id) values (26,250);
+insert into help_relation (help_topic_id,help_keyword_id) values (221,251);
+insert into help_relation (help_topic_id,help_keyword_id) values (35,251);
+insert into help_relation (help_topic_id,help_keyword_id) values (217,251);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,252);
+insert into help_relation (help_topic_id,help_keyword_id) values (134,252);
+insert into help_relation (help_topic_id,help_keyword_id) values (114,253);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,254);
+insert into help_relation (help_topic_id,help_keyword_id) values (160,255);
+insert into help_relation (help_topic_id,help_keyword_id) values (157,256);
+insert into help_relation (help_topic_id,help_keyword_id) values (394,257);
+insert into help_relation (help_topic_id,help_keyword_id) values (89,258);
+insert into help_relation (help_topic_id,help_keyword_id) values (19,258);
+insert into help_relation (help_topic_id,help_keyword_id) values (26,259);
+insert into help_relation (help_topic_id,help_keyword_id) values (160,260);
+insert into help_relation (help_topic_id,help_keyword_id) values (366,261);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,262);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,263);
+insert into help_relation (help_topic_id,help_keyword_id) values (160,264);
+insert into help_relation (help_topic_id,help_keyword_id) values (26,265);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,266);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,267);
+insert into help_relation (help_topic_id,help_keyword_id) values (329,267);
+insert into help_relation (help_topic_id,help_keyword_id) values (334,268);
+insert into help_relation (help_topic_id,help_keyword_id) values (70,269);
+insert into help_relation (help_topic_id,help_keyword_id) values (99,269);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,269);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,270);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,271);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,272);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,273);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,274);
+insert into help_relation (help_topic_id,help_keyword_id) values (387,275);
+insert into help_relation (help_topic_id,help_keyword_id) values (70,276);
+insert into help_relation (help_topic_id,help_keyword_id) values (124,276);
+insert into help_relation (help_topic_id,help_keyword_id) values (160,277);
+insert into help_relation (help_topic_id,help_keyword_id) values (366,278);
+insert into help_relation (help_topic_id,help_keyword_id) values (44,279);
+insert into help_relation (help_topic_id,help_keyword_id) values (281,279);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,280);
+insert into help_relation (help_topic_id,help_keyword_id) values (100,281);
+insert into help_relation (help_topic_id,help_keyword_id) values (160,282);
+insert into help_relation (help_topic_id,help_keyword_id) values (26,283);
+insert into help_relation (help_topic_id,help_keyword_id) values (119,284);
+insert into help_relation (help_topic_id,help_keyword_id) values (386,284);
+insert into help_relation (help_topic_id,help_keyword_id) values (26,285);
+insert into help_relation (help_topic_id,help_keyword_id) values (117,286);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,287);
+insert into help_relation (help_topic_id,help_keyword_id) values (19,288);
+insert into help_relation (help_topic_id,help_keyword_id) values (380,289);
+insert into help_relation (help_topic_id,help_keyword_id) values (49,289);
+insert into help_relation (help_topic_id,help_keyword_id) values (133,289);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,289);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,289);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,290);
+insert into help_relation (help_topic_id,help_keyword_id) values (0,291);
+insert into help_relation (help_topic_id,help_keyword_id) values (0,292);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,292);
+insert into help_relation (help_topic_id,help_keyword_id) values (0,293);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,294);
+insert into help_relation (help_topic_id,help_keyword_id) values (366,295);
+insert into help_relation (help_topic_id,help_keyword_id) values (243,296);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,297);
+insert into help_relation (help_topic_id,help_keyword_id) values (403,298);
+insert into help_relation (help_topic_id,help_keyword_id) values (328,298);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,299);
+insert into help_relation (help_topic_id,help_keyword_id) values (85,300);
+insert into help_relation (help_topic_id,help_keyword_id) values (428,301);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,302);
+insert into help_relation (help_topic_id,help_keyword_id) values (236,303);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,304);
+insert into help_relation (help_topic_id,help_keyword_id) values (386,305);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,306);
+insert into help_relation (help_topic_id,help_keyword_id) values (119,307);
+insert into help_relation (help_topic_id,help_keyword_id) values (282,307);
+insert into help_relation (help_topic_id,help_keyword_id) values (361,308);
+insert into help_relation (help_topic_id,help_keyword_id) values (26,309);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,310);
+insert into help_relation (help_topic_id,help_keyword_id) values (26,311);
+insert into help_relation (help_topic_id,help_keyword_id) values (410,312);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,312);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,312);
+insert into help_relation (help_topic_id,help_keyword_id) values (431,313);
+insert into help_relation (help_topic_id,help_keyword_id) values (386,314);
+insert into help_relation (help_topic_id,help_keyword_id) values (105,315);
+insert into help_relation (help_topic_id,help_keyword_id) values (410,316);
+insert into help_relation (help_topic_id,help_keyword_id) values (25,316);
+insert into help_relation (help_topic_id,help_keyword_id) values (236,316);
+insert into help_relation (help_topic_id,help_keyword_id) values (46,317);
+insert into help_relation (help_topic_id,help_keyword_id) values (322,318);
+insert into help_relation (help_topic_id,help_keyword_id) values (386,319);
+insert into help_relation (help_topic_id,help_keyword_id) values (129,320);
+insert into help_relation (help_topic_id,help_keyword_id) values (268,320);
+insert into help_relation (help_topic_id,help_keyword_id) values (283,321);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,322);
+insert into help_relation (help_topic_id,help_keyword_id) values (119,323);
+insert into help_relation (help_topic_id,help_keyword_id) values (281,323);
+insert into help_relation (help_topic_id,help_keyword_id) values (417,324);
+insert into help_relation (help_topic_id,help_keyword_id) values (23,324);
+insert into help_relation (help_topic_id,help_keyword_id) values (129,324);
+insert into help_relation (help_topic_id,help_keyword_id) values (25,324);
+insert into help_relation (help_topic_id,help_keyword_id) values (161,324);
+insert into help_relation (help_topic_id,help_keyword_id) values (236,324);
+insert into help_relation (help_topic_id,help_keyword_id) values (398,325);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,326);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,327);
+insert into help_relation (help_topic_id,help_keyword_id) values (85,328);
+insert into help_relation (help_topic_id,help_keyword_id) values (269,329);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,330);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,330);
+insert into help_relation (help_topic_id,help_keyword_id) values (40,331);
+insert into help_relation (help_topic_id,help_keyword_id) values (99,331);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,331);
+insert into help_relation (help_topic_id,help_keyword_id) values (67,331);
+insert into help_relation (help_topic_id,help_keyword_id) values (85,331);
+insert into help_relation (help_topic_id,help_keyword_id) values (410,332);
+insert into help_relation (help_topic_id,help_keyword_id) values (128,332);
+insert into help_relation (help_topic_id,help_keyword_id) values (49,332);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,332);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,332);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,333);
+insert into help_relation (help_topic_id,help_keyword_id) values (196,334);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,335);
+insert into help_relation (help_topic_id,help_keyword_id) values (128,336);
+insert into help_relation (help_topic_id,help_keyword_id) values (35,336);
+insert into help_relation (help_topic_id,help_keyword_id) values (423,336);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,337);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,337);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,338);
+insert into help_relation (help_topic_id,help_keyword_id) values (204,338);
+insert into help_relation (help_topic_id,help_keyword_id) values (410,339);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,339);
+insert into help_relation (help_topic_id,help_keyword_id) values (29,340);
+insert into help_relation (help_topic_id,help_keyword_id) values (106,341);
+insert into help_relation (help_topic_id,help_keyword_id) values (386,341);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,342);
+insert into help_relation (help_topic_id,help_keyword_id) values (129,342);
+insert into help_relation (help_topic_id,help_keyword_id) values (265,342);
+insert into help_relation (help_topic_id,help_keyword_id) values (161,342);
+insert into help_relation (help_topic_id,help_keyword_id) values (410,343);
+insert into help_relation (help_topic_id,help_keyword_id) values (322,343);
+insert into help_relation (help_topic_id,help_keyword_id) values (404,344);
+insert into help_relation (help_topic_id,help_keyword_id) values (30,345);
+insert into help_relation (help_topic_id,help_keyword_id) values (118,345);
+insert into help_relation (help_topic_id,help_keyword_id) values (190,345);
+insert into help_relation (help_topic_id,help_keyword_id) values (44,345);
+insert into help_relation (help_topic_id,help_keyword_id) values (281,345);
+insert into help_relation (help_topic_id,help_keyword_id) values (366,346);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,347);
+insert into help_relation (help_topic_id,help_keyword_id) values (315,347);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,348);
+insert into help_relation (help_topic_id,help_keyword_id) values (366,349);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,350);
+insert into help_relation (help_topic_id,help_keyword_id) values (430,351);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,352);
+insert into help_relation (help_topic_id,help_keyword_id) values (374,353);
+insert into help_relation (help_topic_id,help_keyword_id) values (414,353);
+insert into help_relation (help_topic_id,help_keyword_id) values (336,353);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,353);
+insert into help_relation (help_topic_id,help_keyword_id) values (247,353);
+insert into help_relation (help_topic_id,help_keyword_id) values (315,353);
+insert into help_relation (help_topic_id,help_keyword_id) values (404,354);
+insert into help_relation (help_topic_id,help_keyword_id) values (283,354);
+insert into help_relation (help_topic_id,help_keyword_id) values (29,354);
+insert into help_relation (help_topic_id,help_keyword_id) values (92,354);
+insert into help_relation (help_topic_id,help_keyword_id) values (366,354);
+insert into help_relation (help_topic_id,help_keyword_id) values (408,354);
+insert into help_relation (help_topic_id,help_keyword_id) values (160,355);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,356);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,357);
+insert into help_relation (help_topic_id,help_keyword_id) values (29,357);
+insert into help_relation (help_topic_id,help_keyword_id) values (429,358);
+insert into help_relation (help_topic_id,help_keyword_id) values (22,359);
+insert into help_relation (help_topic_id,help_keyword_id) values (20,360);
+insert into help_relation (help_topic_id,help_keyword_id) values (16,360);
+insert into help_relation (help_topic_id,help_keyword_id) values (224,360);
+insert into help_relation (help_topic_id,help_keyword_id) values (426,361);
+insert into help_relation (help_topic_id,help_keyword_id) values (170,362);
+insert into help_relation (help_topic_id,help_keyword_id) values (128,363);
+insert into help_relation (help_topic_id,help_keyword_id) values (309,363);
+insert into help_relation (help_topic_id,help_keyword_id) values (180,364);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,365);
+insert into help_relation (help_topic_id,help_keyword_id) values (85,365);
+insert into help_relation (help_topic_id,help_keyword_id) values (401,365);
+insert into help_relation (help_topic_id,help_keyword_id) values (301,366);
+insert into help_relation (help_topic_id,help_keyword_id) values (256,367);
+insert into help_relation (help_topic_id,help_keyword_id) values (95,367);
+insert into help_relation (help_topic_id,help_keyword_id) values (47,367);
+insert into help_relation (help_topic_id,help_keyword_id) values (160,367);
+insert into help_relation (help_topic_id,help_keyword_id) values (225,367);
+insert into help_relation (help_topic_id,help_keyword_id) values (314,367);
+insert into help_relation (help_topic_id,help_keyword_id) values (177,368);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,368);
+insert into help_relation (help_topic_id,help_keyword_id) values (169,369);
+insert into help_relation (help_topic_id,help_keyword_id) values (406,370);
+
diff --git a/fill_help_tables.sql-5.0.15 b/fill_help_tables.sql-5.0.15
deleted file mode 100644
index 34ebe19..0000000
--- a/fill_help_tables.sql-5.0.15
+++ /dev/null
@@ -1,113 +0,0 @@
--- Copyright (C) 2000-2005 MySQL AB
---
--- This program is free software; you can redistribute it and/or modify
--- it under the terms of the GNU General Public License as published by
--- the Free Software Foundation; either version 2 of the License, or
--- (at your option) any later version.
---
--- This program is distributed in the hope that it will be useful,
--- but WITHOUT ANY WARRANTY; without even the implied warranty of
--- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
--- GNU General Public License for more details.
---
--- You should have received a copy of the GNU General Public License
--- along with this program; if not, write to the Free Software
--- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-delete from help_topic;
-delete from help_category;
-delete from help_keyword;
-delete from help_relation;
-
-insert into help_category (help_category_id,name,parent_category_id) values (0,"Polygon properties",24),(1,"Column Types",15),(2,"Geometry constructors",24),(3,"WKT",24),(4,"Numeric Functions",22),(5,"GeometryCollection properties",24),(6,"Data Manipulation",15),(7,"Administration",15),(8,"MBR",24),(9,"Control flow functions",22),(10,"Transactions",15),(11,"Geometry relations",24),(12,"Functions and Modifiers for Use with GROUP BY Clauses",22),(13,"WKB",24),(14,"Date and Time Functions",22);
-insert into help_category (help_category_id,name,parent_category_id) values (15,"Contents",-1),(16,"Point properties",24),(17,"Encryption Functions",22),(18,"LineString properties",24),(19,"Geometry properties",24),(20,"Logical operators",22),(21,"Miscellaneous Functions",22),(22,"Functions",15),(23,"String Functions",22),(24,"Geographic features",15),(25,"Information Functions",22),(26,"Comparison operators",22),(27,"Bit Functions",22),(28,"Data Definition",15);
-
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (0,6,"JOIN","MySQL supports the following JOIN syntaxes for the\ntable_references part of SELECT statements and multiple-table\nDELETE and UPDATE statements:\n\ntable_reference, table_reference\ntable_reference [INNER | CROSS] JOIN table_reference [join_condition]\ntable_reference STRAIGHT_JOIN table_reference\ntable_reference LEFT [OUTER] JOIN table_reference join_condition\ntable_reference NATURAL [LEFT [OUTER]] JOIN table_reference\n{ OJ table_reference LEFT OUTER JOIN table_reference\n ON conditional_expr }\ntable_reference RIGHT [OUTER] JOIN table_reference join_condition\ntable_reference NATURAL [RIGHT [OUTER]] JOIN table_reference\n\ntable_reference is defined as:\n\ntbl_name [[AS] alias]\n [[USE INDEX (key_list)]\n | [IGNORE INDEX (key_list)]\n | [FORCE INDEX (key_list)]]\n\njoin_condition is defined as:\n\nON conditional_expr | USING (column_list)\n","mysql> SELECT table1.* FROM table1\n -> LEFT JOIN table2 ON table1.id=table2.id\n -> WHERE table2.id IS NULL;"),(1,23,"HEX"," HEX(N_or_S)\n\nIf N_OR_S is a number, returns a string representation of the hexadecimal\nvalue of N, where N is a longlong (BIGINT) number.\nThis is equivalent to CONV(N,10,16).\n\nFrom MySQL 4.0.1 and up,\nif N_OR_S is a string, returns a hexadecimal string of N_OR_S\nwhere each character in N_OR_S is converted to two hexadecimal digits.\n","mysql> SELECT HEX(255);\n -> 'FF'\nmysql> SELECT 0x616263;\n -> 'abc'\nmysql> SELECT HEX('abc');\n -> 616263"),(2,23,"REPLACE"," REPLACE(str,from_str,to_str)\nReturns the string str with all occurrences of the string\nfrom_str replaced by the string to_str.\n","mysql> SELECT REPLACE('www.mysql.com', 'w', 'Ww');\n -> 'WwWwWw.mysql.com'"),(3,23,"REPEAT"," REPEAT(str,count)\nReturns a string consisting of the string str repeated count\ntimes. If count <= 0, returns an empty string. Returns NULL if\nstr or count are NULL.\n","mysql> SELECT REPEAT('MySQL', 3);\n -> 'MySQLMySQLMySQL'"),(4,11,"CONTAINS"," Contains(g1,g2)\nReturns 1 or 0 to indicate whether or not g1 completely contains\ng2.\n",""),(5,19,"SRID"," SRID(g)\nReturns an integer indicating the Spatial Reference System ID for the geometry\nvalue g.\n\nIn MySQL, the SRID value is just an integer associated with the geometry\nvalue. All calculations are done assuming Euclidean (planar) geometry.\n","mysql> SELECT SRID(GeomFromText('LineString(1 1,2 2)',101));\n+-----------------------------------------------+\n| SRID(GeomFromText('LineString(1 1,2 2)',101)) |\n+-----------------------------------------------+\n| 101 |\n+-----------------------------------------------+"),(6,14,"CURRENT_TIMESTAMP"," CURRENT_TIMESTAMP\n CURRENT_TIMESTAMP()\n\nCURRENT_TIMESTAMP and CURRENT_TIMESTAMP() are synonyms for\nNOW().\n",""),(7,12,"VARIANCE"," VARIANCE(expr)\nReturns the population standard variance of expr. This is an\nextension to standard SQL, available in MySQL 4.1 or later. As of MySQL\n5.0.3, the standard SQL function VAR_POP() can be used instead.\n",""),(8,12,"VAR_SAMP"," VAR_SAMP(expr)\nReturns the sample variance of expr. That is, the denominator is the\nnumber of rows minus one. This function was added in MySQL 5.0.3.\n",""),(9,23,"CONCAT"," CONCAT(str1,str2,...)\nReturns the string that results from concatenating the arguments. Returns\nNULL if any argument is NULL. May have one or more arguments.\nIf all arguments are non-binary strings, the result is a non-binary string.\nIf the arguments include any binary strings, the result is a binary string.\nA numeric argument is converted to its equivalent binary string form.\n","mysql> SELECT CONCAT('My', 'S', 'QL');\n -> 'MySQL'\nmysql> SELECT CONCAT('My', NULL, 'QL');\n -> NULL\nmysql> SELECT CONCAT(14.3);\n -> '14.3'"),(10,24,"GEOMETRY HIERARCHY","Geometry is the base class. It's an abstract class.\nThe instantiable subclasses of Geometry are restricted to zero-, one-,\nand two-dimensional geometric objects that exist in\ntwo-dimensional coordinate space. All instantiable geometry classes are\ndefined so that valid instances of a geometry class are topologically closed\n(that is, all defined geometries include their boundary).\n\nThe base Geometry class has subclasses for Point,\nCurve, Surface, and GeometryCollection:\n\n\n --- Point represents zero-dimensional objects.\n\n --- Curve represents one-dimensional objects, and has subclass\nLineString, with sub-subclasses Line and LinearRing.\n\n --- Surface is designed for two-dimensional objects and\nhas subclass Polygon.\n\n --- GeometryCollection\nhas specialized zero-, one-, and two-dimensional collection classes named\nMultiPoint, MultiLineString, and MultiPolygon\nfor modeling geometries corresponding to collections of\nPoints, LineStrings, and Polygons, respectively.\nMultiCurve and MultiSurface are introduced as abstract superclasses\nthat generalize the collection interfaces to handle Curves and Surfaces.\n\n\nGeometry, Curve, Surface, MultiCurve,\nand MultiSurface are defined as non-instantiable classes.\nThey define a common set of methods for their subclasses and\nare included for extensibility.\n\nPoint, LineString, Polygon, GeometryCollection,\nMultiPoint, MultiLineString, and\nMultiPolygon are instantiable classes.\n",""),(11,23,"CHAR FUNCTION"," CHAR(N,...)\nCHAR() interprets the arguments as integers and returns a string\nconsisting of the characters given by the code values of those\nintegers. NULL values are skipped.\n","mysql> SELECT CHAR(77,121,83,81,'76');\n -> 'MySQL'\nmysql> SELECT CHAR(77,77.3,'77.3');\n -> 'MMM'"),(12,1,"DATETIME","A date and time combination. The supported range is '1000-01-01\n00:00:00' to '9999-12-31 23:59:59'. MySQL displays\nDATETIME values in 'YYYY-MM-DD HH:MM:SS' format, but allows you\nto assign values to DATETIME columns using either strings or numbers.\n",""),(13,23,"LOWER"," LOWER(str)\nReturns the string str with all characters changed to lowercase\naccording to the current character set mapping (the default is ISO-8859-1\nLatin1).\n","mysql> SELECT LOWER('QUADRATICALLY');\n -> 'quadratically'"),(14,14,"MONTH"," MONTH(date)\nReturns the month for date, in the range 1 to 12.\n","mysql> SELECT MONTH('1998-02-03');\n -> 2");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (15,1,"TINYINT"," TINYINT[(M)] [UNSIGNED] [ZEROFILL]\n\nA very small integer. The signed range is -128 to 127. The\nunsigned range is 0 to 255.\n",""),(16,18,"ISCLOSED"," IsClosed(ls)\nReturns 1 if the LineString value ls is closed\n(that is, its StartPoint() and EndPoint() values are the same).\nReturns 0 if ls is not closed, and -1 if it is NULL.\n","mysql> SET @ls = 'LineString(1 1,2 2,3 3)';\nmysql> SELECT IsClosed(GeomFromText(@ls));\n+-----------------------------+\n| IsClosed(GeomFromText(@ls)) |\n+-----------------------------+\n| 0 |\n+-----------------------------+"),(17,21,"MASTER_POS_WAIT"," MASTER_POS_WAIT(log_name,log_pos[,timeout])\n\nThis function is useful for control of master/slave synchronization.\nIt blocks until the slave has read and applied all updates up to the specified\nposition in the master log.\nThe return value is the number of log events it had to wait for to get to\nthe specified position. The function returns NULL if the slave SQL thread\nis not started, the slave's master information is not initialized, the\narguments are incorrect, or an error occurs. It returns -1 if the\ntimeout has been exceeded. If the slave SQL thread stops while\nMASTER_POS_WAIT() is waiting, the function returns NULL.\nIf the slave is past the specified position, the function returns\nimmediately.\n","SELECT MASTER_POS_WAIT('master_log_file', master_log_pos)"),(18,27,"^"," ^\nBitwise XOR:\n","mysql> SELECT 1 ^ 1;\n -> 0\nmysql> SELECT 1 ^ 0;\n -> 1\nmysql> SELECT 11 ^ 3;\n -> 8"),(19,24,"DROP VIEW","DROP VIEW removes one or more views. You must have the DROP\nprivilege for each view.\n\nYou can use the keywords IF EXISTS to prevent an error from occurring\nfor views that don't exist. When this clause is given, a NOTE is\ngenerated for each non-existent view.\nSee also : [SHOW WARNINGS, , SHOW WARNINGS].\n\nRESTRICT and CASCADE, if given, are parsed and ignored.\n","DROP VIEW [IF EXISTS]\n view_name [, view_name] ...\n [RESTRICT | CASCADE]"),(20,14,"DATE OPERATIONS"," DATE_ADD(date,INTERVAL expr type)\n DATE_SUB(date,INTERVAL expr type)\n\nThese functions perform date arithmetic.\ndate is a DATETIME or DATE value specifying the starting\ndate. expr is an expression specifying the interval value to be added\nor subtracted from the starting date. expr is a string; it may start\nwith a '-' for negative intervals. type is a keyword indicating\nhow the expression should be interpreted.\n","mysql> SELECT '1997-12-31 23:59:59' + INTERVAL 1 SECOND;\n -> '1998-01-01 00:00:00'\nmysql> SELECT INTERVAL 1 DAY + '1997-12-31';\n -> '1998-01-01'\nmysql> SELECT '1998-01-01' - INTERVAL 1 SECOND;\n -> '1997-12-31 23:59:59'\nmysql> SELECT DATE_ADD('1997-12-31 23:59:59',\n -> INTERVAL 1 SECOND);\n -> '1998-01-01 00:00:00'\nmysql> SELECT DATE_ADD('1997-12-31 23:59:59',\n -> INTERVAL 1 DAY);\n -> '1998-01-01 23:59:59'\nmysql> SELECT DATE_ADD('1997-12-31 23:59:59',\n -> INTERVAL '1:1' MINUTE_SECOND);\n -> '1998-01-01 00:01:00'\nmysql> SELECT DATE_SUB('1998-01-01 00:00:00',\n -> INTERVAL '1 1:1:1' DAY_SECOND);\n -> '1997-12-30 22:58:59'\nmysql> SELECT DATE_ADD('1998-01-01 00:00:00',\n -> INTERVAL '-1 10' DAY_HOUR);\n -> '1997-12-30 14:00:00'\nmysql> SELECT DATE_SUB('1998-01-02', INTERVAL 31 DAY);\n -> '1997-12-02'\nmysql> SELECT DATE_ADD('1992-12-31 23:59:59.000002',\n -> INTERVAL '1.999999' SECOND_MICROSECOND);\n -> '1993-01-01 00:00:01.000001'"),(21,11,"WITHIN"," Within(g1,g2)\nReturns 1 or 0 to indicate whether or not g1 is spatially within\ng2.\n",""),(22,14,"WEEK"," WEEK(date[,mode])\nThe function returns the week number for date. The two-argument form\nof WEEK() allows you to specify whether the week starts on Sunday or\nMonday and whether the return value should be in the range from 0 to\n53 or from 1 to 53. If the mode argument is\nomitted, the value of the default_week_format system variable is\nused (or 0 before MySQL 4.0.14).\nSee also : [Server system variables].\n\nThe following table describes how the mode argument works:\n\n First day \n Mode of week Range Week 1 is the first week...\n 0 Sunday 0-53 with a Sunday in this year\n 1 Monday 0-53 with more than 3 days this year\n 2 Sunday 1-53 with a Sunday in this year\n 3 Monday 1-53 with more than 3 days this year\n 4 Sunday 0-53 with more than 3 days this year\n 5 Monday 0-53 with a Monday in this year\n 6 Sunday 1-53 with more than 3 days this year\n 7 Monday 1-53 with a Monday in this year\n \n\nA mode value of 3 can be used as of MySQL 4.0.5.\nValues of 4 and above can be used as of MySQL 4.0.17.\n","mysql> SELECT WEEK('1998-02-20');\n -> 7\nmysql> SELECT WEEK('1998-02-20',0);\n -> 7\nmysql> SELECT WEEK('1998-02-20',1);\n -> 8\nmysql> SELECT WEEK('1998-12-31',1);\n -> 53"),(23,10,"LOCK","LOCK TABLES locks tables for the current thread. If any of the tables\nare locked by other threads, it blocks until all locks can be acquired.\nUNLOCK TABLES releases any locks held by the current thread.\nAll tables that are locked by the current thread are implicitly unlocked\nwhen the thread issues another LOCK TABLES, or when the connection\nto the server is closed.\n\nA table lock protects only against inappropriate reads or writes by other\nclients. The client holding the lock, even a read lock, can perform\ntable-level operations such as DROP TABLE.\n","LOCK TABLES\n tbl_name [AS alias] {READ [LOCAL] | [LOW_PRIORITY] WRITE}\n [, tbl_name [AS alias] {READ [LOCAL] | [LOW_PRIORITY] WRITE}] ...\nUNLOCK TABLES"),(24,7,"CHECK","Checks a table or tables for errors. CHECK TABLE works for\nMyISAM and InnoDB tables. For MyISAM tables, the key statistics are updated.\n\nAs of MySQL 5.0.2, CHECK TABLE also can check views for problems, such\nas tables that are referenced in the view definition that no longer exist.\n","CHECK TABLE tbl_name [, tbl_name] ... [option] ...\n\noption = {QUICK | FAST | MEDIUM | EXTENDED | CHANGED}"),(25,7,"RESET SLAVE","RESET SLAVE\n\nMakes the slave forget its replication position in the master's binary logs.\nThis statement is meant to be used for a clean start: It deletes the\n*master.info and *relay-log.info files, all the relay logs,\nand starts a new relay log.\n\nNote: All relay logs are deleted, even if they have not been\ntotally executed by the slave SQL thread. (This is a condition likely to\nexist on a replication slave if you have issued a STOP SLAVE\nstatement or if the slave is highly loaded.)\n\nConnection information stored in the *master.info file is immediately\nreset using any values specified in the corresponding startup options.\nThis information includes values such as master host, master port, master\nuser, and master password. If the slave SQL thread was in the middle of\nreplicating temporary tables when it was stopped, and RESET SLAVE\nis issued, these replicated temporary tables are deleted on the slave.\n\nThis statement was named FLUSH SLAVE before MySQL 3.23.26.\n",""),(26,2,"POLYGON"," Polygon(ls1,ls2,...)\nConstructs a WKB Polygon value from a number of WKB LineString\narguments. If any argument does not represent the WKB of a LinearRing\n(that is, not a closed and simple LineString) the return value\nis NULL.\n",""),(27,14,"MINUTE"," MINUTE(time)\nReturns the minute for time, in the range 0 to 59.\n","mysql> SELECT MINUTE('98-02-03 10:05:03');\n -> 5"),(28,14,"DAY"," DAY(date)\n\nDAY() is a synonym for DAYOFMONTH().\nIt is available as of MySQL 4.1.1.\n",""),(29,23,"MID"," MID(str,pos,len)\n\nMID(str,pos,len) is a synonym for\nSUBSTRING(str,pos,len).\n","");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (30,6,"REPLACE INTO","REPLACE works exactly like INSERT, except that if an old\nrecord in the table has the same value as a new record for a PRIMARY\nKEY or a UNIQUE index, the old record is deleted before the new\nrecord is inserted.\nSee also : [INSERT, ,INSERT].\n\nNote that unless the table has a PRIMARY KEY or UNIQUE index,\nusing a REPLACE statement makes no sense. It becomes equivalent to\nINSERT, because there is no index to be used to determine whether a new\nrow duplicates another.\n\nValues for all columns are taken from the values specified in the\nREPLACE statement. Any missing columns are set to their default\nvalues, just as happens for INSERT. You can't refer to values from\nthe current row and use them in the new row. If you use an assignment such\nas SET col_name = col_name + 1, the reference to the\ncolumn name on the right hand side is treated as\nDEFAULT(col_name), so the assignment is equivalent to SET\ncol_name = DEFAULT(col_name) + 1.\n\nTo be able to use REPLACE, you must have INSERT and\nDELETE privileges for the table.\n","REPLACE [LOW_PRIORITY | DELAYED]\n [INTO] tbl_name [(col_name,...)]\n VALUES ({expr | DEFAULT},...),(...),..."),(31,21,"UUID"," UUID()\n\nReturns a Universal Unique Identifier (UUID) generated\naccording to ``DCE 1.1: Remote Procedure Call'' (Appendix A)\nCAE (Common Applications Environment) Specifications\npublished by The Open Group in October 1997 (Document Number C706).\n\nA UUID is designed as a number that is globally unique in space and\ntime. Two calls to UUID() are expected to generate two different\nvalues, even if these calls are performed on two separate computers that are\nnot connected to each other.\n\nA UUID is a 128-bit number represented by a string\nof five hexadecimal numbers in aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee\nformat:\n\n\n --- The first three numbers are generated from a timestamp.\n\n --- The fourth number preserves temporal uniqueness in case the timestamp value loses\nmonotonicity (for example, due to daylight saving time).\n\n --- The fifth number is an IEEE 802 node number that provides spatial uniqueness. A\nrandom number is substituted if the latter is not available (for example,\nbecause the host computer has no Ethernet card, or we do not know how to\nfind the hardware address of an interface on your operating system). In\nthis case, spatial uniqueness cannot be guaranteed. Nevertheless, a\ncollision should have /very/ low probability.\n\nCurrently, the MAC address of an interface is taken into account only on\nFreeBSD and Linux. On other operating systems, MySQL uses a randomly generated\n48-bit number.\n","mysql> SELECT UUID();\n -> '6ccd780c-baba-1026-9564-0040f4311e29'"),(32,2,"LINESTRING"," LineString(pt1,pt2,...)\nConstructs a WKB LineString value from a number of WKB Point\narguments. If any argument is not a WKB Point, the return value\nis NULL. If the number of Point arguments is less than two,\nthe return value is NULL.\n",""),(33,25,"CONNECTION_ID"," CONNECTION_ID()\nReturns the connection ID (thread ID) for the connection.\nEvery connection has its own unique ID.\n","mysql> SELECT CONNECTION_ID();\n -> 23786"),(34,6,"DELETE","DELETE deletes rows from tbl_name that satisfy the condition\ngiven by where_definition, and returns the number of records deleted.\n\nIf you issue a DELETE statement with no WHERE clause, all\nrows are deleted. A faster way to do this, when you don't want to know\nthe number of deleted rows, is to use TRUNCATE TABLE.\nSee also : [TRUNCATE, , TRUNCATE].\n","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM tbl_name\n [WHERE where_definition]\n [ORDER BY ...]\n [LIMIT row_count]"),(35,4,"ROUND"," ROUND(X)\n ROUND(X,D)\nReturns the argument X, rounded to the nearest integer.\nWith two arguments, returns X rounded to D decimals.\nD can be negative to round D digits left of the decimal\npoint of the value X.\n","mysql> SELECT ROUND(-1.23);\n -> -1\nmysql> SELECT ROUND(-1.58);\n -> -2\nmysql> SELECT ROUND(1.58);\n -> 2\nmysql> SELECT ROUND(1.298, 1);\n -> 1.3\nmysql> SELECT ROUND(1.298, 0);\n -> 1\nmysql> SELECT ROUND(23.298, -1);\n -> 20"),(36,9,"NULLIF"," NULLIF(expr1,expr2)\nReturns NULL if expr1 = expr2 is true, else returns expr1.\nThis is the same as CASE WHEN expr1 = expr2 THEN NULL ELSE expr1 END.\n","mysql> SELECT NULLIF(1,1);\n -> NULL\nmysql> SELECT NULLIF(1,2);\n -> 1"),(37,7,"STOP SLAVE","STOP SLAVE [thread_type [, thread_type] ... ]\n\nthread_type: IO_THREAD | SQL_THREAD\n\nStops the slave threads.\nSTOP SLAVE requires the SUPER privilege.\n\nLike START SLAVE, as of MySQL 4.0.2, this statement\nmay be used with the IO_THREAD and SQL_THREAD options to name\nthe thread or threads to stop.\n",""),(38,14,"TIMEDIFF"," TIMEDIFF(expr,expr2)\n\n\nTIMEDIFF() returns the time between the start time\nexpr and the end time expr2.\nexpr and expr2 are time or date-and-time expressions, but both\nmust be of the same type.\n","mysql> SELECT TIMEDIFF('2000:01:01 00:00:00',\n -> '2000:01:01 00:00:00.000001');\n -> '-00:00:00.000001'\nmysql> SELECT TIMEDIFF('1997-12-31 23:59:59.000001',\n -> '1997-12-30 01:01:01.000002');\n -> '46:58:57.999999'"),(39,3,"LINEFROMTEXT"," LineFromText(wkt[,srid])\n LineStringFromText(wkt[,srid])\nConstructs a LINESTRING value using its WKT representation and SRID.\n",""),(40,6,"SHOW MASTER STATUS","SHOW MASTER STATUS\n\nProvides status information on the binary log files of the master.\n",""),(41,14,"ADDTIME"," ADDTIME(expr,expr2)\n\n\nADDTIME() adds expr2 to expr and returns the result.\nexpr is a time or datetime expression, and expr2 is a time\nexpression.\n","mysql> SELECT ADDTIME('1997-12-31 23:59:59.999999',\n -> '1 1:1:1.000002');\n -> '1998-01-02 01:01:01.000001'\nmysql> SELECT ADDTIME('01:00:00.999999', '02:00:00.999998');\n -> '03:00:01.999997'"),(42,24,"SPATIAL","MySQL can create spatial indexes using syntax similar to that for creating\nregular indexes, but extended with the SPATIAL keyword.\nSpatial columns that are indexed currently must be declared NOT NULL.\nThe following examples demonstrate how to create spatial indexes.\n\n\n With CREATE TABLE:\n\nmysql> CREATE TABLE geom (g GEOMETRY NOT NULL, SPATIAL INDEX(g));\n\n With ALTER TABLE:\n\nmysql> ALTER TABLE geom ADD SPATIAL INDEX(g);\n\n With CREATE INDEX:\n\nmysql> CREATE SPATIAL INDEX sp_index ON geom (g);\n\n\nTo drop spatial indexes, use ALTER TABLE or DROP INDEX:\n\n\n With ALTER TABLE:\n\nmysql> ALTER TABLE geom DROP INDEX g;\n\n With DROP INDEX:\n\nmysql> DROP INDEX sp_index ON geom;\n\n\nExample: Suppose that a table geom contains more than 32,000 geometries,\nwhich are stored in the column g of type GEOMETRY.\nThe table also has an AUTO_INCREMENT column fid for storing\nobject ID values.\n",""),(43,14,"TIMESTAMPDIFF"," TIMESTAMPDIFF(interval,datetime_expr1,datetime_expr2)\n\nReturns the integer difference between the date or datetime expressions\ndatetime_expr1 and\ndatetime_expr2. The unit for the result is given by the\ninterval argument. The legal values for interval are the same as\nthose listed in the description of the TIMESTAMPADD() function.\n",""),(44,23,"UPPER"," UPPER(str)\nReturns the string str with all characters changed to uppercase\naccording to the current character set mapping (the default is ISO-8859-1\nLatin1).\n","mysql> SELECT UPPER('Hej');\n -> 'HEJ'");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (45,14,"FROM_UNIXTIME"," FROM_UNIXTIME(unix_timestamp)\n FROM_UNIXTIME(unix_timestamp,format)\nReturns a representation of the unix_timestamp argument as a value in\n'YYYY-MM-DD HH:MM:SS' or YYYYMMDDHHMMSS format, depending on\nwhether the function is used in a string or numeric context.\n\nmysql> SELECT FROM_UNIXTIME(875996580);\n -> '1997-10-04 22:23:00'\nmysql> SELECT FROM_UNIXTIME(875996580) + 0;\n -> 19971004222300\n\nIf format is given, the result is formatted according to the\nformat string. format may contain the same specifiers as\nthose listed in the entry for the DATE_FORMAT() function.\n","mysql> SELECT FROM_UNIXTIME(UNIX_TIMESTAMP(),\n -> '%Y %D %M %h:%i:%s %x');\n -> '2003 6th August 06:22:58 2003'"),(46,1,"MEDIUMBLOB"," MEDIUMBLOB\n\nA BLOB column with a maximum length of 16,777,215\n(2^24 - 1) bytes.\n",""),(47,9,"IFNULL"," IFNULL(expr1,expr2)\nIf expr1 is not NULL, IFNULL() returns expr1,\nelse it returns expr2. IFNULL() returns a numeric or string\nvalue, depending on the context in which it is used.\n","mysql> SELECT IFNULL(1,0);\n -> 1\nmysql> SELECT IFNULL(NULL,10);\n -> 10\nmysql> SELECT IFNULL(1/0,10);\n -> 10\nmysql> SELECT IFNULL(1/0,'yes');\n -> 'yes'"),(48,26,"LEAST"," LEAST(value1,value2,...)\nWith two or more arguments, returns the smallest (minimum-valued) argument.\nThe arguments are compared using the following rules.\n\n --- If the return value is used in an INTEGER context or all arguments\nare integer-valued, they are compared as integers.\n\n --- If the return value is used in a REAL context or all arguments are\nreal-valued, they are compared as reals.\n\n --- If any argument is a case-sensitive string, the arguments are compared\nas case-sensitive strings.\n\n --- In other cases, the arguments are compared as case-insensitive strings.\n","mysql> SELECT LEAST(2,0);\n -> 0\nmysql> SELECT LEAST(34.0,3.0,5.0,767.0);\n -> 3.0\nmysql> SELECT LEAST('B','A','C');\n -> 'A'"),(49,26,"="," =\nEqual:\n","mysql> SELECT 1 = 0;\n -> 0\nmysql> SELECT '0' = 0;\n -> 1\nmysql> SELECT '0.0' = 0;\n -> 1\nmysql> SELECT '0.01' = 0;\n -> 0\nmysql> SELECT '.01' = 0.01;\n -> 1"),(50,23,"REVERSE"," REVERSE(str)\nReturns the string str with the order of the characters reversed.\n","mysql> SELECT REVERSE('abc');\n -> 'cba'"),(51,26,"ISNULL"," ISNULL(expr)\nIf expr is NULL, ISNULL() returns 1, otherwise\nit returns 0.\n","mysql> SELECT ISNULL(1+1);\n -> 0\nmysql> SELECT ISNULL(1/0);\n -> 1"),(52,1,"BINARY"," BINARY(M)\n\nThe BINARY type is similar to the CHAR type, but stores\nbinary byte strings rather than non-binary character strings.\n\nThis type was added in MySQL 4.1.2.\n",""),(53,19,"BOUNDARY"," Boundary(g)\nReturns a geometry that is the closure of the combinatorial boundary of the\ngeometry value g.\n",""),(54,7,"CREATE USER","The CREATE USER statement creates new MySQL accounts. To use it, you\nmust have the global CREATE USER privilege or the INSERT\nprivilege for the mysql database.\nFor each account, CREATE USER creates a new record in the\nmysql.user table that has no privileges. An error occurs if the\naccount already exists.\n\nThe account can be given a password with the optional IDENTIFIED\nBY clause. The user value and the password are given the same way\nas for the GRANT statement. In particular, to specify the password\nin plain text, omit the PASSWORD keyword. To specify the password\nas the hashed value as returned by the PASSWORD() function, include\nthe keyword PASSWORD.\nSee also : [GRANT, , GRANT].\n\nThe CREATE USER statement was added in MySQL 5.0.2.\n\n\n @subsubsection DROP USER Syntax\n\n\n\nDROP USER user [, user] ...\n\nThe DROP USER statement deletes one or more MySQL accounts.\nTo use it, you\nmust have the global CREATE USER privilege or the DELETE\nprivilege for the mysql database.\nEach account is named using the same format as for GRANT\nor REVOKE; for example, 'jeffrey'@@'localhost'. The user and\nhost parts of the account name correspond to the User and Host\ncolumn values of the user table record for the account.\n\nDROP USER was added in MySQL 4.1.1 and originally removed only\naccounts that have no privileges. In MySQL 5.0.2, it was modified to also\nremove account privileges. This means that the procedure for removing an\naccount depends on your version of MySQL.\n\nAs of MySQL 5.0.2, remove an account and its privileges as follows:\n\nDROP USER user;\n\nThe statement removes privilege records for the account from all grant tables.\n\nFrom MySQL 4.1.1 to 5.0.1, DROP USER deletes only MySQL accounts that\ndon't have any privileges. In these MySQL versions, it serves only to remove\neach account record from the user table. To remove a MySQL account, you\nshould use the following procedure, performing the steps in the order shown:\n\n@enumerate\n --- Use SHOW GRANTS to determine what privileges the account has.\nSee also : [SHOW GRANTS, , SHOW GRANTS].\n --- Use REVOKE to revoke the privileges displayed by SHOW GRANTS.\nThis removes records for the account from all the grant tables except the\nuser table, and revokes any global privileges listed in the user\ntable.\nSee also : [GRANT, , GRANT].\n --- Delete the account by using DROP USER to remove the user table\nrecord.\n@end enumerate\n\nDROP USER does not automatically close any open user sessions. Rather, in\nthe event that a user with an open session is dropped, the command does not take\neffect until that user's session is closed. Once the session is closed, the user\nis dropped, and that user's next attempt to log in will fail. This is by design.\n\nBefore MySQL 4.1.1, DROP USER is not available. You should first\nrevoke the account privileges as just described. Then delete the user\ntable record and flush the grant tables like this:\n\nmysql> DELETE FROM mysql.user\n -> WHERE User='user_name' and Host='host_name';\nmysql> FLUSH PRIVILEGES;\n\n\n @subsubsection GRANT and REVOKE Syntax\n\n\n\n\nGRANT priv_type [(column_list)] [, priv_type [(column_list)]] ...\n ON [object_type] {tbl_name | * | *.* | db_name.*}\n TO user [IDENTIFIED BY [PASSWORD] 'password']\n [, user [IDENTIFIED BY [PASSWORD] 'password']] ...\n [REQUIRE\n NONE |\n [{SSL| X509}]\n [CIPHER 'cipher' [AND]]\n [ISSUER 'issuer' [AND]]\n [SUBJECT 'subject']]\n [WITH with_option [with_option] ...]\n\nobject_type =\n TABLE\n | FUNCTION\n | PROCEDURE\n\nwith_option =\n GRANT OPTION\n | MAX_QUERIES_PER_HOUR count\n | MAX_UPDATES_PER_HOUR count\n | MAX_CONNECTIONS_PER_HOUR count\n | MAX_USER_CONNECTIONS count\n\nREVOKE priv_type [(column_list)] [, priv_type [(column_list)]] ...\n ON [object_type] {tbl_name | * | *.* | db_name.*}\n FROM user [, user] ...\n\nREVOKE ALL PRIVILEGES, GRANT OPTION FROM user [, user] ...\n\n\nThe GRANT and REVOKE statements allow system administrators to\ncreate MySQL user accounts and to grant rights to and revoke them from\naccounts. GRANT and REVOKE are implemented in MySQL 3.22.11\nor later. For earlier MySQL versions, these statements do nothing.\n\nMySQL account information is stored in the tables of the mysql\ndatabase. This database and the access control system are discussed\nextensively in [MySQL Database Administration], which you should consult\nfor additional details.\n\nIf the grant tables contain privilege records that contain mixed-case\ndatabase or table names and the lower_case_table_names system\nvariable is set, REVOKE cannot be used to revoke the privileges. It\nwill be necessary to manipulate the grant tables directly. (GRANT\nwill not create such records when lower_case_table_names is set,\nbut such records might have been created prior to setting the variable.)\n\nPrivileges can be granted at several levels:\n\n Global level\nGlobal privileges apply to all databases on a given server. These privileges\nare stored in the mysql.user table.\nGRANT ALL ON *.* and\nREVOKE ALL ON *.* grant and revoke only global privileges.\n\n Database level\nDatabase privileges apply to all objects in a given database. These privileges\nare stored in the mysql.db and mysql.host tables.\nGRANT ALL ON db_name.* and\nREVOKE ALL ON db_name.* grant and revoke only database privileges.\n\n Table level\nTable privileges apply to all columns in a given table. These privileges are\nstored in the mysql.tables_priv table.\nGRANT ALL ON db_name.tbl_name and\nREVOKE ALL ON db_name.tbl_name grant and revoke only table privileges.\n\n Column level\nColumn privileges apply to single columns in a given table. These privileges are\nstored in the mysql.columns_priv table.\nWhen using REVOKE, you must specify the same columns that were granted.\n\n Routine level\nThe CREATE ROUTINE, ALTER ROUTINE, EXECUTE, and\nGRANT privileges apply to stored routines. They can be granted at the\nglobal and database levels. Also, except for CREATE ROUTINE, these\nprivileges can be granted at the routine level for individual routines and\nare stored in the mysql.procs_priv table.\n\n \n\nThe object_type clause was added in MySQL 5.0.6. It should be\nspecified as TABLE, FUNCTION, or PROCEDURE when the\nfollowing object is a table, a stored function, or a stored procedure. To\nuse this clause when upgrading from a version of MySQL older than 5.0.6, you\nmust upgrade your grant tables.\nSee also : [Upgrading-grant-tables].\n","CREATE USER user [IDENTIFIED BY [PASSWORD] 'password']\n [, user [IDENTIFIED BY [PASSWORD] 'password']] ..."),(55,2,"POINT"," Point(x,y)\nConstructs a WKB Point using its coordinates.\n",""),(56,25,"CURRENT_USER"," CURRENT_USER()\nReturns the username and hostname combination that the current session was\nauthenticated as. This value corresponds to the MySQL account that\ndetermines your access privileges. It can be different from the value of\nUSER().\n","mysql> SELECT USER();\n -> 'davida@localhost'\nmysql> SELECT * FROM mysql.user;\nERROR 1044: Access denied for user ''@'localhost' to\ndatabase 'mysql'\nmysql> SELECT CURRENT_USER();\n -> '@localhost'"),(57,23,"LCASE"," LCASE(str)\n\nLCASE() is a synonym for LOWER().\n",""),(58,26,"<="," <=\nLess than or equal:\n","mysql> SELECT 0.1 <= 2;\n -> 1"),(59,6,"UPDATE","The UPDATE statement updates columns in existing table rows with\nnew values. The SET clause indicates which columns to modify\nand the values they should be given. The WHERE clause, if given,\nspecifies which rows should be updated. Otherwise, all rows are updated. If\nthe ORDER BY clause is specified, the rows are updated in the\norder that is specified. The LIMIT clause places a limit on the\nnumber of rows that can be updated.\n\nThe UPDATE statement supports the following modifiers:\n\n\n --- If you specify the LOW_PRIORITY keyword, execution of the\nUPDATE is delayed until no other clients are reading from the table.\n\n --- If you specify the IGNORE keyword, the update statement does not\nabort even if errors occur during the update. Rows for which duplicate-key\nconflicts occur are not updated. Rows for which columns are updated to\nvalues that would cause data conversion errors are updated to the closet\nvalid values instead.\n","UPDATE [LOW_PRIORITY] [IGNORE] tbl_name\n SET col_name1=expr1 [, col_name2=expr2 ...]\n [WHERE where_definition]\n [ORDER BY ...]\n [LIMIT row_count]");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (60,28,"DROP INDEX","DROP INDEX drops the index named index_name from the table\ntbl_name. In MySQL 3.22 or later, DROP INDEX is mapped to an\nALTER TABLE statement to drop the index. See also : [ALTER TABLE, ,\nALTER TABLE]. DROP INDEX doesn't do anything prior to MySQL\n3.22.\n","DROP INDEX index_name ON tbl_name"),(61,23,"MATCH AGAINST","As of MySQL 3.23.23, MySQL has support for full-text indexing\nand searching. A full-text index in MySQL is an index of type\nFULLTEXT. FULLTEXT indexes are used with MyISAM tables\nonly and can be created from CHAR, VARCHAR,\nor TEXT columns at CREATE TABLE time or added later with\nALTER TABLE or CREATE INDEX. For large datasets, it is\nmuch faster to load your data into a table that has no FULLTEXT\nindex, then create the index with ALTER TABLE (or\nCREATE INDEX). Loading data into a table that has an existing\nFULLTEXT index could be significantly slower.\n","mysql> SELECT id, body, MATCH (title,body) AGAINST\n -> ('Security implications of running MySQL as root') AS score\n -> FROM articles WHERE MATCH (title,body) AGAINST\n -> ('Security implications of running MySQL as root');\n+----+-------------------------------------+-----------------+\n| id | body | score |\n+----+-------------------------------------+-----------------+\n| 4 | 1. Never run mysqld as root. 2. ... | 1.5219271183014 |\n| 6 | When configured properly, MySQL ... | 1.3114095926285 |\n+----+-------------------------------------+-----------------+\n2 rows in set (0.00 sec)"),(62,4,"ABS"," ABS(X)\nReturns the absolute value of X.\n","mysql> SELECT ABS(2);\n -> 2\nmysql> SELECT ABS(-32);\n -> 32"),(63,13,"POLYFROMWKB"," PolyFromWKB(wkb[,srid])\n PolygonFromWKB(wkb[,srid])\nConstructs a POLYGON value using its WKB representation and SRID.\n",""),(64,23,"NOT LIKE"," expr NOT LIKE pat [ESCAPE 'escape-char']\n\nThis is the same as NOT (expr LIKE pat [ESCAPE 'escape-char']).\n",""),(65,23,"SPACE"," SPACE(N)\nReturns a string consisting of N space characters.\n","mysql> SELECT SPACE(6);\n -> ' '"),(66,8,"MBR DEFINITION","Every geometry occupies some position in space. The exterior of\na geometry is all space not occupied by the geometry. The interior\nis the space occupied by the geometry. The boundary is the\ninterface between the geometry's interior and exterior.\n\n --- Its MBR (Minimum Bounding Rectangle), or Envelope.\nThis is the bounding geometry, formed by the minimum and maximum (X,Y)\ncoordinates:\n","((MINX MINY, MAXX MINY, MAXX MAXY, MINX MAXY, MINX MINY))"),(67,2,"GEOMETRYCOLLECTION"," GeometryCollection(g1,g2,...)\nConstructs a WKB GeometryCollection. If any argument is not a\nwell-formed WKB representation of a geometry, the return value is\nNULL.\n",""),(68,4,"*"," *\nMultiplication:\n","mysql> SELECT 3*5;\n -> 15\nmysql> SELECT 18014398509481984*18014398509481984.0;\n -> 324518553658426726783156020576256.0\nmysql> SELECT 18014398509481984*18014398509481984;\n -> 0"),(69,1,"TIMESTAMP"," TIMESTAMP[(M)]\n\nA timestamp. The range is '1970-01-01 00:00:00' to partway through the\nyear 2037.\n\nA TIMESTAMP column is useful for recording the date and time of an\nINSERT or UPDATE operation. The first TIMESTAMP column\nin a table is automatically set to the date and time of the most recent\noperation if you don't assign it a value yourself. You can also set any\nTIMESTAMP column to the current date and time by assigning it a\nNULL value.\n\nFrom MySQL 4.1 on, TIMESTAMP is returned as a string with the format\n'YYYY-MM-DD HH:MM:SS'. If you want to obtain the value as a number,\nyou should add +0 to the timestamp column. Different timestamp\ndisplay widths are not supported.\n\nIn MySQL 4.0 and earlier, TIMESTAMP values are displayed in\nYYYYMMDDHHMMSS, YYMMDDHHMMSS, YYYYMMDD, or YYMMDD\nformat, depending on whether M is 14 (or missing), 12,\n8, or 6, but allows you to assign values to TIMESTAMP\ncolumns using either strings or numbers.\nThe M argument affects only how a TIMESTAMP column is displayed,\nnot storage. Its values always are stored using four bytes each.\nFrom MySQL 4.0.12, the --new option can be used\nto make the server behave as in MySQL 4.1.\n\nNote that TIMESTAMP(M) columns where M is 8 or 14 are reported to\nbe numbers, whereas other TIMESTAMP(M) columns are reported to be\nstrings. This is just to ensure that you can reliably dump and restore\nthe table with these types.\n",""),(70,17,"DES_DECRYPT"," DES_DECRYPT(crypt_str[,key_str])\n\nDecrypts a string encrypted with DES_ENCRYPT().\nOn error, this function returns NULL.\n\nNote that this function works only if MySQL has been configured with\nSSL support. See also : [Secure connections].\n\nIf no key_str argument is given, DES_DECRYPT() examines\nthe first byte of the encrypted string to determine the DES key number\nthat was used to encrypt the original string, and then reads the key\nfrom the DES key file to decrypt the message. For this to work,\nthe user must have the SUPER privilege. The key file can be specified\nwith the --des-key-file server option.\n\nIf you pass this function a key_str argument, that string\nis used as the key for decrypting the message.\n\nIf the crypt_str argument doesn't look like an encrypted string,\nMySQL returns the given crypt_str.\n",""),(71,7,"CHECKSUM","\nReports a table checksum.\n\nIf QUICK is specified, the live table checksum is reported if it is\navailable, or NULL otherwise. This is very fast. A live checksum\nis enabled by specifying the CHECKSUM=1 table option, currently\nsupported only for MyISAM tables.\nSee also : [CREATE TABLE, , CREATE TABLE].\n\nIn EXTENDED mode the whole table is read row by row and the checksum\nis calculated. This can be very slow for large tables.\n\nBy default, if neither QUICK nor EXTENDED is specified, MySQL\nreturns a live checksum if the table storage engine supports it and scans\nthe table otherwise.\n\nCHECKSUM TABLE returns NULL for non-existent tables.\nAs of MySQL 5.0.3, a warning is generated for this condition.\n\nThis statement is implemented in MySQL 4.1.1.\n\n\n @subsubsection OPTIMIZE TABLE Syntax\n\n\n\n\nOPTIMIZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE tbl_name [, tbl_name] ...\n\nOPTIMIZE TABLE should be used if you have deleted a large part of a\ntable or if you have made many changes to a table with variable-length rows\n(tables that have VARCHAR, BLOB, or TEXT columns).\nDeleted records are maintained in a linked list and subsequent INSERT\noperations reuse old record positions. You can use OPTIMIZE TABLE to\nreclaim the unused space and to defragment the data file.\n","CHECKSUM TABLE tbl_name [, tbl_name] ... [ QUICK | EXTENDED ]"),(72,18,"ENDPOINT"," EndPoint(ls)\nReturns the Point that is the end point of the LineString value\nls.\n","mysql> SET @ls = 'LineString(1 1,2 2,3 3)';\nmysql> SELECT AsText(EndPoint(GeomFromText(@ls)));\n+-------------------------------------+\n| AsText(EndPoint(GeomFromText(@ls))) |\n+-------------------------------------+\n| POINT(3 3) |\n+-------------------------------------+"),(73,6,"CACHE INDEX","The CACHE INDEX statement assigns table indexes to a specific key\ncache. It is used only for MyISAM tables.\n\nThe following statement assigns indexes from the tables t1,\nt2, and t3 to the key cache named hot_cache:\n\nmysql> CACHE INDEX t1, t2, t3 IN hot_cache;\n+---------+--------------------+----------+----------+\n| Table | Op | Msg_type | Msg_text |\n+---------+--------------------+----------+----------+\n| test.t1 | assign_to_keycache | status | OK |\n| test.t2 | assign_to_keycache | status | OK |\n| test.t3 | assign_to_keycache | status | OK |\n+---------+--------------------+----------+----------+\n","CACHE INDEX\n tbl_index_list [, tbl_index_list] ...\n IN key_cache_name\n\ntbl_index_list:\n tbl_name [[INDEX|KEY] (index_name[, index_name] ...)]"),(74,23,"COMPRESS"," COMPRESS(string_to_compress)\nCompresses a string. This function requires MySQL to have been compiled\nwith a compression library such as zlib. Otherwise, the return\nvalue is always NULL. The compressed string can be uncompressed with\nUNCOMPRESS().\n","mysql> SELECT LENGTH(COMPRESS(REPEAT('a',1000)));\n -> 21\nmysql> SELECT LENGTH(COMPRESS(''));\n -> 0\nmysql> SELECT LENGTH(COMPRESS('a'));\n -> 13\nmysql> SELECT LENGTH(COMPRESS(REPEAT('a',16)));\n -> 15");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (75,12,"COUNT"," COUNT(expr)\nReturns a count of the number of non-NULL values in the rows\nretrieved by a SELECT statement.\n","mysql> SELECT student.student_name,COUNT(*)\n -> FROM student,course\n -> WHERE student.student_id=course.student_id\n -> GROUP BY student_name;"),(76,23,"INSERT"," INSERT(str,pos,len,newstr)\nReturns the string str, with the substring beginning at position\npos and len characters long replaced by the string\nnewstr. Returns the original string if pos is not within\nthe length of the string. Replaces the rest of the string from position\npos is len is not within the length of the rest of the string.\nReturns NULL if any argument is null.\n","mysql> SELECT INSERT('Quadratic', 3, 4, 'What');\n -> 'QuWhattic'\nmysql> SELECT INSERT('Quadratic', -1, 4, 'What');\n -> 'Quadratic'\nmysql> SELECT INSERT('Quadratic', 3, 100, 'What');\n -> 'QuWhat'"),(77,6,"HANDLER","The HANDLER statement provides direct access to table storage engine\ninterfaces. It is available for MyISAM tables as MySQL 4.0.0 and\nInnoDB tables as of MySQL 4.0.3.\n","HANDLER tbl_name OPEN [ AS alias ]\nHANDLER tbl_name READ index_name { = | >= | <= | < } (value1,value2,...)\n [ WHERE where_condition ] [LIMIT ... ]\nHANDLER tbl_name READ index_name { FIRST | NEXT | PREV | LAST }\n [ WHERE where_condition ] [LIMIT ... ]\nHANDLER tbl_name READ { FIRST | NEXT }\n [ WHERE where_condition ] [LIMIT ... ]\nHANDLER tbl_name CLOSE"),(78,3,"MLINEFROMTEXT"," MLineFromText(wkt[,srid])\n MultiLineStringFromText(wkt[,srid])\nConstructs a MULTILINESTRING value using its WKT representation and SRID.\n",""),(79,13,"GEOMCOLLFROMWKB"," GeomCollFromWKB(wkb[,srid])\n GeometryCollectionFromWKB(wkb[,srid])\nConstructs a GEOMETRYCOLLECTION value using its WKB representation and SRID.\n",""),(80,28,"RENAME TABLE","RENAME TABLE tbl_name TO new_tbl_name\n [, tbl_name2 TO new_tbl_name2] ...\n\nThis statement renames one or more tables. It was added in MySQL 3.23.23.\n\nThe rename operation is done atomically, which means that no other thread\ncan access any of the tables while the rename is running. For example,\nif you have an existing table old_table, you can create another\ntable new_table that has the same structure but is empty, and then\nreplace the existing table with the empty one as follows:\n","CREATE TABLE new_table (...);\nRENAME TABLE old_table TO backup_table, new_table TO old_table;"),(81,1,"BOOLEAN"," BOOL\n BOOLEAN\nThese are synonyms for TINYINT(1).\nThe BOOLEAN synonym was added in MySQL 4.1.0.\nA value of zero is considered false. Non-zero values are considered true.\n\nIn the future,\nfull boolean type handling will be introduced in accordance with standard SQL.\n",""),(82,21,"DEFAULT"," DEFAULT(col_name)\nReturns the default value for a table column.\nStarting from MySQL 5.0.2, you get an error if the column doesn't have\na default value.\n","mysql> UPDATE t SET i = DEFAULT(i)+1 WHERE id < 100;"),(83,1,"TINYTEXT"," TINYTEXT\n\nA TEXT column with a maximum length of 255\n(2^8 - 1) characters.\n",""),(84,17,"DECODE"," DECODE(crypt_str,pass_str)\nDecrypts the encrypted string crypt_str using pass_str as the\npassword. crypt_str should be a string returned from\nENCODE().\n",""),(85,26,"<=>"," <=>\nNULL-safe equal.\nThis operator performs an equality comparison like the = operator, but\nreturns 1 rather than NULL if both operands are NULL,\nand 0 rather than NULL if one operand is NULL.\n","mysql> SELECT 1 <=> 1, NULL <=> NULL, 1 <=> NULL;\n -> 1, 1, 0\nmysql> SELECT 1 = 1, NULL = NULL, 1 = NULL;\n -> 1, NULL, NULL"),(86,6,"LOAD DATA FROM MASTER","LOAD DATA FROM MASTER\n\nTakes a snapshot of the master and copies it to the slave. It updates the\nvalues of MASTER_LOG_FILE and MASTER_LOG_POS so that the slave\nstarts replicating from the correct position. Any table and database\nexclusion rules specified with the --replicate-*-do-* and\n--replicate-*-ignore-* options are honored.\n--replicate-rewrite-db is /not/ taken into account (because one user\ncould, with this option, set up a non-unique mapping such as\n--replicate-rewrite-db=db1->db3 and\n--replicate-rewrite-db=db2->db3, which would confuse the slave when\nit loads the master's tables).\n\nUse of this statement is subject to the following conditions:\n\n\n --- It works only with MyISAM tables. Attempting to load a\nnon-MyISAM table results in the error:\n\nERROR 1189 (08S01): Net error reading from master\n\n --- It acquires a global read lock on the master while taking the snapshot,\nwhich prevents updates on the master during the load operation.\n\n\nIn the future, it is planned to make this statement work with\nInnoDB tables and to remove the need for a global read lock by using\nnon-blocking online backup.\n\nIf you are loading big tables, you might have to increase the values\nof net_read_timeout and net_write_timeout\non both your master and slave servers.\nSee also : [Server system variables].\n\nNote that LOAD DATA FROM MASTER does /not/ copy any\ntables from the mysql database. This makes it easy to have\ndifferent users and privileges on the master and the slave.\n\nThe LOAD DATA FROM MASTER statement\nrequires the replication account that is used to connect to the master\nto have the RELOAD and SUPER privileges on the master and the\nSELECT privilege for all master tables you want to load. All\nmaster tables for which the user does not have the SELECT privilege are\nignored by LOAD DATA FROM MASTER. This is because the\nmaster hides them from the user: LOAD DATA FROM MASTER calls\nSHOW DATABASES to know the master databases to load, but\nSHOW DATABASES returns only databases for which the user has\nsome privilege.\nSee [SHOW DATABASES, , SHOW DATABASES].\nOn the slave's side, the user that issues LOAD DATA FROM MASTER should\nhave grants to drop and create the databases and tables that are copied.\n",""),(87,6,"RESET","The RESET statement is used to clear the state of various server\noperations. It also acts as a stronger\nversion of the FLUSH statement. See also : [FLUSH, , FLUSH].\n","RESET reset_option [, reset_option] ..."),(88,21,"GET_LOCK"," GET_LOCK(str,timeout)\nTries to obtain a lock with a name given by the string str, with a\ntimeout of timeout seconds. Returns 1 if the lock was obtained\nsuccessfully, 0 if the attempt timed out (for example, because another\nclient has previously locked the name), or NULL if an error\noccurred (such as running out of memory or the thread was killed with\nmysqladmin kill). If you have a lock obtained with GET_LOCK(),\nit is released when you execute\nRELEASE_LOCK(), execute a new GET_LOCK(), or your connection\nterminates (either normally or abnormally).\n\nThis function can be used to implement application locks or to\nsimulate record locks. Names are locked on a server-wide basis.\nIf a name has been locked by one client, GET_LOCK() blocks\nany request by another client for a lock with the same name. This\nallows clients that agree on a given lock name to use the name to\nperform cooperative advisory locking.\n","mysql> SELECT GET_LOCK('lock1',10);\n -> 1\nmysql> SELECT IS_FREE_LOCK('lock2');\n -> 1\nmysql> SELECT GET_LOCK('lock2',10);\n -> 1\nmysql> SELECT RELEASE_LOCK('lock2');\n -> 1\nmysql> SELECT RELEASE_LOCK('lock1');\n -> NULL"),(89,23,"UCASE"," UCASE(str)\n\nUCASE() is a synonym for UPPER().\n","");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (90,13,"MPOLYFROMWKB"," MPolyFromWKB(wkb[,srid])\n MultiPolygonFromWKB(wkb[,srid])\nConstructs a MULTIPOLYGON value using its WKB representation and SRID.\n",""),(91,6,"DO","DO executes the expressions but doesn't return any results. This is\nshorthand for SELECT expr, ..., but has the advantage that it's\nslightly faster when you don't care about the result.\n\nDO is useful mainly with functions that have side effects, such as\nRELEASE_LOCK().\n","DO expr [, expr] ..."),(92,14,"CURTIME"," CURTIME()\n\nReturns the current time as a value in 'HH:MM:SS' or HHMMSS\nformat, depending on whether the function is used in a string or numeric\ncontext.\n","mysql> SELECT CURTIME();\n -> '23:50:26'\nmysql> SELECT CURTIME() + 0;\n -> 235026"),(93,1,"BIGINT"," BIGINT[(M)] [UNSIGNED] [ZEROFILL]\nA large integer. The signed range is -9223372036854775808 to\n9223372036854775807. The unsigned range is 0 to\n18446744073709551615.\n",""),(94,23,"CHAR_LENGTH"," CHAR_LENGTH(str)\n\nReturns the length of the string str, measured in characters.\nA multi-byte character counts as a single character.\nThis means that for a string containing five two-byte characters,\nLENGTH() returns 10, whereas CHAR_LENGTH() returns\n5.\n",""),(95,6,"SET","SET sets different types of variables that affect the operation of the\nserver or your client. It can be used to assign values to user variables or\nsystem variables.\n","SET variable_assignment [, variable_assignment] ...\n\nvariable_assignment:\n user_var_name = expr\n | [GLOBAL | SESSION] system_var_name = expr\n | @@[global. | session.]system_var_name = expr"),(96,1,"DATE","A date. The supported range is '1000-01-01' to '9999-12-31'.\nMySQL displays DATE values in 'YYYY-MM-DD' format, but\nallows you to assign values to DATE columns using either strings or\nnumbers.\n",""),(97,23,"CONV"," CONV(N,from_base,to_base)\nConverts numbers between different number bases. Returns a string\nrepresentation of the number N, converted from base from_base\nto base to_base. Returns NULL if any argument is NULL.\nThe argument N is interpreted as an integer, but may be specified as\nan integer or a string. The minimum base is 2 and the maximum base is\n36. If to_base is a negative number, N is regarded as a\nsigned number. Otherwise, N is treated as unsigned. CONV() works\nwith 64-bit precision.\n","mysql> SELECT CONV('a',16,2);\n -> '1010'\nmysql> SELECT CONV('6E',18,8);\n -> '172'\nmysql> SELECT CONV(-17,10,-18);\n -> '-H'\nmysql> SELECT CONV(10+'10'+'10'+0xa,10,10);\n -> '40'"),(98,14,"EXTRACT"," EXTRACT(type FROM date)\n\nThe EXTRACT() function uses the same kinds of interval type\nspecifiers as DATE_ADD() or DATE_SUB(), but extracts parts\nfrom the date rather than performing date arithmetic.\n","mysql> SELECT EXTRACT(YEAR FROM '1999-07-02');\n -> 1999\nmysql> SELECT EXTRACT(YEAR_MONTH FROM '1999-07-02 01:02:03');\n -> 199907\nmysql> SELECT EXTRACT(DAY_MINUTE FROM '1999-07-02 01:02:03');\n -> 20102\nmysql> SELECT EXTRACT(MICROSECOND\n -> FROM '2003-01-02 10:30:00.00123');\n -> 123"),(99,17,"ENCRYPT"," ENCRYPT(str[,salt])\nEncrypt str using the Unix crypt() system call. The\nsalt argument should be a string with two characters.\n(As of MySQL 3.22.16, salt may be longer than two characters.)\nIf no salt argument is given, a random value is used.\n","mysql> SELECT ENCRYPT('hello');\n -> 'VxuFAJXVARROc'"),(100,17,"OLD_PASSWORD"," OLD_PASSWORD(str)\n\nOLD_PASSWORD() is available as of MySQL 4.1, when the implementation of\nPASSWORD() was changed to improve security. OLD_PASSWORD()\nreturns the value of the pre-4.1 implementation of PASSWORD().\n[Password hashing].\n\n PASSWORD(str)\nCalculates and returns a password string from the plaintext password\nstr, or NULL if the argument was NULL. This is\nthe function that is used for encrypting MySQL passwords for storage\nin the Password column of the user grant table.\n",""),(101,21,"FORMAT"," FORMAT(X,D)\nFormats the number X to a format like '#,###,###.##', rounded\nto D decimals, and returns the result as a string.\nIf D is 0, the result has no\ndecimal point or fractional part.\n","mysql> SELECT FORMAT(12332.123456, 4);\n -> '12,332.1235'\nmysql> SELECT FORMAT(12332.1,4);\n -> '12,332.1000'\nmysql> SELECT FORMAT(12332.2,0);\n -> '12,332'"),(102,20,"||"," OR\n ||\nLogical OR.\nWhen both operands are non-NULL, the result is 1 if any\noperand is non-zero, and 0 otherwise. With a NULL operand,\nthe result is 1 if the other operand is non-zero, and NULL\notherwise. If both operands are NULL, the result is NULL.\n","mysql> SELECT 1 || 1;\n -> 1\nmysql> SELECT 1 || 0;\n -> 1\nmysql> SELECT 0 || 0;\n -> 0\nmysql> SELECT 0 || NULL;\n -> NULL\nmysql> SELECT 1 || NULL;\n -> 1"),(103,9,"CASE"," CASE value WHEN [compare-value] THEN result [WHEN [compare-value] THEN result ...] [ELSE result] END\n CASE WHEN [condition] THEN result [WHEN [condition] THEN result ...] [ELSE result] END\n\nThe first version returns the result where\nvalue=compare-value. The second version returns the\nresult for the first condition that is true. If there was no matching result\nvalue, the result after ELSE is returned, or NULL if there is\nno ELSE part.\n","mysql> SELECT CASE 1 WHEN 1 THEN 'one'\n -> WHEN 2 THEN 'two' ELSE 'more' END;\n -> 'one'\nmysql> SELECT CASE WHEN 1>0 THEN 'true' ELSE 'false' END;\n -> 'true'\nmysql> SELECT CASE BINARY 'B'\n -> WHEN 'a' THEN 1 WHEN 'b' THEN 2 END;\n -> NULL"),(104,23,"BIT_LENGTH"," BIT_LENGTH(str)\nReturns the length of the string str in bits.\n","mysql> SELECT BIT_LENGTH('text');\n -> 32");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (105,0,"EXTERIORRING"," ExteriorRing(poly)\nReturns the exterior ring of the Polygon value poly\nas a LineString.\n","mysql> SET @poly =\n -> 'Polygon((0 0,0 3,3 3,3 0,0 0),(1 1,1 2,2 2,2 1,1 1))';\nmysql> SELECT AsText(ExteriorRing(GeomFromText(@poly)));\n+-------------------------------------------+\n| AsText(ExteriorRing(GeomFromText(@poly))) |\n+-------------------------------------------+\n| LINESTRING(0 0,0 3,3 3,3 0,0 0) |\n+-------------------------------------------+"),(106,13,"GEOMFROMWKB"," GeomFromWKB(wkb[,srid])\n GeometryFromWKB(wkb[,srid])\nConstructs a geometry value of any type using its WKB representation and SRID.\n",""),(107,6,"SHOW SLAVE HOSTS","SHOW SLAVE HOSTS\n\nDisplays a list of slaves currently registered with the master.\nAny slave not started with the --report-host=slave_name\noption is not visible in that list.\n",""),(108,10,"START TRANSACTION","By default, MySQL runs with autocommit mode enabled. This means that\nas soon as you execute a statement that updates (modifies) a table,\nMySQL stores the update on disk.\n\nIf you are using transaction-safe tables (like InnoDB or BDB),\nyou can disable autocommit mode with the following statement:\n\nSET AUTOCOMMIT=0;\n\nAfter disabling autocommit mode by setting the AUTOCOMMIT variable to\nzero, you must use COMMIT to store your changes to disk or\nROLLBACK if you want to ignore the changes you have made since\nthe beginning of your transaction.\n\nIf you want to disable autocommit mode for a single series of\nstatements, you can use the START TRANSACTION statement:\n","START TRANSACTION;\nSELECT @A:=SUM(salary) FROM table1 WHERE type=1;\nUPDATE table2 SET summary=@A WHERE type=1;\nCOMMIT;"),(109,26,"BETWEEN AND"," expr BETWEEN min AND max\nIf expr is greater than or equal to min and expr is\nless than or equal to max, BETWEEN returns 1,\notherwise it returns 0. This is equivalent to the expression\n(min <= expr AND expr <= max) if all the arguments are of the\nsame type. Otherwise type conversion takes place according to the rules\ndescribed at the beginning of this section, but applied to all the three\narguments. Note: Before MySQL\n4.0.5, arguments were converted to the type of expr instead.\n","mysql> SELECT 1 BETWEEN 2 AND 3;\n -> 0\nmysql> SELECT 'b' BETWEEN 'a' AND 'c';\n -> 1\nmysql> SELECT 2 BETWEEN 2 AND '3';\n -> 1\nmysql> SELECT 2 BETWEEN 2 AND 'x-3';\n -> 0"),(110,2,"MULTIPOLYGON"," MultiPolygon(poly1,poly2,...)\nConstructs a WKB MultiPolygon value from a set of WKB Polygon\narguments.\nIf any argument is not a WKB Polygon, the return value is NULL.\n",""),(111,14,"TIME_FORMAT"," TIME_FORMAT(time,format)\nThis is used like the DATE_FORMAT() function, but the\nformat string may contain only those format specifiers that handle\nhours, minutes, and seconds. Other specifiers produce a NULL value or\n0.\n",""),(112,23,"LEFT"," LEFT(str,len)\nReturns the leftmost len characters from the string str.\n","mysql> SELECT LEFT('foobarbar', 5);\n -> 'fooba'"),(113,7,"FLUSH QUERY CACHE","You can defragment the query cache to better utilize its memory\nwith the FLUSH QUERY CACHE statement.\nThe statement does not remove any queries from the cache.\n\nThe RESET QUERY CACHE statement removes all query results from the\nquery cache. The FLUSH TABLES statement also does this.\n",""),(114,4,"RAND"," RAND()\n RAND(N)\nReturns a random floating-point value in the range from 0 to 1.0.\nIf an integer argument N is specified, it is used as the seed value\n(producing a repeatable sequence).\n","mysql> SELECT RAND();\n -> 0.9233482386203\nmysql> SELECT RAND(20);\n -> 0.15888261251047\nmysql> SELECT RAND(20);\n -> 0.15888261251047\nmysql> SELECT RAND();\n -> 0.63553050033332\nmysql> SELECT RAND();\n -> 0.70100469486881"),(115,23,"RPAD"," RPAD(str,len,padstr)\nReturns the string str, right-padded with the string padstr\nto a length of len characters. If str is longer\nthan len, the return value is shortened to len characters.\n","mysql> SELECT RPAD('hi',5,'?');\n -> 'hi???'\nmysql> SELECT RPAD('hi',1,'?');\n -> 'h'"),(116,6,"INSERT INTO","INSERT inserts new rows into an existing table. The INSERT ...\nVALUES and INSERT ... SET forms of the statement insert rows based\non explicitly specified values. The INSERT ... SELECT form inserts\nrows selected from another table or tables. The INSERT ... VALUES\nform with multiple value lists is supported in MySQL 3.22.5 or\nlater. The INSERT ... SET syntax is supported in MySQL\n3.22.10 or later.\nINSERT ... SELECT is discussed further in\nSee also : [INSERT SELECT, , INSERT SELECT].\n","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE]\n [INTO] tbl_name [(col_name,...)]\n VALUES ({expr | DEFAULT},...),(...),...\n [ ON DUPLICATE KEY UPDATE col_name=expr, ... ]"),(117,7,"RESTORE","\nRESTORE TABLE tbl_name [, tbl_name] ... FROM '/path/to/backup/directory'\n\nRestores the table or tables from a backup that was made with BACKUP\nTABLE. Existing tables are not overwritten; if you try to restore over\nan existing table, you get an error. Just as BACKUP TABLE,\nRESTORE TABLE currently works only for MyISAM tables.\nThe directory should be specified as a full pathname.\n\nThe backup for each table consists of its *.frm format file and\n*.MYD data file. The restore operation restores those files, then\nuses them to rebuild the *.MYI index file. Restoring takes longer\nthan backing up due to the need to rebuild the indexes. The more indexes the\ntable has, the longer it takes.\n",""),(118,28,"CREATE DATABASE","CREATE DATABASE creates a database with the given name. To use\nCREATE DATABASE, you need the CREATE privilege on the database.\n","CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name\n [create_specification [, create_specification] ...]\n\ncreate_specification:\n [DEFAULT] CHARACTER SET charset_name\n | [DEFAULT] COLLATE collation_name"),(119,12,"VAR_POP"," VAR_POP(expr)\nReturns the population standard variance of expr. It considers rows\nas the whole population, not as a sample, so it has the number of rows as\nthe denominator. This function was added in MySQL 5.0.3. Before 5.0.3, you\ncan use VARIANCE(), which is equivalent but not standard SQL.\n","");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (120,23,"ELT"," ELT(N,str1,str2,str3,...)\nReturns str1 if N = 1, str2 if N =\n2, and so on. Returns NULL if N is less than 1\nor greater than the number of arguments. ELT() is the complement of\nFIELD().\n","mysql> SELECT ELT(1, 'ej', 'Heja', 'hej', 'foo');\n -> 'ej'\nmysql> SELECT ELT(4, 'ej', 'Heja', 'hej', 'foo');\n -> 'foo'"),(121,24,"ALTER VIEW","This statement changes the definition of an existing view.\nThe syntax is similar to that for CREATE VIEW.\nSee also : [CREATE VIEW, , CREATE VIEW].\nThis statement requires the CREATE VIEW and DELETE privileges\nfor the view, and some privilege for each column referred to in the\nSELECT statement.\n","ALTER [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]\n VIEW view_name [(column_list)]\n AS select_statement\n [WITH [CASCADED | LOCAL] CHECK OPTION]"),(122,27,"~"," ~\nInvert all bits.\n","mysql> SELECT 5 & ~1;\n -> 4"),(123,23,"CONCAT_WS"," CONCAT_WS(separator,str1,str2,...)\n\nCONCAT_WS() stands for CONCAT With Separator and is a special form of\nCONCAT(). The first argument is the separator for the rest of the\narguments.\nThe separator is added between the strings to be concatenated.\nThe separator can be a string as can the rest of the\narguments. If the separator is NULL, the result is NULL.\nThe function skips any NULL values after the\nseparator argument.\n","mysql> SELECT CONCAT_WS(',','First name','Second name','Last Name');\n -> 'First name,Second name,Last Name'\nmysql> SELECT CONCAT_WS(',','First name',NULL,'Last Name');\n -> 'First name,Last Name'"),(124,25,"ROW_COUNT"," ROW_COUNT()\n\nROW_COUNT() returns the number of rows updated, inserted, or deleted\nby the preceding statement. This is the same as the row count that the\nmysql client displays and the value from the\nmysql_affected_rows() C API function.\n","mysql> INSERT INTO t VALUES(1),(2),(3);\nQuery OK, 3 rows affected (0.00 sec)\nRecords: 3 Duplicates: 0 Warnings: 0\n\nmysql> SELECT ROW_COUNT();\n+-------------+\n| ROW_COUNT() |\n+-------------+\n| 3 |\n+-------------+\n1 row in set (0.00 sec)\n\nmysql> DELETE FROM t WHERE i IN(1,2);\nQuery OK, 2 rows affected (0.00 sec)\n\nmysql> SELECT ROW_COUNT();\n+-------------+\n| ROW_COUNT() |\n+-------------+\n| 2 |\n+-------------+\n1 row in set (0.00 sec)"),(125,4,"ASIN"," ASIN(X)\nReturns the arc sine of X, that is, the value whose sine is\nX. Returns NULL if X is not in the range -1 to\n1.\n","mysql> SELECT ASIN(0.2);\n -> 0.201358\nmysql> SELECT ASIN('foo');\n -> 0.000000"),(126,22,"FUNCTION","A user-defined function (UDF) is a way to extend MySQL with a new\nfunction that works like a native (built-in) MySQL function such as\nABS() or CONCAT().\n\nfunction_name is the name that should be used in SQL statements to\ninvoke the function. The RETURNS clause indicates the type of the\nfunction's return value. shared_library_name is the basename of the\nshared object file that contains the code that implements the function. The\nfile must be located in a directory that is searched by your system's\ndynamic linker.\n\nTo create a function, you must have the INSERT and privilege for the\nmysql database. To drop a function, you must have the DELETE\nprivilege for the mysql database. This is because CREATE\nFUNCTION adds a row to the mysql.func system table that records the\nfunction's name, type, and shared library name, and DROP FUNCTION\ndeletes the function's row from that table. If you do not have this table,\nyou should run the mysql_fix_privilege_tables script to create it.\nSee also : [Upgrading-grant-tables].\n","CREATE [AGGREGATE] FUNCTION function_name RETURNS {STRING|INTEGER|REAL}\n SONAME shared_library_name\n\nDROP FUNCTION function_name"),(127,4,"SIGN"," SIGN(X)\nReturns the sign of the argument as -1, 0, or 1, depending\non whether X is negative, zero, or positive.\n","mysql> SELECT SIGN(-32);\n -> -1\nmysql> SELECT SIGN(0);\n -> 0\nmysql> SELECT SIGN(234);\n -> 1"),(128,14,"SEC_TO_TIME"," SEC_TO_TIME(seconds)\nReturns the seconds argument, converted to hours, minutes, and seconds,\nas a value in 'HH:MM:SS' or HHMMSS format, depending on whether\nthe function is used in a string or numeric context.\n","mysql> SELECT SEC_TO_TIME(2378);\n -> '00:39:38'\nmysql> SELECT SEC_TO_TIME(2378) + 0;\n -> 3938"),(129,1,"YEAR TYPE"," YEAR[(2|4)]\n\nA year in two-digit or four-digit format. The default is four-digit format.\nIn four-digit format, the\nallowable values are 1901 to 2155, and 0000.\nIn two-digit format, the allowable values are\n70 to 69, representing years from\n1970 to 2069. MySQL displays YEAR values in\nYYYY format, but allows you to assign values to YEAR columns\nusing either strings or numbers. The YEAR type is unavailable prior\nto MySQL 3.22.\n",""),(130,1,"FLOAT"," FLOAT(p) [UNSIGNED] [ZEROFILL]\n\nA floating-point number. p represents the precision. It can be from\n0 to 24 for a single-precision floating-point number and from 25 to 53 for a\ndouble-precision floating-point number. These types are like the FLOAT\nand DOUBLE types described immediately following. FLOAT(p)\nhas the same range as the corresponding FLOAT and DOUBLE\ntypes, but the display width and number of decimals are undefined.\n\nAs of MySQL 3.23, this is a true floating-point value. In\nearlier MySQL versions, FLOAT(p) always has two decimals.\n\nThis syntax is provided for ODBC compatibility.\n\nUsing FLOAT might give you some unexpected problems because\nall calculations in MySQL are done with double precision.\nSee also : [No matching rows].\n\n FLOAT[(M,D)] [UNSIGNED] [ZEROFILL]\n\nA small (single-precision) floating-point number. Allowable values are\n-3.402823466E+38 to -1.175494351E-38, 0,\nand 1.175494351E-38 to 3.402823466E+38. If UNSIGNED is\nspecified, negative values are disallowed. M is the display width and\nD is the number of significant digits. FLOAT without arguments or\nFLOAT(p) (where p is in the range from 0 to 24) stands for a\nsingle-precision floating-point number.\n",""),(131,23,"LOCATE"," LOCATE(substr,str)\n LOCATE(substr,str,pos)\n\nThe first syntax\nreturns the position of the first occurrence of substring substr\nin string str.\nThe second syntax\nreturns the position of the first occurrence of substring substr in\nstring str, starting at position pos.\nReturns 0 if substr is not in str.\n",""),(132,25,"CHARSET"," CHARSET(str)\nReturns the character set of the string argument.\n","mysql> SELECT CHARSET('abc');\n -> 'latin1'\nmysql> SELECT CHARSET(CONVERT('abc' USING utf8));\n -> 'utf8'\nmysql> SELECT CHARSET(USER());\n -> 'utf8'"),(133,6,"PURGE MASTER LOGS BEFORE TO","PURGE {MASTER | BINARY} LOGS TO 'log_name'\nPURGE {MASTER | BINARY} LOGS BEFORE 'date'\n\nDeletes all the binary logs listed in the log\nindex that are strictly prior to the specified log or date.\nThe logs also are removed from the list recorded in the log index file,\nso that the given log becomes the first.\n",""),(134,14,"SUBDATE"," SUBDATE(date,INTERVAL expr type)\n SUBDATE(expr,days)\n\nWhen invoked with the INTERVAL form of the second argument,\nSUBDATE() is a synonym for DATE_SUB().\nFor information on the INTERVAL argument, see the\ndiscussion for DATE_ADD().\n\nmysql> SELECT DATE_SUB('1998-01-02', INTERVAL 31 DAY);\n -> '1997-12-02'\nmysql> SELECT SUBDATE('1998-01-02', INTERVAL 31 DAY);\n -> '1997-12-02'\n\nAs of MySQL 4.1.1, the second syntax is allowed, where expr is a date\nor datetime expression and days is the number of days to be\nsubtracted from expr.\n\nmysql> SELECT SUBDATE('1998-01-02 12:00:00', 31);\n -> '1997-12-02 12:00:00'\n\nNote that you can't use format \"%X%V\" to convert a year-week\nstring to date as a year-week doesn't uniquely identify a year-month if the\nweek crosses a month boundary. If you want to convert a year-week to a date\nyou can do it by also specifying the week day:\n\nmysql> select str_to_date('200442 Monday', '%X%V %W');\n-> 2004-10-18\n","");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (135,14,"DAYOFYEAR"," DAYOFYEAR(date)\nReturns the day of the year for date, in the range 1 to\n366.\n","mysql> SELECT DAYOFYEAR('1998-02-03');\n -> 34"),(136,4,"%"," MOD(N,M)\n N % M\n N MOD M\nModulo operation.\nReturns the remainder of N divided by M.\n","mysql> SELECT MOD(234, 10);\n -> 4\nmysql> SELECT 253 % 7;\n -> 1\nmysql> SELECT MOD(29,9);\n -> 2\nmysql> SELECT 29 MOD 9;\n -> 2"),(137,1,"LONGTEXT"," LONGTEXT\n\nA TEXT column with a maximum length of 4,294,967,295 or\n4GB (2^32 - 1) characters. Up to MySQL\n3.23, the client/server protocol and MyISAM tables had a limit\nof 16MB per communication packet / table row. From MySQL 4.0, the maximum\nallowed length of LONGTEXT columns depends on the\nconfigured maximum packet size in the client/server protocol and available\nmemory.\n",""),(138,11,"DISJOINT"," Disjoint(g1,g2)\nReturns 1 or 0 to indicate whether or not g1 is spatially disjoint\nfrom (does not intersect) g2.\n",""),(139,6,"KILL","Each connection to mysqld runs in a separate thread. You can see\nwhich threads are running with the SHOW PROCESSLIST statement and kill\na thread with the KILL thread_id statement.\n\nAs of MySQL 5.0.0, KILL allows the optional CONNECTION or\nQUERY modifiers:\n\n\n --- KILL CONNECTION is the same as KILL with no modifier:\nIt terminates the connection associated with the given thread_id.\n\n --- KILL QUERY terminates the statement that the connection currently\nis executing, but leaves the connection intact.\n\n\nIf you have the PROCESS privilege, you can see all threads.\nIf you have the SUPER privilege, you can kill all threads and\nstatements. Otherwise, you can see and kill only your own threads and\nstatements.\n\nYou can also use the mysqladmin processlist and mysqladmin kill\ncommands to examine and kill threads.\n\nNote: You currently cannot use KILL with the Embedded MySQL\nServer library, because the embedded server merely runs inside the threads\nof the host application, it does not create connection threads of its own.\n","KILL [CONNECTION | QUERY] thread_id"),(140,3,"ASTEXT"," AsText(g)\nConverts a value in internal geometry format to its WKT representation\nand returns the string result.\n","mysql> SELECT AsText(g) FROM geom;\n+-------------------------+\n| AsText(p1) |\n+-------------------------+\n| POINT(1 1) |\n| LINESTRING(0 0,1 1,2 2) |\n+-------------------------+"),(141,23,"LPAD"," LPAD(str,len,padstr)\nReturns the string str, left-padded with the string padstr\nto a length of len characters. If str is longer\nthan len, the return value is shortened to len characters.\n","mysql> SELECT LPAD('hi',4,'??');\n -> '??hi'\nmysql> SELECT LPAD('hi',1,'??');\n -> 'h'"),(142,11,"OVERLAPS"," Overlaps(g1,g2)\nReturns 1 or 0 to indicate whether or not g1 spatially overlaps\ng2.\nThe term /spatially overlaps/ is used if two\ngeometries intersect and their intersection results in a geometry of the\nsame dimension but not equal to either of the given geometries.\n",""),(143,5,"NUMGEOMETRIES"," NumGeometries(gc)\nReturns the number of geometries in the GeometryCollection value\ngc.\n","mysql> SET @gc = 'GeometryCollection(Point(1 1),LineString(2 2, 3 3))';\nmysql> SELECT NumGeometries(GeomFromText(@gc));\n+----------------------------------+\n| NumGeometries(GeomFromText(@gc)) |\n+----------------------------------+\n| 2 |\n+----------------------------------+"),(144,7,"SET GLOBAL SQL_SLAVE_SKIP_COUNTER","SET GLOBAL SQL_SLAVE_SKIP_COUNTER = n\n\nSkip the next n events from the master. This is\nuseful for recovering from replication stops caused by a statement.\n\nThis statement is valid only when the slave thread is not running.\nOtherwise, it produces an error.\n\nBefore MySQL 4.0, omit the GLOBAL keyword from the statement.\n",""),(145,14,"MONTHNAME"," MONTHNAME(date)\nReturns the full name of the month for date.\n","mysql> SELECT MONTHNAME('1998-02-05');\n -> 'February'"),(146,8,"MBREQUAL"," MBREqual(g1,g2)\nReturns 1 or 0 to indicate whether or not the Minimum Bounding Rectangles of\nthe two geometries g1 and g2 are the same.\n",""),(147,6,"CHANGE MASTER TO","\nCHANGE MASTER TO master_def [, master_def] ...\n\nmaster_def:\n MASTER_HOST = 'host_name'\n | MASTER_USER = 'user_name'\n | MASTER_PASSWORD = 'password'\n | MASTER_PORT = port_num\n | MASTER_CONNECT_RETRY = count\n | MASTER_LOG_FILE = 'master_log_name'\n | MASTER_LOG_POS = master_log_pos\n | RELAY_LOG_FILE = 'relay_log_name'\n | RELAY_LOG_POS = relay_log_pos\n | MASTER_SSL = {0|1}\n | MASTER_SSL_CA = 'ca_file_name'\n | MASTER_SSL_CAPATH = 'ca_directory_name'\n | MASTER_SSL_CERT = 'cert_file_name'\n | MASTER_SSL_KEY = 'key_file_name'\n | MASTER_SSL_CIPHER = 'cipher_list'\n\nChanges the parameters that the slave server uses for connecting to and\ncommunicating with the master server.\n\nMASTER_USER, MASTER_PASSWORD, MASTER_SSL,\nMASTER_SSL_CA, MASTER_SSL_CAPATH, MASTER_SSL_CERT,\nMASTER_SSL_KEY, and MASTER_SSL_CIPHER provide information for\nthe slave about how to connect to its master.\n\nThe relay log options (RELAY_LOG_FILE and RELAY_LOG_POS) are\navailable beginning with MySQL 4.0.\n\nThe SSL options\n(MASTER_SSL,\nMASTER_SSL_CA,\nMASTER_SSL_CAPATH,\nMASTER_SSL_CERT,\nMASTER_SSL_KEY,\nand\nMASTER_SSL_CIPHER)\nare available beginning with MySQL 4.1.1.\nYou can change these options even on slaves that are compiled without SSL\nsupport. They are saved to the *master.info file, but are ignored\nuntil you use a server that has SSL support enabled.\n\nIf you don't specify a given parameter, it keeps its old\nvalue, except as indicated in the following discussion. For example, if the password to connect to your MySQL master has\nchanged, you just need to issue these statements\nto tell the slave about the new password:\n\nmysql> STOP SLAVE; -- if replication was running\nmysql> CHANGE MASTER TO MASTER_PASSWORD='new3cret';\nmysql> START SLAVE; -- if you want to restart replication\n\nThere is no need to specify the parameters that do\nnot change (host, port, user, and so forth).\n\nMASTER_HOST and MASTER_PORT are the hostname (or IP address) of\nthe master host and its TCP/IP port. Note that if MASTER_HOST is\nequal to localhost, then, like in other parts of MySQL, the port\nmay be ignored (if Unix socket files can be used, for example).\n\nIf you specify MASTER_HOST or MASTER_PORT,\nthe slave assumes that the master server is different than\nbefore (even if you specify a host or port value that is\nthe same as the current value.) In this case, the old values for the master\nbinary log name and position are considered no longer applicable, so if you\ndo not specify MASTER_LOG_FILE and MASTER_LOG_POS in the\nstatement, MASTER_LOG_FILE='' and MASTER_LOG_POS=4 are\nsilently appended to it.\n\nMASTER_LOG_FILE and MASTER_LOG_POS are the coordinates\nat which the slave I/O thread should begin reading from the master the\nnext time the thread starts.\nIf you specify either of them, you can't specify RELAY_LOG_FILE or\nRELAY_LOG_POS.\nIf neither of MASTER_LOG_FILE or MASTER_LOG_POS are\nspecified, the slave uses the last coordinates of the /slave SQL thread/\nbefore CHANGE MASTER was issued. This ensures that\nreplication has no discontinuity, even if the slave SQL thread was late\ncompared to the slave I/O thread, when you just want to change, say, the\npassword to use. This safe behavior was introduced starting from MySQL\n4.0.17 and 4.1.1. (Before these versions, the coordinates used were\nthe last coordinates of the slave I/O thread before CHANGE MASTER\nwas issued. This caused the SQL thread to possibly lose some events\nfrom the master, thus breaking replication.)\n\nCHANGE MASTER /deletes all relay log files/ and starts\na new one, unless you specify RELAY_LOG_FILE or\nRELAY_LOG_POS. In that case, relay logs are kept;\nas of MySQL 4.1.1 the relay_log_purge global variable\nis set silently to 0.\n\nCHANGE MASTER TO updates the contents of the *master.info and\n*relay-log.info files.\n\nCHANGE MASTER is useful for setting up a slave when you have\nthe snapshot of the master and have recorded the log and the offset\ncorresponding to it. After loading the snapshot into the slave, you\ncan run CHANGE MASTER TO MASTER_LOG_FILE='log_name_on_master',\nMASTER_LOG_POS=log_offset_on_master on the slave.\n\nExamples:\n\nmysql> CHANGE MASTER TO\n -> MASTER_HOST='master2.mycompany.com',\n -> MASTER_USER='replication',\n -> MASTER_PASSWORD='bigs3cret',\n -> MASTER_PORT=3306,\n -> MASTER_LOG_FILE='master2-bin.001',\n -> MASTER_LOG_POS=4,\n -> MASTER_CONNECT_RETRY=10;\n\nmysql> CHANGE MASTER TO\n -> RELAY_LOG_FILE='slave-relay-bin.006',\n -> RELAY_LOG_POS=4025;\n",""),(148,28,"DROP DATABASE","DROP DATABASE drops all tables in the database and deletes the\ndatabase. Be /very/ careful with this statement!\nTo use DROP DATABASE, you need the DROP privilege on the\ndatabase.\n\nIn MySQL 3.22 or later, you can use the keywords IF EXISTS\nto prevent an error from occurring if the database doesn't exist.\n\nDROP SCHEMA can be used as of MySQL 5.0.2.\n","DROP {DATABASE | SCHEMA} [IF EXISTS] db_name"),(149,14,"TIMESTAMP FUNCTION"," TIMESTAMP(expr)\n TIMESTAMP(expr,expr2)\n\nWith one argument, returns the date or datetime expression expr\nas a datetime value.\nWith two arguments, adds the time expression expr2 to the\ndate or datetime expression expr and returns a datetime value.\n","mysql> SELECT TIMESTAMP('2003-12-31');\n -> '2003-12-31 00:00:00'\nmysql> SELECT TIMESTAMP('2003-12-31 12:00:00','12:00:00');\n -> '2004-01-01 00:00:00'");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (150,23,"CHARACTER_LENGTH"," CHARACTER_LENGTH(str)\n\nCHARACTER_LENGTH() is a synonym for CHAR_LENGTH().\n",""),(151,24,"CREATE VIEW ALGORITHM MERGE TEMPTABLE WITH CHECK OPTION","","CREATE [OR REPLACE] [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]\n VIEW view_name [(column_list)]\n AS select_statement\n [WITH [CASCADED | LOCAL] CHECK OPTION]"),(152,14,"TIMESTAMPDIFF FUNCTION","","mysql> SELECT TIMESTAMPDIFF(MONTH,'2003-02-01','2003-05-01');\n -> 3\nmysql> SELECT TIMESTAMPDIFF(YEAR,'2002-05-01','2001-01-01');\n -> -1"),(153,4,"CRC32"," CRC32(expr)\nComputes a cyclic redundancy check value and returns a 32-bit unsigned value.\nThe result is NULL if the argument is NULL.\nThe argument is expected be a string and is treated as one if it is not.\n","mysql> SELECT CRC32('MySQL');\n -> 3259397556"),(154,20,"XOR"," XOR\nLogical XOR.\nReturns NULL if either operand is NULL.\nFor non-NULL operands, evaluates to 1 if an odd number\nof operands is non-zero,\notherwise 0 is returned.\n","mysql> SELECT 1 XOR 1;\n -> 0\nmysql> SELECT 1 XOR 0;\n -> 1\nmysql> SELECT 1 XOR NULL;\n -> NULL\nmysql> SELECT 1 XOR 1 XOR 1;\n -> 1"),(155,18,"STARTPOINT"," StartPoint(ls)\nReturns the Point that is the start point of the LineString value\nls.\n","mysql> SET @ls = 'LineString(1 1,2 2,3 3)';\nmysql> SELECT AsText(StartPoint(GeomFromText(@ls)));\n+---------------------------------------+\n| AsText(StartPoint(GeomFromText(@ls))) |\n+---------------------------------------+\n| POINT(1 1) |\n+---------------------------------------+"),(156,3,"MPOLYFROMTEXT"," MPolyFromText(wkt[,srid])\n MultiPolygonFromText(wkt[,srid])\nConstructs a MULTIPOLYGON value using its WKT representation and SRID.\n",""),(157,8,"MBRINTERSECTS"," MBRIntersects(g1,g2)\nReturns 1 or 0 to indicate whether or not the Minimum Bounding Rectangles of\nthe two geometries g1 and g2 intersect.\n",""),(158,12,"BIT_OR"," BIT_OR(expr)\nReturns the bitwise OR of all bits in expr. The calculation is\nperformed with 64-bit (BIGINT) precision.\n",""),(159,14,"YEARWEEK"," YEARWEEK(date)\n YEARWEEK(date,start)\nReturns year and week for a date. The start argument works exactly\nlike the start argument to WEEK(). The year in the\nresult may be\ndifferent from the year in the date argument for the first and the last\nweek of the year.\n","mysql> SELECT YEARWEEK('1987-01-01');\n -> 198653"),(160,26,"NOT BETWEEN"," expr NOT BETWEEN min AND max\nThis is the same as NOT (expr BETWEEN min AND max).\n",""),(161,4,"LOG10"," LOG10(X)\nReturns the base-10 logarithm of X.\n","mysql> SELECT LOG10(2);\n -> 0.301030\nmysql> SELECT LOG10(100);\n -> 2.000000\nmysql> SELECT LOG10(-100);\n -> NULL"),(162,4,"SQRT"," SQRT(X)\nReturns the non-negative square root of X.\n","mysql> SELECT SQRT(4);\n -> 2.000000\nmysql> SELECT SQRT(20);\n -> 4.472136"),(163,1,"DECIMAL"," DECIMAL[(M[,D])] [UNSIGNED] [ZEROFILL]\n\n\nFor MySQL 5.0.3 and above:\n\nA packed ``exact'' fixed-point number. M is the total number of\ndigits and D is the number of decimals. The decimal point and\n(for negative numbers) the '-' sign are not counted in M.\nIf D is 0, values have no\ndecimal point or fractional part. The maximum number of digits\n(M) for DECIMAL is 64. The maximum number of supported\ndecimals (D) is 30. If UNSIGNED is specified, negative\nvalues are disallowed.\n\nIf D is omitted, the default is 0. If M is omitted, the\ndefault is 10.\n\nAll basic calculations (+, -, *, /) with DECIMAL columns are\ndone with a precision of 64 decimal digits.\n\nBefore MySQL 5.0.3:\n\nAn unpacked fixed-point number. Behaves like a CHAR column;\n``unpacked'' means the number is stored as a string, using one character for\neach digit of the value. M is the total number of digits and\nD is the number of decimals. The decimal point and (for negative\nnumbers) the '-' sign are not counted in M, although space for\nthem is reserved. If D is 0, values have no decimal point or\nfractional part. The maximum range of DECIMAL values is the same as\nfor DOUBLE, but the actual range for a given DECIMAL column\nmay be constrained by the choice of M and D. If\nUNSIGNED is specified, negative values are disallowed.\n\nIf D is omitted, the default is 0. If M is omitted, the\ndefault is 10.\n\nBefore MySQL 3.23:\n\nAs just described, with the exception that the M value must be large\nenough to include the space needed for the sign and the decimal point\ncharacters.\n\n DEC[(M[,D])] [UNSIGNED] [ZEROFILL]\n NUMERIC[(M[,D])] [UNSIGNED] [ZEROFILL]\n FIXED[(M[,D])] [UNSIGNED] [ZEROFILL]\n\nThese are synonyms for DECIMAL. The FIXED synonym was added\nin MySQL 4.1.0 for compatibility with other servers.\n",""),(164,5,"GEOMETRYN"," GeometryN(gc,n)\nReturns the n-th geometry in the GeometryCollection value\ngc. Geometry numbers begin at 1.\n","mysql> SET @gc = 'GeometryCollection(Point(1 1),LineString(2 2, 3 3))';\nmysql> SELECT AsText(GeometryN(GeomFromText(@gc),1));\n+----------------------------------------+\n| AsText(GeometryN(GeomFromText(@gc),1)) |\n+----------------------------------------+\n| POINT(1 1) |\n+----------------------------------------+");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (165,28,"CREATE INDEX","In MySQL 3.22 or later, CREATE INDEX is mapped to an\nALTER TABLE statement to create indexes.\nSee also : [ALTER TABLE, , ALTER TABLE].\nThe CREATE INDEX statement doesn't do anything prior\nto MySQL 3.22.\n","CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name\n [USING index_type]\n ON tbl_name (index_col_name,...)\n\nindex_col_name:\n col_name [(length)] [ASC | DESC]"),(166,28,"ALTER DATABASE","\nALTER DATABASE allows you to change the overall characteristics of a\ndatabase. These characteristics are stored in the *db.opt file in the\ndatabase directory.\nTo use ALTER DATABASE, you need the ALTER privilege on the\ndatabase.\n","ALTER {DATABASE | SCHEMA} [db_name]\n alter_specification [, alter_specification] ...\n\nalter_specification:\n [DEFAULT] CHARACTER SET charset_name\n | [DEFAULT] COLLATE collation_name"),(167,27,"<<","Shifts a longlong (BIGINT) number to the left.\n <<\n","mysql> SELECT 1 << 2;\n -> 4"),(168,17,"MD5"," MD5(str)\nCalculates an MD5 128-bit checksum for the string. The value is returned\nas a binary string of 32 hex digits,\nor NULL if the argument was NULL.\nThe return value can, for example, be used as a hash key.\n","mysql> SELECT MD5('testing');\n -> 'ae2b1fca515949e5d54fb22b8ed95575'"),(169,26,"<"," <\nLess than:\n","mysql> SELECT 2 < 2;\n -> 0"),(170,14,"UNIX_TIMESTAMP"," UNIX_TIMESTAMP()\n UNIX_TIMESTAMP(date)\nIf called with no argument, returns a Unix timestamp (seconds since\n'1970-01-01 00:00:00' GMT) as an unsigned integer. If\nUNIX_TIMESTAMP() is called with a date argument, it\nreturns the value of the argument as seconds since '1970-01-01\n00:00:00' GMT. date may be a DATE string, a\nDATETIME string, a TIMESTAMP, or a number in the format\nYYMMDD or YYYYMMDD in local time.\n","mysql> SELECT UNIX_TIMESTAMP();\n -> 882226357\nmysql> SELECT UNIX_TIMESTAMP('1997-10-04 22:23:00');\n -> 875996580"),(171,14,"DAYOFMONTH"," DAYOFMONTH(date)\nReturns the day of the month for date, in the range 1 to\n31.\n","mysql> SELECT DAYOFMONTH('1998-02-03');\n -> 3"),(172,23,"ASCII"," ASCII(str)\nReturns the numeric value of the leftmost character of the string\nstr. Returns 0 if str is the empty string. Returns\nNULL if str is NULL.\nASCII() works for characters with numeric values from 0 to\n255.\n","mysql> SELECT ASCII('2');\n -> 50\nmysql> SELECT ASCII(2);\n -> 50\nmysql> SELECT ASCII('dx');\n -> 100"),(173,4,"DIV","Integer division.\nSimilar to FLOOR() but safe with BIGINT values.\n","mysql> SELECT 5 DIV 2;\n -> 2"),(174,7,"RENAME USER","The RENAME USER statement renames existing MySQL accounts.\nTo use it, you must have the global CREATE USER privilege or\nthe UPDATE privilege for the mysql database.\nAn error occurs if any old account does not exist or any new\naccount exists. The old_user and new_user values are given the\nsame way as for the GRANT statement.\n","RENAME USER old_user TO new_user\n [, old_user TO new_user] ..."),(175,7,"SHOW SLAVE STATUS","SHOW SLAVE STATUS\n\nProvides status information on\nessential parameters of the slave threads. If you issue this statement using\nthe\nmysql client, you can use a \\G statement terminator rather than\nsemicolon to get a more readable vertical layout:\n\nmysql> SHOW SLAVE STATUS\\G\n*************************** 1. row ***************************\n Slave_IO_State: Waiting for master to send event\n Master_Host: localhost\n Master_User: root\n Master_Port: 3306\n Connect_Retry: 3\n Master_Log_File: gbichot-bin.005\n Read_Master_Log_Pos: 79\n Relay_Log_File: gbichot-relay-bin.005\n Relay_Log_Pos: 548\nRelay_Master_Log_File: gbichot-bin.005\n Slave_IO_Running: Yes\n Slave_SQL_Running: Yes\n Replicate_Do_DB:\n Replicate_Ignore_DB:\n Last_Errno: 0\n Last_Error:\n Skip_Counter: 0\n Exec_Master_Log_Pos: 79\n Relay_Log_Space: 552\n Until_Condition: None\n Until_Log_File:\n Until_Log_Pos: 0\n Master_SSL_Allowed: No\n Master_SSL_CA_File:\n Master_SSL_CA_Path:\n Master_SSL_Cert:\n Master_SSL_Cipher:\n Master_SSL_Key:\nSeconds_Behind_Master: 8\n",""),(176,24,"GEOMETRY","MySQL provides a standard way of creating spatial columns for\ngeometry types, for example, with CREATE TABLE or ALTER TABLE.\nCurrently, spatial columns are supported only for MyISAM tables.\n","mysql> CREATE TABLE geom (g GEOMETRY);\nQuery OK, 0 rows affected (0.02 sec)"),(177,18,"NUMPOINTS"," NumPoints(ls)\nReturns the number of points in the LineString value ls.\n","mysql> SET @ls = 'LineString(1 1,2 2,3 3)';\nmysql> SELECT NumPoints(GeomFromText(@ls));\n+------------------------------+\n| NumPoints(GeomFromText(@ls)) |\n+------------------------------+\n| 3 |\n+------------------------------+"),(178,27,"&"," &\nBitwise AND:\n","mysql> SELECT 29 & 15;\n -> 13"),(179,14,"LOCALTIMESTAMP"," LOCALTIMESTAMP\n LOCALTIMESTAMP()\n\nLOCALTIMESTAMP and LOCALTIMESTAMP() are synonyms for\nNOW().\n","");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (180,14,"ADDDATE"," ADDDATE(date,INTERVAL expr type)\n ADDDATE(expr,days)\n\nWhen invoked with the INTERVAL form of the second argument,\nADDDATE() is a synonym for DATE_ADD(). The related\nfunction SUBDATE() is a synonym for DATE_SUB().\nFor information on the INTERVAL argument, see the\ndiscussion for DATE_ADD().\n\nmysql> SELECT DATE_ADD('1998-01-02', INTERVAL 31 DAY);\n -> '1998-02-02'\nmysql> SELECT ADDDATE('1998-01-02', INTERVAL 31 DAY);\n -> '1998-02-02'\n\nAs of MySQL 4.1.1, the second syntax is allowed, where expr is a date\nor datetime expression and days is the number of days to be added to\nexpr.\n\nmysql> SELECT ADDDATE('1998-01-02', 31);\n -> '1998-02-02'\n",""),(181,1,"SMALLINT"," SMALLINT[(M)] [UNSIGNED] [ZEROFILL]\n\nA small integer. The signed range is -32768 to 32767. The\nunsigned range is 0 to 65535.\n",""),(182,23,"ORD"," ORD(str)\nIf the leftmost character of the string str is a multi-byte character,\nreturns the code for that character, calculated from the numeric values\nof its constituent bytes using this formula:\n\n (1st byte code)\n+ (2nd byte code * 256)\n+ (3rd byte code * 256^2) ...\n\nIf the leftmost character is not a multi-byte character, ORD()\nreturns the same value as the ASCII() function.\n","mysql> SELECT ORD('2');\n -> 50"),(183,19,"ENVELOPE"," Envelope(g)\nReturns the Minimum Bounding Rectangle (MBR) for the geometry value g.\nThe result is returned as a Polygon value.\n\nmysql> SELECT AsText(Envelope(GeomFromText('LineString(1 1,2 2)')));\n+-------------------------------------------------------+\n| AsText(Envelope(GeomFromText('LineString(1 1,2 2)'))) |\n+-------------------------------------------------------+\n| POLYGON((1 1,2 1,2 2,1 2,1 1)) |\n+-------------------------------------------------------+\n\nThe polygon is defined by the corner points of the bounding box:\n\nPOLYGON((MINX MINY, MAXX MINY, MAXX MAXY, MINX MAXY, MINX MINY))\n",""),(184,21,"IS_FREE_LOCK"," IS_FREE_LOCK(str)\nChecks whether the lock named str is free to use (that is, not locked).\nReturns 1 if the lock is free (no one is using the lock),\n0 if the lock is in use, and\nNULL on errors (such as incorrect arguments).\n",""),(185,6,"SHOW BINLOG","SHOW BINLOG EVENTS\n [IN 'log_name'] [FROM pos] [LIMIT [offset,] row_count]\n\nShows the events in the binary log.\nIf you do not specify 'log_name', the first binary log is displayed.\n",""),(186,11,"TOUCHES"," Touches(g1,g2)\nReturns 1 or 0 to indicate whether or not g1 spatially touches\ng2. Two geometries /spatially touch/ if the interiors of\nthe geometries do not intersect, but the boundary of one of the geometries\nintersects either the boundary or the interior of the other.\n",""),(187,14,"TIMESTAMPADD FUNCTION","","mysql> SELECT TIMESTAMPADD(MINUTE,1,'2003-01-02');\n -> '2003-01-02 00:01:00'\nmysql> SELECT TIMESTAMPADD(WEEK,1,'2003-01-02');\n -> '2003-01-09'"),(188,21,"INET_ATON"," INET_ATON(expr)\nGiven the dotted-quad representation of a network address as a string,\nreturns an integer that represents the numeric value of the address.\nAddresses may be 4- or 8-byte addresses.\n","mysql> SELECT INET_ATON('209.207.224.40');\n -> 3520061480"),(189,1,"AUTO_INCREMENT","The AUTO_INCREMENT attribute can be used to generate a unique\nidentity for new rows:\n","CREATE TABLE animals (\n id MEDIUMINT NOT NULL AUTO_INCREMENT,\n name CHAR(30) NOT NULL,\n PRIMARY KEY (id)\n );\nINSERT INTO animals (name) VALUES ('dog'),('cat'),('penguin'),\n ('lax'),('whale'),('ostrich');\nSELECT * FROM animals;"),(190,23,"UNCOMPRESS"," UNCOMPRESS(string_to_uncompress)\nUncompresses a string compressed by the COMPRESS() function.\nIf the argument is not a compressed value, the result is NULL.\nThis function requires MySQL to have been compiled with a compression library\nsuch as zlib. Otherwise, the return value is always NULL.\n","mysql> SELECT UNCOMPRESS(COMPRESS('any string'));\n -> 'any string'\nmysql> SELECT UNCOMPRESS('any string');\n -> NULL"),(191,19,"ISSIMPLE"," IsSimple(g)\n\nCurrently, this function is a placeholder and should not be used.\nIf implemented, its behavior will be as described in the next paragraph.\n\nReturns 1 if the geometry value g has no anomalous geometric points,\nsuch as self-intersection or self-tangency. IsSimple() returns 0 if the\nargument is not simple, and -1 if it is NULL.\n\nThe description of each instantiable geometric class given earlier in\nthe chapter includes the specific conditions that cause an instance of\nthat class to be classified as not simple.\n",""),(192,4,"- BINARY"," -\nSubtraction:\n","mysql> SELECT 3-5;\n -> -2"),(193,3,"GEOMCOLLFROMTEXT"," GeomCollFromText(wkt[,srid])\n GeometryCollectionFromText(wkt[,srid])\nConstructs a GEOMETRYCOLLECTION value using its WKT representation and SRID.\n",""),(194,3,"WKT DEFINITION","The Well-Known Text (WKT) representation of Geometry is designed to\nexchange geometry data in ASCII form.\n","");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (195,14,"CURRENT_TIME"," CURRENT_TIME\n CURRENT_TIME()\n\nCURRENT_TIME and CURRENT_TIME() are synonyms for\nCURTIME().\n",""),(196,25,"LAST_INSERT_ID"," LAST_INSERT_ID()\n LAST_INSERT_ID(expr)\nReturns the last automatically generated value that was inserted into\nan AUTO_INCREMENT column.\n","mysql> SELECT LAST_INSERT_ID();\n -> 195"),(197,14,"LAST_DAY"," LAST_DAY(date)\n\nTakes a date or datetime value and returns the corresponding value for the\nlast day of the month. Returns NULL if the argument is invalid.\n","mysql> SELECT LAST_DAY('2003-02-05');\n -> '2003-02-28'\nmysql> SELECT LAST_DAY('2004-02-05');\n -> '2004-02-29'\nmysql> SELECT LAST_DAY('2004-01-01 01:01:01');\n -> '2004-01-31'\nmysql> SELECT LAST_DAY('2003-03-32');\n -> NULL"),(198,1,"MEDIUMINT"," MEDIUMINT[(M)] [UNSIGNED] [ZEROFILL]\n\nA medium-size integer. The signed range is -8388608 to\n8388607. The unsigned range is 0 to 16777215.\n",""),(199,4,"FLOOR"," FLOOR(X)\nReturns the largest integer value not greater than X.\n","mysql> SELECT FLOOR(1.23);\n -> 1\nmysql> SELECT FLOOR(-1.23);\n -> -2"),(200,23,"RTRIM"," RTRIM(str)\nReturns the string str with trailing space characters removed.\n","mysql> SELECT RTRIM('barbar ');\n -> 'barbar'"),(201,4,"DEGREES"," DEGREES(X)\nReturns the argument X, converted from radians to degrees.\n","mysql> SELECT DEGREES(PI());\n -> 180.000000"),(202,6,"EXPLAIN","The EXPLAIN statement can be used either as a synonym for\nDESCRIBE or as a way to obtain information about how MySQL executes\na SELECT statement:\n\n --- The EXPLAIN tbl_name syntax is synonymous with DESCRIBE tbl_name\nor\nSHOW COLUMNS FROM tbl_name.\n --- When you precede a SELECT statement with the keyword EXPLAIN,\nMySQL explains how it would process the SELECT, providing\ninformation about how tables are joined and in which order.\n","EXPLAIN tbl_name"),(203,1,"VARCHAR"," [NATIONAL] VARCHAR(M) [BINARY]\n\nA variable-length string. M represents the maximum column length.\nThe range of M is 1 to 255 before MySQL 4.0.2, 0 to 255 as of MySQL\n4.0.2, and 0 to 65,535 as of MySQL 5.0.3. (The maximum actual length of a\nVARCHAR in MySQL 5.0 is determined by the maximum row size and the\ncharacter set you use. The maximum effective length is 65,532 bytes.)\n\nNote: Before 5.0.3, trailing spaces were removed when\nVARCHAR values were stored, which differs from the standard SQL\nspecification.\n\nFrom MySQL 4.1.0 to 5.0.2, a VARCHAR column with a length\nspecification greater than 255 is converted to the smallest TEXT\ntype that can hold values of the given length. For example,\nVARCHAR(500) is converted to TEXT, and\nVARCHAR(200000) is converted to MEDIUMTEXT. This is a\ncompatibility feature. However, this conversion affects trailing-space\nremoval.\n\nVARCHAR is shorthand for CHARACTER VARYING.\n\nAs of MySQL 4.1.2, the BINARY attribute is shorthand for specifying\nthe binary collation of the column character set. Sorting and comparison is\nbased on numeric character values. Before 4.1.2, BINARY attribute\ncauses the column to be treated as a binary string. Sorting and comparison\nis based on numeric byte values.\n\nStarting from MySQL 5.0.3, VARCHAR is stored with a one-byte or\ntwo-byte length prefix + data. The length prefix is two bytes if the\nVARCHAR column is declared with a length greater than 255.\n",""),(204,23,"UNHEX"," UNHEX(str)\n\nDoes the opposite of HEX(str). That is, it interprets each pair of\nhexadecimal digits in the argument as a number and converts it to the\ncharacter represented by the number. The resulting characters are returned as\na binary string.\n","mysql> SELECT UNHEX('4D7953514C');\n -> 'MySQL'\nmysql> SELECT 0x4D7953514C;\n -> 'MySQL'\nmysql> SELECT UNHEX(HEX('string'));\n -> 'string'\nmysql> SELECT HEX(UNHEX('1267'));\n -> '1267'"),(205,4,"- UNARY"," -\nUnary minus. Changes the sign of the argument.\n","mysql> SELECT - 2;\n -> -2"),(206,4,"COS"," COS(X)\nReturns the cosine of X, where X is given in radians.\n","mysql> SELECT COS(PI());\n -> -1.000000"),(207,14,"DATE FUNCTION"," DATE(expr)\n\nExtracts the date part of the date or datetime expression expr.\n","mysql> SELECT DATE('2003-12-31 01:02:03');\n -> '2003-12-31'"),(208,6,"RESET MASTER","RESET MASTER\n\nDeletes all binary logs listed in the index file,\nresets the binary log index file to be empty, and creates a new binary log\nfile.\n\nThis statement was named FLUSH MASTER before MySQL 3.23.26.\n",""),(209,4,"TAN"," TAN(X)\nReturns the tangent of X, where X is given in radians.\n","mysql> SELECT TAN(PI()+1);\n -> 1.557408");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (210,4,"PI"," PI()\nReturns the value of PI. The default number of decimals displayed is five, but\nMySQL internally uses the full double-precision value for PI.\n","mysql> SELECT PI();\n -> 3.141593\nmysql> SELECT PI()+0.000000000000000000;\n -> 3.141592653589793116"),(211,14,"WEEKOFYEAR"," WEEKOFYEAR(date)\n\nReturns the calendar week of the date as a number in the\nrange from 1 to 53. It is a compatibility function\nthat is equivalent to WEEK(date,3).\n","mysql> SELECT WEEKOFYEAR('1998-02-20');\n -> 8"),(212,4,"/"," /\nDivision:\n","mysql> SELECT 3/5;\n -> 0.60"),(213,12,"STDDEV_SAMP"," STDDEV_SAMP(expr)\nReturns the sample standard deviation of expr (the square root of\nVAR_SAMP(). This function was added in MySQL 5.0.3.\n",""),(214,13,"MLINEFROMWKB"," MLineFromWKB(wkb[,srid])\n MultiLineStringFromWKB(wkb[,srid])\nConstructs a MULTILINESTRING value using its WKB representation and SRID.\n",""),(215,23,"UNCOMPRESSED_LENGTH"," UNCOMPRESSED_LENGTH(compressed_string)\nReturns the length of a compressed string before compression.\n","mysql> SELECT UNCOMPRESSED_LENGTH(COMPRESS(REPEAT('a',30)));\n -> 30"),(216,4,"LOG2"," LOG2(X)\nReturns the base-2 logarithm of X.\n","mysql> SELECT LOG2(65536);\n -> 16.000000\nmysql> SELECT LOG2(-100);\n -> NULL"),(217,14,"SUBTIME"," SUBTIME(expr,expr2)\n\n\nSUBTIME() subtracts expr2 from expr and returns the result.\nexpr is a time or datetime expression, and expr2 is a time\nexpression.\n","mysql> SELECT SUBTIME('1997-12-31 23:59:59.999999',\n -> '1 1:1:1.000002');\n -> '1997-12-30 22:58:58.999997'\nmysql> SELECT SUBTIME('01:00:00.999999', '02:00:00.999998');\n -> '-00:59:59.999999'"),(218,28,"DROP TABLE","DROP TABLE removes one or more tables. You must have the DROP\nprivilege for each table. All table data and the table\ndefinition are /removed/, so /be careful/ with this statement!\n\nIn MySQL 3.22 or later, you can use the keywords IF EXISTS\nto prevent an error from occurring for tables that don't exist. As of\nMySQL 4.1, a NOTE is generated for each non-existent table when\nusing IF EXISTS.\nSee also : [SHOW WARNINGS, , SHOW WARNINGS].\n\nRESTRICT and CASCADE are allowed to make porting easier.\nFor the moment, they do nothing.\n\nNote: DROP TABLE automatically commits the current\nactive transaction, unless you are using MySQL 4.1 or higher and the\nTEMPORARY keyword.\n","DROP [TEMPORARY] TABLE [IF EXISTS]\n tbl_name [, tbl_name] ...\n [RESTRICT | CASCADE]"),(219,22,"DUAL","SELECT ... FROM DUAL is an alias for SELECT ....\n(To be compatible with some other databases).\n",""),(220,23,"INSTR"," INSTR(str,substr)\nReturns the position of the first occurrence of substring substr in\nstring str. This is the same as the two-argument form of\nLOCATE(), except that the arguments are swapped.\n","mysql> SELECT INSTR('foobarbar', 'bar');\n -> 4\nmysql> SELECT INSTR('xbar', 'foobar');\n -> 0"),(221,14,"NOW"," NOW()\n\nReturns the current date and time as a value in 'YYYY-MM-DD HH:MM:SS'\nor YYYYMMDDHHMMSS format, depending on whether the function is used in\na string or numeric context.\n","mysql> SELECT NOW();\n -> '1997-12-15 23:50:26'\nmysql> SELECT NOW() + 0;\n -> 19971215235026"),(222,26,">="," >=\nGreater than or equal:\n","mysql> SELECT 2 >= 2;\n -> 1"),(223,4,"EXP"," EXP(X)\nReturns the value of e (the base of natural logarithms) raised to\nthe power of X.\n","mysql> SELECT EXP(2);\n -> 7.389056\nmysql> SELECT EXP(-2);\n -> 0.135335"),(224,17,"SHA"," SHA1(str)\n SHA(str)\nCalculates an SHA1 160-bit checksum for the string, as described in\nRFC 3174 (Secure Hash Algorithm). The value is returned as a string of 40 hex\ndigits, or NULL if the argument was NULL.\nOne of the possible uses for this function is as a hash key. You can\nalso use it as a cryptographically safe function for storing passwords.\n","mysql> SELECT SHA1('abc');\n -> 'a9993e364706816aba3e25717850c26c9cd0d89d'");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (225,1,"LONGBLOB"," LONGBLOB\n\nA BLOB column with a maximum length of 4,294,967,295 or\n4GB (2^32 - 1) bytes. Up to MySQL\n3.23, the client/server protocol and MyISAM tables had a limit\nof 16MB per communication packet / table row. From MySQL 4.0, the maximum\nallowed length of LONGBLOB columns depends on the\nconfigured maximum packet size in the client/server protocol and available\nmemory.\n",""),(226,18,"POINTN"," PointN(ls,n)\nReturns the n-th point in the Linestring value ls.\nPoint numbers begin at 1.\n","mysql> SET @ls = 'LineString(1 1,2 2,3 3)';\nmysql> SELECT AsText(PointN(GeomFromText(@ls),2));\n+-------------------------------------+\n| AsText(PointN(GeomFromText(@ls),2)) |\n+-------------------------------------+\n| POINT(2 2) |\n+-------------------------------------+"),(227,12,"SUM"," SUM([DISTINCT] expr)\nReturns the sum of expr. If the return set has no rows,\nSUM() returns NULL.\nThe DISTINCT keyword can be used as of MySQL 5.0.0 to sum only the\ndistinct values of expr.\n",""),(228,23,"OCT"," OCT(N)\nReturns a string representation of the octal value of N, where\nN is a longlong (BIGINT)number. This is equivalent to\nCONV(N,10,8).\nReturns NULL if N is NULL.\n","mysql> SELECT OCT(12);\n -> '14'"),(229,14,"SYSDATE"," SYSDATE()\n\nSYSDATE() is a synonym for NOW().\n",""),(230,13,"ASBINARY"," AsBinary(g)\nConverts a value in internal geometry format to its WKB representation\nand returns the binary result.\n","SELECT AsBinary(g) FROM geom;"),(231,14,"MAKEDATE"," MAKEDATE(year,dayofyear)\n\nReturns a date, given year and day-of-year values.\ndayofyear must be greater than 0 or the result is NULL.\n","mysql> SELECT MAKEDATE(2001,31), MAKEDATE(2001,32);\n -> '2001-01-31', '2001-02-01'\nmysql> SELECT MAKEDATE(2001,365), MAKEDATE(2004,365);\n -> '2001-12-31', '2004-12-30'\nmysql> SELECT MAKEDATE(2001,0);\n -> NULL"),(232,23,"BINARY OPERATOR"," BINARY\nThe BINARY operator casts the string following it to a binary string.\nThis is an easy way to force a column comparison to be done byte by byte\nrather than character by character. This causes the comparison to be\ncase sensitive even\nif the column isn't defined as BINARY or BLOB.\nBINARY also causes trailing spaces to be significant.\n","mysql> SELECT 'a' = 'A';\n -> 1\nmysql> SELECT BINARY 'a' = 'A';\n -> 0\nmysql> SELECT 'a' = 'a ';\n -> 1\nmysql> SELECT BINARY 'a' = 'a ';\n -> 0"),(233,8,"MBROVERLAPS"," MBROverlaps(g1,g2)\nReturns 1 or 0 to indicate whether or not the Minimum Bounding Rectangles of\nthe two geometries g1 and g2 overlap.\n",""),(234,23,"SOUNDEX"," SOUNDEX(str)\nReturns a soundex string from str. Two strings that sound almost the\nsame should have identical soundex strings. A standard soundex string\nis four characters long, but the SOUNDEX() function returns an\narbitrarily long string. You can use SUBSTRING() on the result to get\na standard soundex string. All non-alphabetic characters are ignored in the\ngiven string. All international alphabetic characters outside the A-Z range\nare treated as vowels.\n","mysql> SELECT SOUNDEX('Hello');\n -> 'H400'\nmysql> SELECT SOUNDEX('Quadratically');\n -> 'Q36324'"),(235,6,"SHOW MASTER LOGS","SHOW MASTER LOGS\nSHOW BINARY LOGS\n\nLists the binary log files on the server. This statement is used as part of\nthe procedure described in [PURGE MASTER LOGS, , PURGE MASTER LOGS]\nfor determining which logs can be purged.\n\nmysql> SHOW BINARY LOGS;\n+---------------+-----------+\n| Log_name | File_size |\n+---------------+-----------+\n| binlog.000015 | 724935 |\n| binlog.000016 | 733481 |\n+---------------+-----------+\n",""),(236,8,"MBRTOUCHES"," MBRTouches(g1,g2)\nReturns 1 or 0 to indicate whether or not the Minimum Bounding Rectangles of\nthe two geometries g1 and g2 touch.\n",""),(237,6,"INSERT SELECT","INSERT [LOW_PRIORITY | HIGH_PRIORITY] [IGNORE]\n [INTO] tbl_name [(col_name,...)]\n SELECT ...\n [ ON DUPLICATE KEY UPDATE col_name=expr, ... ]\n\nWith INSERT ... SELECT, you can quickly insert many rows\ninto a table from one or many tables.\n","INSERT INTO tbl_temp2 (fld_id)\n SELECT tbl_temp1.fld_order_id\n FROM tbl_temp1 WHERE tbl_temp1.fld_order_id > 100;"),(238,1,"VARBINARY"," VARBINARY(M)\n\nThe VARBINARY type is similar to the VARCHAR type, but stores\nbinary byte strings rather than non-binary character strings.\n\nThis type was added in MySQL 4.1.2.\n",""),(239,6,"LOAD INDEX","The LOAD INDEX INTO CACHE statement preloads a table index into the\nkey cache to which it has been assigned by an explicit CACHE INDEX\nstatement, or into the default key cache otherwise. LOAD INDEX INTO\nCACHE is used only for MyISAM tables.\n\nThe IGNORE LEAVES modifier causes only blocks for the non-leaf\nnodes of the index to be preloaded.\n","LOAD INDEX INTO CACHE\n tbl_index_list [, tbl_index_list] ...\n\ntbl_index_list:\n tbl_name\n [[INDEX|KEY] (index_name[, index_name] ...)]\n [IGNORE LEAVES]");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (240,6,"UNION","UNION is used to combine the result from many SELECT\nstatements into one result set. UNION is available from MySQL 4.0.0\non.\n\nSelected columns listed in corresponding positions of each SELECT\nstatement should have the same type. (For example, the first column selected\nby the first statement should have the same type as the first column selected\nby the other statements.) The column names used in\nthe first SELECT statement are used as the column names for the\nresults returned.\n","SELECT ...\nUNION [ALL | DISTINCT]\nSELECT ...\n [UNION [ALL | DISTINCT]\n SELECT ...]"),(241,14,"TO_DAYS"," TO_DAYS(date)\nGiven a date date, returns a daynumber (the number of days since year\n0).\n","mysql> SELECT TO_DAYS(950501);\n -> 728779\nmysql> SELECT TO_DAYS('1997-10-07');\n -> 729669"),(242,23,"NOT REGEXP"," expr NOT REGEXP pat\n expr NOT RLIKE pat\n\nThis is the same as NOT (expr REGEXP pat).\n",""),(243,26,"NOT IN"," expr NOT IN (value,...)\nThis is the same as NOT (expr IN (value,...)).\n",""),(244,20,"!"," NOT\n !\nLogical NOT.\nEvaluates to 1 if the operand is 0,\nto 0 if the operand is non-zero,\nand NOT NULL returns NULL.\n","mysql> SELECT NOT 10;\n -> 0\nmysql> SELECT NOT 0;\n -> 1\nmysql> SELECT NOT NULL;\n -> NULL\nmysql> SELECT ! (1+1);\n -> 0\nmysql> SELECT ! 1+1;\n -> 1"),(245,1,"TEXT TYPE"," TEXT[(M)]\n\nA TEXT column with a maximum length of 65,535\n(2^16 - 1) characters.\n\nBeginning with MySQL 4.1, an optional length M can be given.\nMySQL will create the column as the smallest TEXT type largest\nenough to hold values M characters long.\n",""),(246,1,"DOUBLE"," DOUBLE[(M,B)] [UNSIGNED] [ZEROFILL]\n\nA normal-size (double-precision) floating-point number. Allowable values are\n-1.7976931348623157E+308 to -2.2250738585072014E-308,\n0, and 2.2250738585072014E-308 to 1.7976931348623157E+308.\nIf UNSIGNED is specified, negative values are disallowed. M is the\ndisplay width and B is the number of bits of precision. DOUBLE\nwithout arguments or FLOAT(p) (where p is in the range from\n25 to 53) stands for a double-precision floating-point number. A\nsingle-precision floating-point number is accurate to approximately 7 decimal\nplaces; a double-precision floating-point number is accurate to approximately 15\ndecimal places.\n\n DOUBLE PRECISION[(M,D)] [UNSIGNED] [ZEROFILL]\n REAL[(M,D)] [UNSIGNED] [ZEROFILL]\n\nThese are synonyms for DOUBLE.\nException: If the server SQL mode includes the REAL_AS_FLOAT option,\nREAL is a synonym for FLOAT rather than DOUBLE.\n",""),(247,1,"TIME"," TIME\n\nA time. The range is '-838:59:59' to '838:59:59'.\nMySQL displays TIME values in 'HH:MM:SS' format, but\nallows you to assign values to TIME columns using either strings or\nnumbers.\n",""),(248,20,"&&"," AND\n &&\nLogical AND.\nEvaluates to 1 if all operands are non-zero and not NULL,\nto 0 if one or more operands are 0,\notherwise NULL is returned.\n","mysql> SELECT 1 && 1;\n -> 1\nmysql> SELECT 1 && 0;\n -> 0\nmysql> SELECT 1 && NULL;\n -> NULL\nmysql> SELECT 0 && NULL;\n -> 0\nmysql> SELECT NULL && 0;\n -> 0"),(249,16,"X"," X(p)\nReturns the X-coordinate value for the point p as a double-precision\nnumber.\n","mysql> SELECT X(GeomFromText('Point(56.7 53.34)'));\n+--------------------------------------+\n| X(GeomFromText('Point(56.7 53.34)')) |\n+--------------------------------------+\n| 56.7 |\n+--------------------------------------+"),(250,25,"FOUND_ROWS","\nA SELECT statement may include a LIMIT clause to restrict the\nnumber of rows the server returns to the client.\nIn some cases, it is desirable to know how many rows the statement would have\nreturned without the LIMIT, but without running the statement again.\nTo get this row count, include a SQL_CALC_FOUND_ROWS option in the\nSELECT statement, then invoke FOUND_ROWS() afterward:\n","mysql> SELECT SQL_CALC_FOUND_ROWS * FROM tbl_name\n -> WHERE id > 100 LIMIT 10;\nmysql> SELECT FOUND_ROWS();"),(251,25,"SYSTEM_USER"," SYSTEM_USER()\n\nSYSTEM_USER() is a synonym for USER().\n",""),(252,11,"CROSSES"," Crosses(g1,g2)\nReturns 1 if g1 spatially crosses g2.\nReturns NULL if g1 is a Polygon or a MultiPolygon,\nor if g2 is a Point or a MultiPoint.\nOtherwise, returns 0.\n\nThe term /spatially crosses/ denotes a spatial relation between two given\ngeometries that has the following properties:\n\n\n --- The two geometries intersect\n\n --- Their intersection results in a geometry that has\na dimension that is one less than the maximum dimension of the two given\ngeometries\n\n --- Their intersection is not equal to either of the two given geometries\n",""),(253,6,"TRUNCATE TABLE","TRUNCATE TABLE empties a table completely.\nLogically, this is equivalent to a DELETE statement that deletes all\nrows, but there are practical differences under some circumstances.\n\nFor InnoDB before version 5.0.3, TRUNCATE TABLE is\nmapped to DELETE, so there is no difference. Starting with\nMySQL/InnoDB-5.0.3, fast TRUNCATE TABLE is available. The\noperation is still mapped to DELETE if there are foreign\nkey constraints that reference the table.\n\nFor other storage engines, TRUNCATE TABLE differs from\nDELETE FROM in the following ways from MySQL 4.0 and up:\n\n --- Truncate operations drop and re-create the table, which is much faster\nthan deleting rows one by one.\n --- Truncate operations are not transaction-safe; you get an error if\nyou have an active transaction or an active table lock.\n --- The number of deleted rows is not returned.\n --- As long as the table definition file *tbl_name.frm is\nvalid, the table can be re-created as an empty table with TRUNCATE\nTABLE, even if the data or index files have become corrupted.\n --- The table handler does not remember the last used AUTO_INCREMENT\nvalue, but starts counting from the beginning. This is true even for\nMyISAM and InnoDB, which normally does not reuse sequence values.\n\nIn MySQL 3.23, TRUNCATE TABLE is mapped to\nCOMMIT; DELETE FROM tbl_name, so it behaves like DELETE.\nSee also : [DELETE, , DELETE].\n\nTRUNCATE TABLE is an Oracle SQL extension.\nThis statement was added in MySQL 3.23.28, although from 3.23.28\nto 3.23.32, the keyword TABLE must be omitted.\n","TRUNCATE TABLE tbl_name"),(254,14,"CURRENT_DATE"," CURRENT_DATE\n CURRENT_DATE()\n\nCURRENT_DATE and CURRENT_DATE() are synonyms for\nCURDATE().\n","");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (255,12,"BIT_XOR"," BIT_XOR(expr)\nReturns the bitwise XOR of all bits in expr. The calculation is\nperformed with 64-bit (BIGINT) precision.\n",""),(256,0,"AREA"," Area(poly)\nReturns as a double-precision number the area of the Polygon value\npoly, as measured in its spatial reference system.\n","mysql> SET @poly = 'Polygon((0 0,0 3,3 0,0 0),(1 1,1 2,2 1,1 1))';\nmysql> SELECT Area(GeomFromText(@poly));\n+---------------------------+\n| Area(GeomFromText(@poly)) |\n+---------------------------+\n| 4 |\n+---------------------------+"),(257,7,"START SLAVE","START SLAVE [thread_type [, thread_type] ... ]\nSTART SLAVE [SQL_THREAD] UNTIL\n MASTER_LOG_FILE = 'log_name', MASTER_LOG_POS = log_pos\nSTART SLAVE [SQL_THREAD] UNTIL\n RELAY_LOG_FILE = 'log_name', RELAY_LOG_POS = log_pos\n\nthread_type: IO_THREAD | SQL_THREAD\n\nSTART SLAVE with no options starts both of the slave threads.\nThe I/O thread reads queries from the master server and stores them in the\nrelay log. The SQL thread reads the relay log and executes the\nqueries.\nSTART SLAVE requires the SUPER privilege.\n\nIf START SLAVE succeeds in starting the slave threads, it\nreturns without any error. However, even in that case, it might be that the slave\nthreads start and then later stop (for example, because they don't manage to\nconnect to the master or read its binary logs, or some other\nproblem). START SLAVE does not warn you about this. You must\ncheck your slave's error log for error messages generated by\nthe slave threads, or check that they are running fine with SHOW\nSLAVE STATUS.\n",""),(258,6,"FLUSH","You should use the FLUSH statement if you want to clear some of the\ninternal caches MySQL uses. To execute FLUSH, you must have\nthe RELOAD privilege.\n","FLUSH [LOCAL | NO_WRITE_TO_BINLOG] flush_option [, flush_option] ..."),(259,7,"DESCRIBE","{DESCRIBE | DESC} tbl_name [col_name | wild]\n\nDESCRIBE provides information about the columns in a table. It is a\nshortcut for SHOW COLUMNS FROM. As of MySQL 5.0.1, these statements\nalso display information for views.\n",""),(260,12,"STDDEV_POP"," STDDEV_POP(expr)\nReturns the population standard deviation of expr (the square root of\nVAR_POP()). This function was added in MySQL 5.0.3. Before 5.0.3,\nyou can use STD() or STDDEV(), which are equivalent but not\nstandard SQL.\n",""),(261,23,"SUBSTRING"," SUBSTRING(str,pos)\n SUBSTRING(str FROM pos)\n SUBSTRING(str,pos,len)\n SUBSTRING(str FROM pos FOR len)\n\nThe forms without a len argument\nreturn a substring from string str starting at position pos.\nThe forms with a len argument\nreturn a substring len characters long from string str,\nstarting at position pos.\nThe forms that use FROM are standard SQL syntax.\n","mysql> SELECT SUBSTRING('Quadratically',5);\n -> 'ratically'\nmysql> SELECT SUBSTRING('foobarbar' FROM 4);\n -> 'barbar'\nmysql> SELECT SUBSTRING('Quadratically',5,6);\n -> 'ratica'"),(262,19,"ISEMPTY"," IsEmpty(g)\nReturns 1 if the geometry value g is the empty geometry, 0 if it is not\nempty, and -1 if the argument is NULL.\nIf the geometry is empty, it represents the empty point set.\n",""),(263,23,"LTRIM"," LTRIM(str)\nReturns the string str with leading space characters removed.\n","mysql> SELECT LTRIM(' barbar');\n -> 'barbar'"),(264,7,"REPAIR","REPAIR TABLE repairs a possibly corrupted table.\nBy default,\nit has the same effect as myisamchk --recover tbl_name.\nREPAIR TABLE works only on MyISAM tables.\n","REPAIR [LOCAL | NO_WRITE_TO_BINLOG] TABLE\n tbl_name [, tbl_name] ... [QUICK] [EXTENDED] [USE_FRM]"),(265,11,"INTERSECTS"," Intersects(g1,g2)\nReturns 1 or 0 to indicate whether or not g1 spatially intersects\ng2.\n",""),(266,8,"MBRDISJOINT"," MBRDisjoint(g1,g2)\nReturns 1 or 0 to indicate whether or not the Minimum Bounding Rectangles of\nthe two geometries g1 and g2 are disjoint (do not intersect).\n",""),(267,23,"SUBSTRING_INDEX"," SUBSTRING_INDEX(str,delim,count)\nReturns the substring from string str before count\noccurrences of the delimiter delim.\nIf count is positive, everything to the left of the final delimiter\n(counting from the left) is returned.\nIf count is negative, everything to the right of the final delimiter\n(counting from the right) is returned.\n","mysql> SELECT SUBSTRING_INDEX('www.mysql.com', '.', 2);\n -> 'www.mysql'\nmysql> SELECT SUBSTRING_INDEX('www.mysql.com', '.', -2);\n -> 'mysql.com'"),(268,17,"ENCODE"," ENCODE(str,pass_str)\nEncrypt str using pass_str as the password.\nTo decrypt the result, use DECODE().\n\nThe result is a binary string of the same length as str.\nIf you want to save it in a column, use a BLOB column type.\n",""),(269,4,"TRUNCATE"," TRUNCATE(X,D)\nReturns the number X, truncated to D decimals. If D\nis 0, the result has no decimal point or fractional part.\nD can be negative to truncate (make zero) D digits left of the\ndecimal point of the value X.\n","mysql> SELECT TRUNCATE(1.223,1);\n -> 1.2\nmysql> SELECT TRUNCATE(1.999,1);\n -> 1.9\nmysql> SELECT TRUNCATE(1.999,0);\n -> 1\nmysql> SELECT TRUNCATE(-1.999,1);\n -> -1.9\nmysql> SELECT TRUNCATE(122,-2);\n -> 100");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (270,14,"TIMESTAMPADD"," TIMESTAMPADD(interval,int_expr,datetime_expr)\n\nAdds the integer expression int_expr to the date or datetime expression\ndatetime_expr. The unit for int_expr is given by the\ninterval argument, which should be one of the following values:\nFRAC_SECOND,\nSECOND,\nMINUTE,\nHOUR,\nDAY,\nWEEK,\nMONTH,\nQUARTER,\nor\nYEAR.\n\nThe interval value may be specified using one of keywords as shown,\nor with a prefix of SQL_TSI_. For example, DAY or\nSQL_TSI_DAY both are legal.\n",""),(271,6,"SHOW","\nSHOW has many forms that provide information about databases,\ntables, columns, or status information about the server.\nThis section describes those following:\n\nSHOW [FULL] COLUMNS FROM tbl_name [FROM db_name] [LIKE 'pattern']\nSHOW CREATE DATABASE db_name\nSHOW CREATE TABLE tbl_name\nSHOW DATABASES [LIKE 'pattern']\nSHOW ENGINE engine_name {LOGS | STATUS }\nSHOW [STORAGE] ENGINES\nSHOW ERRORS [LIMIT [offset,] row_count]\nSHOW GRANTS FOR user\nSHOW INDEX FROM tbl_name [FROM db_name]\nSHOW INNODB STATUS\nSHOW [BDB] LOGS\nSHOW PRIVILEGES\nSHOW [FULL] PROCESSLIST\nSHOW [GLOBAL | SESSION] STATUS [LIKE 'pattern']\nSHOW TABLE STATUS [FROM db_name] [LIKE 'pattern']\nSHOW [OPEN] TABLES [FROM db_name] [LIKE 'pattern']\nSHOW [GLOBAL | SESSION] VARIABLES [LIKE 'pattern']\nSHOW WARNINGS [LIMIT [offset,] row_count]\n\n\nThe SHOW statement also has forms that provide information about\nreplication master and slave servers and are described in [Replication\nSQL]:\n\nSHOW BINLOG EVENTS\nSHOW MASTER LOGS\nSHOW MASTER STATUS\nSHOW SLAVE HOSTS\nSHOW SLAVE STATUS\n\nIf the syntax for a given SHOW statement includes a LIKE\n'pattern' part, 'pattern' is a string that can contain the SQL '%'\nand '_' wildcard characters.\nThe pattern is useful for restricting statement output to matching values.\n",""),(272,26,"GREATEST"," GREATEST(value1,value2,...)\nWith two or more arguments, returns the largest (maximum-valued) argument.\nThe arguments are compared using the same rules as for LEAST().\n","mysql> SELECT GREATEST(2,0);\n -> 2\nmysql> SELECT GREATEST(34.0,3.0,5.0,767.0);\n -> 767.0\nmysql> SELECT GREATEST('B','A','C');\n -> 'C'"),(273,23,"OCTETLENGTH"," OCTET_LENGTH(str)\n\nOCTET_LENGTH() is a synonym for LENGTH().\n",""),(274,14,"SECOND"," SECOND(time)\nReturns the second for time, in the range 0 to 59.\n","mysql> SELECT SECOND('10:05:03');\n -> 3"),(275,12,"BIT_AND"," BIT_AND(expr)\nReturns the bitwise AND of all bits in expr. The calculation is\nperformed with 64-bit (BIGINT) precision.\n","mysql> SELECT order.custid, customer.name, MAX(payments)\n -> FROM order,customer\n -> WHERE order.custid = customer.custid\n -> GROUP BY order.custid;"),(276,4,"ATAN2"," ATAN(Y,X)\n ATAN2(Y,X)\nReturns the arc tangent of the two variables X and Y. It is\nsimilar to calculating the arc tangent of Y / X, except that the\nsigns of both arguments are used to determine the quadrant of the\nresult.\n","mysql> SELECT ATAN(-2,2);\n -> -0.785398\nmysql> SELECT ATAN2(PI(),0);\n -> 1.570796"),(277,8,"MBRCONTAINS"," MBRContains(g1,g2)\nReturns 1 or 0 to indicate whether or not the Minimum Bounding Rectangle of\ng1 contains the Minimum Bounding Rectangle of g2.\n","mysql> SET @g1 = GeomFromText('Polygon((0 0,0 3,3 3,3 0,0 0))');\nmysql> SET @g2 = GeomFromText('Point(1 1)');\nmysql> SELECT MBRContains(@g1,@g2), MBRContains(@g2,@g1);\n----------------------+----------------------+\n| MBRContains(@g1,@g2) | MBRContains(@g2,@g1) |\n+----------------------+----------------------+\n| 1 | 0 |\n+----------------------+----------------------+"),(278,14,"HOUR"," HOUR(time)\nReturns the hour for time. The range of the return value is\n0 to 23 for time-of-day values.\n","mysql> SELECT HOUR('10:05:03');\n -> 10"),(279,1,"TYPE SET"," SET('value1','value2',...)\n\nA set. A string object that can have zero or more values, each of which must\nbe chosen from the list of values 'value1', 'value2',\n... A SET column can have a maximum of 64 members.\nSET values are represented internally as integers.\n \n",""),(280,6,"SELECT","SELECT is used to retrieve rows selected from one or more tables.\nSupport for UNION statements and subqueries is available as of MySQL\n4.0 and 4.1, respectively.\nSee [UNION, , UNION] and [Subqueries].\n\n --- Each select_expr indicates a column you want to retrieve.\n\n --- table_references indicates the table or tables from which to retrieve rows.\nIts syntax is described in [JOIN, , JOIN].\n\n --- where_definition consists of the keyword WHERE followed by\nan expression that indicates the condition or conditions that rows\nmust satisfy to be selected.\n\n\nSELECT can also be used to retrieve rows computed without reference to\nany table.\n","SELECT\n [ALL | DISTINCT | DISTINCTROW ]\n [HIGH_PRIORITY]\n [STRAIGHT_JOIN]\n [SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT]\n [SQL_CACHE | SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS]\n select_expr, ...\n [INTO OUTFILE 'file_name' export_options\n | INTO DUMPFILE 'file_name']\n [FROM table_references\n [WHERE where_definition]\n [GROUP BY {col_name | expr | position}\n [ASC | DESC], ... [WITH ROLLUP]]\n [HAVING where_definition]\n [ORDER BY {col_name | expr | position}\n [ASC | DESC] , ...]\n [LIMIT {[offset,] row_count | row_count OFFSET offset}]\n [PROCEDURE procedure_name(argument_list)]\n [FOR UPDATE | LOCK IN SHARE MODE]]"),(281,4,"COT"," COT(X)\nReturns the cotangent of X.\n","mysql> SELECT COT(12);\n -> -1.57267341\nmysql> SELECT COT(0);\n -> NULL"),(282,7,"BACKUP TABLE","Note: This statement is deprecated. We are working on a better\nreplacement for it that will provide online backup capabilities.\nIn the meantime, the mysqlhotcopy script can be used instead.\n\nBACKUP TABLE copies to the backup directory the minimum number of\ntable files needed to restore the table, after flushing any buffered changes\nto disk. The statement works only for MyISAM tables. It copies the\n*.frm definition and *.MYD data files. The *.MYI\nindex file can be rebuilt from those two files.\nThe directory should be specified as a full pathname.\n","BACKUP TABLE tbl_name [, tbl_name] ... TO '/path/to/backup/directory'"),(283,23,"LOAD_FILE"," LOAD_FILE(file_name)\nReads the file and returns the file contents as a string. The file\nmust be located on the server, you must specify the full pathname to the\nfile, and you must have the FILE privilege. The file must\nbe readable by all and be smaller than max_allowed_packet bytes.\n\nIf the file doesn't exist or cannot be read because one of the preceding\nconditions is not satisfied, the function returns NULL.\n","mysql> UPDATE tbl_name\n SET blob_column=LOAD_FILE('/tmp/picture')\n WHERE id=1;"),(284,3,"POINTFROMTEXT"," PointFromText(wkt[,srid])\nConstructs a POINT value using its WKT representation and SRID.\n","");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (285,6,"LOAD TABLE FROM MASTER","LOAD TABLE tbl_name FROM MASTER\n\nTransfers a copy of the table from master to the slave. This statement is\nimplemented mainly for debugging of LOAD DATA FROM MASTER.\nIt requires that the account used for connecting to the master server has the\nRELOAD and SUPER privileges on the master and the\nSELECT privilege on the master table to load.\nOn the slave side, the user that issues LOAD TABLE FROM MASTER should\nhave privileges to drop and create the table.\n\nThe conditions for LOAD DATA FROM MASTER apply here, too. For\nexample, LOAD TABLE FROM MASTER works only for MyISAM tables.\nThe timeout notes for LOAD DATA FROM MASTER apply as well.\n",""),(286,12,"GROUP_CONCAT"," GROUP_CONCAT(expr)\nThis function returns a string result with the concatenated non-NULL\nvalues from a group. It returns NULL if there are no non-NULL\nvalues. The full syntax is as follows:\n\nGROUP_CONCAT([DISTINCT] expr [,expr ...]\n [ORDER BY {unsigned_integer | col_name | expr}\n [ASC | DESC] [,col_name ...]]\n [SEPARATOR str_val])\n","mysql> SELECT student_name,\n -> GROUP_CONCAT(test_score)\n -> FROM student\n -> GROUP BY student_name;"),(287,14,"DATE_FORMAT"," DATE_FORMAT(date,format)\nFormats the date value according to the format string. The\nfollowing specifiers may be used in the format string:\n\n Specifier Description\n %a Abbreviated weekday name (Sun..Sat)\n %b Abbreviated month name (Jan..Dec)\n %c Month, numeric (0..12)\n %D Day of the month with English suffix (0th, 1st, 2nd, 3rd, ...)\n %d Day of the month, numeric (00..31)\n %e Day of the month, numeric (0..31)\n %f Microseconds (000000..999999)\n %H Hour (00..23)\n %h Hour (01..12)\n %I Hour (01..12)\n %i Minutes, numeric (00..59)\n %j Day of year (001..366)\n %k Hour (0..23)\n %l Hour (1..12)\n %M Month name (January..December)\n %m Month, numeric (00..12)\n %p AM or PM\n %r Time, 12-hour (hh:mm:ss followed by AM or PM)\n %S Seconds (00..59)\n %s Seconds (00..59)\n %T Time, 24-hour (hh:mm:ss)\n %U Week (00..53), where Sunday is the first day of the week\n %u Week (00..53), where Monday is the first day of the week\n %V Week (01..53), where Sunday is the first day of the week; used with %X\n %v Week (01..53), where Monday is the first day of the week; used with %x\n %W Weekday name (Sunday..Saturday)\n %w Day of the week (0=Sunday..6=Saturday)\n %X Year for the week where Sunday is the first day of the week, numeric, four digits; used with %V\n %x Year for the week, where Monday is the first day of the week, numeric, four digits; used with %v\n %Y Year, numeric, four digits\n %y Year, numeric, two digits\n %% A literal '%'.\n \n\nAll other characters are copied to the result without interpretation.\n\nThe %v, %V, %x, and %X format specifiers are\navailable as of MySQL 3.23.8. %f is available as of MySQL 4.1.1.\n\nAs of MySQL 3.23, the '%' character is required before\nformat specifier characters. In earlier versions of MySQL,\n'%' was optional.\n\nThe reason the ranges for the month and day specifiers begin with zero\nis that MySQL allows incomplete dates such as '2004-00-00' to be\nstored as of MySQL 3.23.\n","mysql> SELECT DATE_FORMAT('1997-10-04 22:23:00', '%W %M %Y');\n -> 'Saturday October 1997'\nmysql> SELECT DATE_FORMAT('1997-10-04 22:23:00', '%H:%i:%s');\n -> '22:23:00'\nmysql> SELECT DATE_FORMAT('1997-10-04 22:23:00',\n '%D %y %a %d %m %b %j');\n -> '4th 97 Sat 04 10 Oct 277'\nmysql> SELECT DATE_FORMAT('1997-10-04 22:23:00',\n '%H %k %I %r %T %S %w');\n -> '22 22 10 10:23:00 PM 22:23:00 00 6'\nmysql> SELECT DATE_FORMAT('1999-01-01', '%X %V');\n -> '1998 52'"),(288,25,"BENCHMARK"," BENCHMARK(count,expr)\nThe BENCHMARK() function executes the expression expr\nrepeatedly count times. It may be used to time how fast MySQL\nprocesses the expression. The result value is always 0. The intended\nuse is from within the mysql client, which reports query execution times:\n","mysql> SELECT BENCHMARK(1000000,ENCODE('hello','goodbye'));\n+----------------------------------------------+\n| BENCHMARK(1000000,ENCODE('hello','goodbye')) |\n+----------------------------------------------+\n| 0 |\n+----------------------------------------------+\n1 row in set (4.74 sec)"),(289,14,"YEAR"," YEAR(date)\nReturns the year for date, in the range 1000 to 9999.\n","mysql> SELECT YEAR('98-02-03');\n -> 1998"),(290,6,"SHOW ENGINE","SHOW ENGINE displays log or status information about storage engines.\nThe following statements currently are supported:\n\nSHOW ENGINE BDB LOGS\nSHOW ENGINE INNODB STATUS\n\nSHOW ENGINE BDB LOGS displays status information about existing\nBDB log files. It returns the following fields:\n\n\n File\nThe full path to the log file.\n\n Type\nThe log file type (BDB for Berkeley DB log files).\n\n Status\nThe status of the log file (FREE if the file can be removed, or\nIN USE if the file is needed by the transaction subsystem)\n\n \n\nSHOW ENGINE INNODB STATUS displays extensive information about the\nstate of the InnoDB storage engine.\n\nOlder (and now deprecated) synonyms for these statements are SHOW [BDB]\nLOGS and SHOW INNODB STATUS.\n\nSHOW ENGINE can be used as of MySQL 4.1.2.\n","SHOW ENGINE engine_name {LOGS | STATUS }"),(291,21,"RELEASE_LOCK"," RELEASE_LOCK(str)\nReleases the lock named by the string str that was obtained with\nGET_LOCK(). Returns 1 if the lock was released, 0 if the\nlock wasn't locked by this thread (in which case the lock is not released),\nand NULL if the named lock didn't exist. The lock does not exist if\nit was never obtained by a call to GET_LOCK() or if it has previously\nbeen released.\n\nThe DO statement is convenient to use with RELEASE_LOCK().\nSee also : [DO, , DO].\n",""),(292,26,"IS NULL"," IS NULL\n IS NOT NULL\nTests whether a value is or is not NULL.\n","mysql> SELECT 1 IS NULL, 0 IS NULL, NULL IS NULL;\n -> 0, 0, 1\nmysql> SELECT 1 IS NOT NULL, 0 IS NOT NULL, NULL IS NOT NULL;\n -> 1, 1, 0"),(293,14,"CONVERT_TZ"," CONVERT_TZ(dt,from_tz,to_tz)\n\nCONVERT_TZ()\nconverts a datetime value dt from time zone given by from_tz\nto the time zone given by to_tz and returns the resulting value.\nTime zones may be specified as described in [Time zone support].\nThis function returns NULL if the arguments are invalid.\n","mysql> SELECT CONVERT_TZ('2004-01-01 12:00:00','GMT','MET');\n -> '2004-01-01 13:00:00'\nmysql> SELECT CONVERT_TZ('2004-01-01 12:00:00','+00:00','-07:00');\n -> '2004-01-01 05:00:00'"),(294,14,"TIME_TO_SEC"," TIME_TO_SEC(time)\nReturns the time argument, converted to seconds.\n","mysql> SELECT TIME_TO_SEC('22:23:00');\n -> 80580\nmysql> SELECT TIME_TO_SEC('00:39:38');\n -> 2378"),(295,14,"WEEKDAY"," WEEKDAY(date)\nReturns the weekday index for\ndate (0 = Monday, 1 = Tuesday, ... 6 = Sunday).\n","mysql> SELECT WEEKDAY('1998-02-03 22:23:00');\n -> 1\nmysql> SELECT WEEKDAY('1997-11-05');\n -> 2"),(296,23,"EXPORT_SET"," EXPORT_SET(bits,on,off[,separator[,number_of_bits]])\nReturns a string in which for every bit set in the value bits, you\nget an on string and for every reset bit you get an off\nstring. Bits in bits are examined from right to left (from low-order\nto high-order bits). Strings are added to the result from left to right,\nseparated by the separator string (default ','). The number of\nbits examined is given by number_of_bits (default 64).\n","mysql> SELECT EXPORT_SET(5,'Y','N',',',4);\n -> 'Y,N,Y,N'\nmysql> SELECT EXPORT_SET(6,'1','0',',',10);\n -> '0,1,1,0,0,0,0,0,0,0'"),(297,14,"TIME FUNCTION"," TIME(expr)\n\nExtracts the time part of the time or datetime expression expr.\n","mysql> SELECT TIME('2003-12-31 01:02:03');\n -> '01:02:03'\nmysql> SELECT TIME('2003-12-31 01:02:03.000123');\n -> '01:02:03.000123'"),(298,23,"CAST","The CAST() and CONVERT() functions can be used to take a\nvalue of one type and produce a value of another type.\n\nThe type can be one of the following values:\n\n --- BINARY\n --- CHAR\n --- DATE\n --- DATETIME\n --- SIGNED [INTEGER]\n --- TIME\n --- UNSIGNED [INTEGER]\n\nBINARY produces a binary string. See the entry for the BINARY\noperator in this section for a description of how this affects comparisons.\n\nCAST() and CONVERT() are available as of MySQL 4.0.2.\nThe CHAR conversion type is available as of 4.0.6.\nThe USING form of CONVERT() is available as of 4.1.0.\n\nCAST() and CONVERT(... USING ...) are standard SQL syntax.\nThe non-USING form of CONVERT() is ODBC syntax.\n\nCONVERT() with USING is used to convert data between different\ncharacter sets. In MySQL, transcoding names are the same as the\ncorresponding character set names. For example, this statement converts\nthe string 'abc' in the server's default character set to the\ncorresponding string in the utf8 character set:\n\nSELECT CONVERT('abc' USING utf8);\n\n \n\nThe cast functions are useful when you want to create a column with\na specific type in a CREATE ... SELECT statement:\n","SELECT enum_col FROM tbl_name ORDER BY CAST(enum_col AS CHAR);"),(299,23,"SOUNDS LIKE"," expr1 SOUNDS LIKE expr2\n\nThis is the same as SOUNDEX(expr1) = SOUNDEX(expr2). It is\navailable only in MySQL 4.1 or later.\n","");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (300,14,"PERIOD_DIFF"," PERIOD_DIFF(P1,P2)\nReturns the number of months between periods P1 and P2.\nP1 and P2 should be in the format YYMM or YYYYMM.\nNote that the period arguments P1 and P2 are /not/\ndate values.\n","mysql> SELECT PERIOD_DIFF(9802,199703);\n -> 11"),(301,23,"LIKE"," expr LIKE pat [ESCAPE 'escape-char']\nPattern matching using\nSQL simple regular expression comparison. Returns 1 (TRUE) or 0\n(FALSE). If either expr or pat is NULL, the result is\nNULL.\n\nThe pattern need not be a literal string. For example, it can be specified\nas a string expression or table column.\n\nWith LIKE you can use the following two wildcard characters\nin the pattern:\n\n Character Description\n % Matches any number of characters, even zero characters\n _ Matches exactly one character\n \n","mysql> SELECT 'David!' LIKE 'David_';\n -> 1\nmysql> SELECT 'David!' LIKE '%D%v%';\n -> 1"),(302,2,"MULTIPOINT"," MultiPoint(pt1,pt2,...)\nConstructs a WKB MultiPoint value using WKB Point arguments.\nIf any argument is not a WKB Point, the return value is NULL.\n",""),(303,27,">>"," >>\nShifts a longlong (BIGINT) number to the right.\n","mysql> SELECT 4 >> 2;\n -> 1"),(304,22,"TRUE FALSE","TRUE and FALSE added as alias for 1 and 0, respectively.\n",""),(305,12,"AVG"," AVG([DISTINCT] expr)\nReturns the average value of expr.\nThe DISTINCT option can be used as of MySQL 5.0.3 to return the averge\nof the distinct values of expr.\n","mysql> SELECT student_name, AVG(test_score)\n -> FROM student\n -> GROUP BY student_name;"),(306,8,"MBRWITHIN"," MBRWithin(g1,g2)\nReturns 1 or 0 to indicate whether or not the Minimum Bounding Rectangle\nof g1 is within the Minimum Bounding Rectangle of g2.\n","mysql> SET @g1 = GeomFromText('Polygon((0 0,0 3,3 3,3 0,0 0))');\nmysql> SET @g2 = GeomFromText('Polygon((0 0,0 5,5 5,5 0,0 0))');\nmysql> SELECT MBRWithin(@g1,@g2), MBRWithin(@g2,@g1);\n+--------------------+--------------------+\n| MBRWithin(@g1,@g2) | MBRWithin(@g2,@g1) |\n+--------------------+--------------------+\n| 1 | 0 |\n+--------------------+--------------------+"),(307,26,"IN"," expr IN (value,...)\nReturns 1 if expr is any of the values in the IN list,\nelse returns 0. If all values are constants, they are\nevaluated according to the type of expr and sorted. The search for the\nitem then is done using a binary search. This means IN is very quick\nif the IN value list consists entirely of constants. If expr\nis a case-sensitive string expression, the string comparison is performed in\ncase-sensitive fashion.\n","mysql> SELECT 2 IN (0,3,5,'wefwf');\n -> 0\nmysql> SELECT 'wefwf' IN (0,3,5,'wefwf');\n -> 1"),(308,23,"QUOTE"," QUOTE(str)\nQuotes a string to produce a result that can be used as a properly escaped\ndata value in an SQL statement. The string is returned surrounded by single\nquotes and with each instance of single quote ('''), backslash ('\\'),\nASCII NUL, and Control-Z preceded by a backslash. If the argument is\nNULL, the return value is the word ``NULL'' without surrounding\nsingle quotes.\nThe QUOTE() function was added in MySQL 4.0.3.\n","mysql> SELECT QUOTE('Don\\'t!');\n -> 'Don\\'t!'\nmysql> SELECT QUOTE(NULL);\n -> NULL"),(309,25,"SESSION_USER"," SESSION_USER()\n\nSESSION_USER() is a synonym for USER().\n",""),(310,14,"QUARTER"," QUARTER(date)\nReturns the quarter of the year for date, in the range 1\nto 4.\n","mysql> SELECT QUARTER('98-04-01');\n -> 2"),(311,23,"POSITION"," POSITION(substr IN str)\n\nPOSITION(substr IN str) is a synonym for LOCATE(substr,str).\n","mysql> SELECT LOCATE('bar', 'foobarbar');\n -> 4\nmysql> SELECT LOCATE('xbar', 'foobar');\n -> 0\nmysql> SELECT LOCATE('bar', 'foobarbar',5);\n -> 7"),(312,21,"IS_USED_LOCK"," IS_USED_LOCK(str)\nChecks whether the lock named str is in use (that is, locked).\nIf so, it returns the connection identifier of the client that holds\nthe lock.\nOtherwise, it returns NULL.\n",""),(313,3,"POLYFROMTEXT"," PolyFromText(wkt[,srid])\n PolygonFromText(wkt[,srid])\nConstructs a POLYGON value using its WKT representation and SRID.\n",""),(314,17,"DES_ENCRYPT"," DES_ENCRYPT(str[,(key_num|key_str)])\n\nEncrypts the string with the given key using the Triple-DES algorithm.\nOn error, this function returns NULL.\n\nNote that this function works only if MySQL has been configured with\nSSL support. See also : [Secure connections].\n\nThe encryption key to use is chosen based on the second argument to\nDES_ENCRYPT(), if one was given:\n\n Argument Description\n No argument \nThe first key from the DES key file is used.\n key_num \nThe given key number (0-9) from the DES key file is used.\n key_str \nThe given key string is used to encrypt str.\n \n\nThe key file can be specified with the --des-key-file server option.\n\nThe return string is a binary string where the first character\nis CHAR(128 | key_num).\n\nThe 128 is added to make it easier to recognize an encrypted key.\nIf you use a string key, key_num is 127.\n\nThe string length for the result is\nnew_len = orig_len + (8-(orig_len % 8))+1.\n","key_num des_key_str");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (315,23,"LENGTH"," LENGTH(str)\nReturns the length of the string str, measured in bytes.\nA multi-byte character counts as multiple bytes.\nThis means that for a string containing five two-byte characters,\nLENGTH() returns 10, whereas CHAR_LENGTH() returns\n5.\n","mysql> SELECT LENGTH('text');\n -> 4"),(316,14,"STR_TO_DATE"," STR_TO_DATE(str,format)\nThis is the reverse function of the DATE_FORMAT() function. It takes a\nstring str and a format string format.\nSTR_TO_DATE() returns a DATETIME value if the format\nstring contains both date and time parts, or a DATE or TIME\nvalue if the string contains only date or time parts.\n\nThe date, time, or datetime values contained in str should be given\nin the format indicated by format. For the specifiers that can be\nused in format, see the table in the DATE_FORMAT() function\ndescription. All other characters are just taken verbatim, thus not being\ninterpreted.\nIf str contains an illegal date, time, or datetime value,\nSTR_TO_DATE() returns NULL. Starting from MySQL 5.0.3, an\nillegal value also produces a warning.\n","@c next example commented out until format string becomes optional\n@c mysql> SELECT STR_TO_DATE('2003-10-03');\n@c -> 2003-10-03 00:00:00\nmysql> SELECT STR_TO_DATE('03.10.2003 09.20',\n -> '%d.%m.%Y %H.%i');\n -> '2003-10-03 09:20:00'\nmysql> SELECT STR_TO_DATE('10arp', '%carp');\n -> '0000-10-00 00:00:00'\nmysql> SELECT STR_TO_DATE('2003-15-10 00:00:00',\n -> '%Y-%m-%d %H:%i:%s');\n -> NULL"),(317,16,"Y"," Y(p)\nReturns the Y-coordinate value for the point p as a double-precision\nnumber.\n","mysql> SELECT Y(GeomFromText('Point(56.7 53.34)'));\n+--------------------------------------+\n| Y(GeomFromText('Point(56.7 53.34)')) |\n+--------------------------------------+\n| 53.34 |\n+--------------------------------------+"),(318,0,"NUMINTERIORRINGS"," NumInteriorRings(poly)\nReturns the number of interior rings in the Polygon value poly.\n","mysql> SET @poly =\n -> 'Polygon((0 0,0 3,3 3,3 0,0 0),(1 1,1 2,2 2,2 1,1 1))';\nmysql> SELECT NumInteriorRings(GeomFromText(@poly));\n+---------------------------------------+\n| NumInteriorRings(GeomFromText(@poly)) |\n+---------------------------------------+\n| 1 |\n+---------------------------------------+"),(319,0,"INTERIORRINGN"," InteriorRingN(poly,n)\nReturns the n-th interior ring for the Polygon value\npoly as a LineString.\nRing numbers begin at 1.\n","mysql> SET @poly =\n -> 'Polygon((0 0,0 3,3 3,3 0,0 0),(1 1,1 2,2 2,2 1,1 1))';\nmysql> SELECT AsText(InteriorRingN(GeomFromText(@poly),1));\n+----------------------------------------------+\n| AsText(InteriorRingN(GeomFromText(@poly),1)) |\n+----------------------------------------------+\n| LINESTRING(1 1,1 2,2 2,2 1,1 1) |\n+----------------------------------------------+"),(320,14,"UTC_TIME"," UTC_TIME\n UTC_TIME()\nReturns the current UTC time as a value in 'HH:MM:SS' or HHMMSS\nformat, depending on whether the function is used in a string or numeric\ncontext.\n","mysql> SELECT UTC_TIME(), UTC_TIME() + 0;\n -> '18:07:53', 180753"),(321,12,"STDDEV"," STD(expr)\n STDDEV(expr)\nReturns the population standard deviation of expr. This is an\nextension to standard SQL. The STDDEV() form of this function is\nprovided for Oracle compatibility. As of MySQL 5.0.3, the standard SQL\nfunction STDDEV_POP() can be used instead.\n",""),(322,14,"PERIOD_ADD"," PERIOD_ADD(P,N)\nAdds N months to period P (in the format YYMM or\nYYYYMM). Returns a value in the format YYYYMM.\nNote that the period argument P is /not/ a date value.\n","mysql> SELECT PERIOD_ADD(9801,2);\n -> 199803"),(323,27,"|"," |\nBitwise OR:\n","mysql> SELECT 29 | 15;\n -> 31"),(324,3,"GEOMFROMTEXT"," GeomFromText(wkt[,srid])\n GeometryFromText(wkt[,srid])\nConstructs a geometry value of any type using its WKT representation and SRID.\n",""),(325,23,"RIGHT"," RIGHT(str,len)\nReturns the rightmost len characters from the string str.\n","mysql> SELECT RIGHT('foobarbar', 4);\n -> 'rbar'"),(326,14,"DATEDIFF"," DATEDIFF(expr,expr2)\n\n\nDATEDIFF() returns the number of days between the start date\nexpr and the end date expr2.\nexpr and expr2 are date or date-and-time expressions.\nOnly the date parts of the values are used in the calculation.\n","mysql> SELECT DATEDIFF('1997-12-31 23:59:59','1997-12-30');\n -> 1\nmysql> SELECT DATEDIFF('1997-11-30 23:59:59','1997-12-31');\n -> -31"),(327,23,"BIN"," BIN(N)\nReturns a string representation of the binary value of N, where\nN is a longlong (BIGINT) number. This is equivalent to\nCONV(N,10,2). Returns NULL if N is NULL.\n","mysql> SELECT BIN(12);\n -> '1100'"),(328,2,"MULTILINESTRING"," MultiLineString(ls1,ls2,...)\nConstructs a WKB MultiLineString value using WKB LineString\narguments. If any argument is not a WKB LineString, the return\nvalue is NULL.\n",""),(329,6,"LOAD DATA","The LOAD DATA INFILE statement reads rows from a text file into a\ntable at a very high speed.\nFor more information about the efficiency of INSERT versus\nLOAD DATA INFILE and speeding up LOAD DATA INFILE,\n[Insert speed].\n\nAs of MySQL 4.1, the character set indicated by the\ncharacter_set_database system variable is used to interpret the\ninformation in the file. SET NAMES and the setting of\ncharacter_set_client do not affect input interpretation.\n\nYou can also load data files by using the mysqlimport utility; it\noperates by sending a LOAD DATA INFILE statement to the server. The\n--local option causes mysqlimport to read data files from the\nclient host. You can specify the --compress option to get better\nperformance over slow networks if the client and server support the\ncompressed protocol.\nSee also : [mysqlimport, , mysqlimport].\n\nIf you specify the LOW_PRIORITY keyword, execution of the\nLOAD DATA statement is delayed until no other clients are reading\nfrom the table.\n\nIf you specify the CONCURRENT keyword with a MyISAM table that\nsatisfies the condition for concurrent inserts (that is, it contains no free\nblocks in the middle),\nthen other threads can retrieve data from the table while LOAD DATA\nis executing. Using this option affects the performance of LOAD DATA\na bit, even if no other thread is using the table at the same time.\n\nIf the LOCAL keyword is specified, it is\ninterpreted with respect to the client end of the connection:\n\n\n --- If LOCAL is specified, the file is read by the client program on the\nclient host and sent to the server. The file can be given as a full pathname\nto specify its exact location. If given as a relative pathname, the name is\ninterpreted relative to the directory in which the client program was started.\n\n --- If LOCAL is not specified, the\nfile must be located on the server host and is read directly by the server.\n\n\nLOCAL is available in MySQL 3.22.6 or later.\n\nWhen locating files on the server host, the server uses the following rules:\n\n --- If an absolute pathname is given, the server uses the pathname as is.\n\n --- If a relative pathname with one or more leading components is given,\nthe server searches for the file relative to the server's data directory.\n\n --- If a filename with no leading components is given, the server looks for\nthe file in the database directory of the default database.\n\nNote that these rules mean that a file named as *./myfile.txt is read from\nthe server's data directory, whereas the same file named as *myfile.txt is\nread from the database directory of the default database. For example,\nthe following LOAD DATA statement reads the file *data.txt\nfrom the database directory for db1 because db1 is the current\ndatabase, even though the statement explicitly loads the file into a\ntable in the db2 database:\n\nmysql> USE db1;\nmysql> LOAD DATA INFILE 'data.txt' INTO TABLE db2.my_table;\n\nNote that Windows pathnames are specified using forward slashes rather than\nbackslashes. If you do use backslashes, you must double them.\n\nFor security reasons, when reading text files located on the server, the\nfiles must either reside in the database directory or be readable by all.\nAlso, to use LOAD DATA INFILE on server files, you must have the\nFILE privilege.\n","LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name.txt'\n [REPLACE | IGNORE]\n INTO TABLE tbl_name\n [FIELDS\n [TERMINATED BY '\\t']\n [[OPTIONALLY] ENCLOSED BY '']\n [ESCAPED BY '\\\\' ]\n ]\n [LINES\n [STARTING BY '']\n [TERMINATED BY '\\n']\n ]\n [IGNORE number LINES]\n [(col_name,...)]");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (330,1,"BLOB TYPE"," BLOB[(M)]\n\nA BLOB column with a maximum length of 65,535\n(2^16 - 1) bytes.\n\nBeginning with MySQL 4.1, an optional length M can be given.\nMySQL will create the column as the smallest BLOB type largest\nenough to hold values M bytes long.\n",""),(331,14,"LOCALTIME"," LOCALTIME\n LOCALTIME()\n\nLOCALTIME and LOCALTIME() are synonyms for\nNOW().\n",""),(332,3,"MPOINTFROMTEXT"," MPointFromText(wkt[,srid])\n MultiPointFromText(wkt[,srid])\nConstructs a MULTIPOINT value using its WKT representation and SRID.\n",""),(333,1,"BLOB","A BLOB is a binary large object that can hold a variable amount of\ndata. The four BLOB types, TINYBLOB, BLOB,\nMEDIUMBLOB, and LONGBLOB, differ only in the maximum length of\nthe values they can hold.\n",""),(334,17,"PASSWORD","","mysql> SELECT PASSWORD('badpwd');\n -> '7f84554057dd964b'"),(335,1,"CHAR"," [NATIONAL] CHAR(M) [BINARY | ASCII | UNICODE]\n\nA fixed-length string that is always right-padded with spaces to the\nspecified length when stored. M represents the column length. The\nrange of M is 0 to 255 characters (1 to 255 prior to MySQL 3.23).\n\nNote: Trailing spaces are removed when CHAR values are\nretrieved.\n\nFrom MySQL 4.1.0 to 5.0.2, a CHAR column with a length specification\ngreater than 255 is converted to the smallest TEXT type that can hold\nvalues of the given length. For example, CHAR(500) is converted to\nTEXT, and CHAR(200000) is converted to MEDIUMTEXT.\nThis is a compatibility feature. However, this conversion causes the column\nto become a variable-length column, and also affects trailing-space removal.\n\nCHAR is shorthand for CHARACTER.\nNATIONAL CHAR (or its equivalent short form, NCHAR) is the\nstandard SQL way to define that a CHAR column should use the default\ncharacter set. This is the default in MySQL.\n\nAs of MySQL 4.1.2, the BINARY attribute is shorthand for specifying\nthe binary collation of the column character set. Sorting and comparison is\nbased on numeric character values. Before 4.1.2, BINARY attribute\ncauses the column to be treated as a binary string. Sorting and comparison\nis based on numeric byte values.\n\nFrom MySQL 4.1.0 on, column type CHAR BYTE is an alias for\nCHAR BINARY. This is a compatibility feature.\n\nFrom MySQL 4.1.0 on, the ASCII attribute can be specified for\nCHAR. It assigns the latin1 character set.\n\nFrom MySQL 4.1.1 on, the UNICODE attribute can be specified for\nCHAR. It assigns the ucs2 character set.\n\nMySQL allows you to create a column of type CHAR(0). This is mainly\nuseful when you have to be compliant with some old applications that depend\non the existence of a column but that do not actually use the value. This\nis also quite nice when you need a column that can take only two values: A\nCHAR(0) column that is not defined as NOT NULL occupies only\none bit and can take only the values NULL and '' (the empty\nstring).\n\n CHAR\nThis is a synonym for CHAR(1).\n",""),(336,14,"UTC_DATE"," UTC_DATE\n UTC_DATE()\nReturns the current UTC date as a value in 'YYYY-MM-DD' or\nYYYYMMDD format, depending on whether the function is used in a\nstring or numeric context.\n","mysql> SELECT UTC_DATE(), UTC_DATE() + 0;\n -> '2003-08-14', 20030814"),(337,19,"DIMENSION"," Dimension(g)\nReturns the inherent dimension of the geometry value g. The result\ncan be -1, 0, 1, or 2. (The meaning of these values is given in\n[GIS class geometry].)\n","mysql> SELECT Dimension(GeomFromText('LineString(1 1,2 2)'));\n+------------------------------------------------+\n| Dimension(GeomFromText('LineString(1 1,2 2)')) |\n+------------------------------------------------+\n| 1 |\n+------------------------------------------------+"),(338,12,"COUNT DISTINCT"," COUNT(DISTINCT expr,[expr...])\nReturns a count of the number of different non-NULL values.\n","mysql> SELECT COUNT(DISTINCT results) FROM student;"),(339,1,"BIT"," BIT[(M)]\n\nA bit-field type. M indicates the number of bits per value, from 1 to\n64. The default is 1 if M is omitted.\n\nThis data type was added in MySQL 5.0.3 for MyISAM, and extended\nin 5.0.5 to MEMORY, InnoDB, and BDB. Before 5.0.3,\nBIT is a synonym for TINYINT(1).\n",""),(340,11,"EQUALS"," Equals(g1,g2)\nReturns 1 or 0 to indicate whether or not g1 is spatially equal to\ng2.\n",""),(341,24,"SHOW CREATE VIEW","This statement shows a CREATE VIEW statement that creates\nthe given view.\n","SHOW CREATE VIEW view_name"),(342,26,"INTERVAL"," INTERVAL(N,N1,N2,N3,...)\nReturns 0 if N < N1, 1 if N < N2\nand so on or -1 if N is NULL. All arguments are treated\nas integers. It is required that N1 < N2 < N3 <\n... < Nn for this function to work correctly. This is because\na binary search is used (very fast).\n","mysql> SELECT INTERVAL(23, 1, 15, 17, 30, 44, 200);\n -> 3\nmysql> SELECT INTERVAL(10, 1, 10, 100, 1000);\n -> 2\nmysql> SELECT INTERVAL(22, 23, 30, 44, 200);\n -> 0"),(343,14,"FROM_DAYS"," FROM_DAYS(N)\nGiven a daynumber N, returns a DATE value.\n","mysql> SELECT FROM_DAYS(729669);\n -> '1997-10-07'"),(344,27,"BIT_COUNT"," BIT_COUNT(N)\nReturns the number of bits that are set in the argument N.\n","mysql> SELECT BIT_COUNT(29);\n -> 4");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (345,14,"UTC_TIMESTAMP"," UTC_TIMESTAMP\n UTC_TIMESTAMP()\nReturns the current UTC date and time as a value in 'YYYY-MM-DD HH:MM:SS'\nor YYYYMMDDHHMMSS format, depending on whether the function is used in\na string or numeric context.\n","mysql> SELECT UTC_TIMESTAMP(), UTC_TIMESTAMP() + 0;\n -> '2003-08-14 18:08:04', 20030814180804"),(346,4,"+"," +\nAddition:\n","mysql> SELECT 3+5;\n -> 8"),(347,21,"INET_NTOA"," INET_NTOA(expr)\nGiven a numeric network address (4 or 8 byte), returns the dotted-quad\nrepresentation of the address as a string.\n","mysql> SELECT INET_NTOA(3520061480);\n -> '209.207.224.40'"),(348,4,"ACOS"," ACOS(X)\nReturns the arc cosine of X, that is, the value whose cosine is\nX. Returns NULL if X is not in the range -1 to\n1.\n","mysql> SELECT ACOS(1);\n -> 0.000000\nmysql> SELECT ACOS(1.0001);\n -> NULL\nmysql> SELECT ACOS(0);\n -> 1.570796"),(349,10,"ISOLATION","SET [GLOBAL | SESSION] TRANSACTION ISOLATION LEVEL\n{ READ UNCOMMITTED | READ COMMITTED | REPEATABLE READ | SERIALIZABLE }\n\nThis statement\nsets the transaction isolation level for the next transaction, globally, or\nfor the current session.\n\nThe default behavior of SET TRANSACTION is to set the isolation level\nfor the next (not yet\nstarted) transaction. If you use the GLOBAL keyword, the statement\nsets the default transaction level globally for all new connections\ncreated from that point on. Existing connections are unaffected.\nYou need the SUPER\nprivilege to do this. Using the SESSION keyword sets the\ndefault transaction level for all future transactions performed on the\ncurrent connection.\n\nFor descriptions of each InnoDB transaction isolation level, see\n[InnoDB transaction isolation, InnoDB transaction isolation].\nInnoDB supports each of these levels\nfrom MySQL 4.0.5 on. The default level is REPEATABLE READ.\n\nYou can set the initial default global isolation level for mysqld with\nthe --transaction-isolation option.\nSee also : [Server options].\n",""),(350,4,"CEILING"," CEILING(X)\n CEIL(X)\nReturns the smallest integer value not less than X.\n","mysql> SELECT CEILING(1.23);\n -> 2\nmysql> SELECT CEIL(-1.23);\n -> -1"),(351,4,"SIN"," SIN(X)\nReturns the sine of X, where X is given in radians.\n","mysql> SELECT SIN(PI());\n -> 0.000000"),(352,14,"DAYOFWEEK"," DAYOFWEEK(date)\nReturns the weekday index\nfor date (1 = Sunday, 2 = Monday, ..., 7 =\nSaturday). These index values correspond to the ODBC standard.\n","mysql> SELECT DAYOFWEEK('1998-02-03');\n -> 3"),(353,13,"LINEFROMWKB"," LineFromWKB(wkb[,srid])\n LineStringFromWKB(wkb[,srid])\nConstructs a LINESTRING value using its WKB representation and SRID.\n",""),(354,19,"GEOMETRYTYPE"," GeometryType(g)\nReturns as a string the name of the geometry type of which\nthe geometry instance g is a member.\nThe name corresponds to one of the instantiable Geometry subclasses.\n","mysql> SELECT GeometryType(GeomFromText('POINT(1 1)'));\n+------------------------------------------+\n| GeometryType(GeomFromText('POINT(1 1)')) |\n+------------------------------------------+\n| POINT |\n+------------------------------------------+"),(355,7,"GRANT TYPES","For the GRANT and REVOKE statements, priv_type can be\nspecified as any of the following:\n\n Privilege Meaning\n ALL [PRIVILEGES] Sets all simple privileges except GRANT OPTION\n ALTER Allows use of ALTER TABLE\n ALTER ROUTINE Alter or drop stored routines\n CREATE Allows use of CREATE TABLE\n CREATE ROUTINE Create stored routines\n CREATE TEMPORARY TABLES Allows use of CREATE TEMPORARY TABLE\n CREATE USER Allows use of CREATE USER, DROP USER, RENAME USER, and REVOKE ALL PRIVILEGES.\n CREATE VIEW Allows use of CREATE VIEW\n DELETE Allows use of DELETE\n DROP Allows use of DROP TABLE\n EXECUTE Allows the user to run stored routines\n FILE Allows use of SELECT ... INTO OUTFILE and LOAD DATA INFILE\n INDEX Allows use of CREATE INDEX and DROP INDEX\n INSERT Allows use of INSERT\n LOCK TABLES Allows use of LOCK TABLES on tables for which you have the SELECT privilege\n PROCESS Allows use of SHOW FULL PROCESSLIST\n REFERENCES Not implemented\n RELOAD Allows use of FLUSH\n REPLICATION CLIENT Allows the user to ask where slave or master servers are\n REPLICATION SLAVE Needed for replication slaves (to read binary log events from the master)\n SELECT Allows use of SELECT\n SHOW DATABASES SHOW DATABASES shows all databases\n SHOW VIEW Allows use of SHOW CREATE VIEW\n SHUTDOWN Allows use of mysqladmin shutdown\n SUPER Allows use of CHANGE MASTER, KILL,\nPURGE MASTER LOGS, and SET GLOBAL statements, the mysqladmin debug command; allows you to connect (once) even if max_connections is reached\n UPDATE Allows use of UPDATE\n USAGE Synonym for ``no privileges''\n GRANT OPTION Allows privileges to be granted\n \n",""),(356,24,"CREATE VIEW","This statement creates a new view, or replaces an existing one if the\nOR REPLACE clause is given. The select_statement is a\nSELECT statement that provides the definition of the view.\nThe statement can select from base tables or other views.\n\nThis statement requires the CREATE VIEW privilege for the view, and\nsome privilege for each column selected by the SELECT statement.\nFor columns used elsewhere in the SELECT statement you must have\nthe SELECT privilege. If the OR REPLACE clause is present,\nyou must also have the DELETE privilege for the view.\n\nA view belongs to a database. By default, a new view is created in the\ncurrent database. To create the view explicitly in a given database,\nspecify the name as db_name.view_name when you create it.\n\nmysql> CREATE VIEW test.v AS SELECT * FROM t;\n\nTables and views share the same namespace within a database, so a database\ncannot contain a table and a view that have the same name.\n\nViews must have unique column names with no duplicates, just like base\ntables. By default, the names of the columns retrieved by the SELECT\nstatement are used for the view column names. To define explicit names for\nthe view columns, the optional column_list clause can be given as a\nlist of comma-separated identifiers. The number of names in\ncolumn_list must be the same as the number of columns retrieved by the\nSELECT statement.\n\nColumns retrieved by the SELECT statement can be simple references to\ntable columns. They can also be expressions that use functions, constant\nvalues, operators, and so forth.\n\nUnqualified table or view names in the SELECT statement are\ninterpreted with respect to the default database. A view can refer to\ntables or views in other databases by qualifying the table or view name with\nthe proper database name.\n\nA view can be created from many kinds of SELECT statements. It can\nrefer to base tables or other views. It can use joins, UNION, and\nsubqueries. The SELECT need not even refer to any tables. The\nfollowing example defines a view that selects two columns from another\ntable, as well as an expression calculated from those columns:\n\nmysql> CREATE TABLE t (qty INT, price INT);\nmysql> INSERT INTO t VALUES(3, 50);\nmysql> CREATE VIEW v AS SELECT qty, price, qty*price AS value FROM t;\nmysql> SELECT * FROM v;\n+------+-------+-------+\n| qty | price | value |\n+------+-------+-------+\n| 3 | 50 | 150 |\n+------+-------+-------+\n\nA view definition is subject to the following restrictions:\n\n\n --- The SELECT statement cannot contain a subquery in the FROM\nclause.\n\n --- The SELECT statement cannot refer to system or user variables.\n\n --- The SELECT statement cannot refer to prepared statement parameters.\n\n --- Within a stored routine, the definition cannot refer to routine\nparameters or local variables.\n\n --- Any table or view referred to in the definition must exist. However, after\na view has been created, it is possible to drop a table or view that the\ndefinition refers to. To check a view definition for problems of this kind,\nuse the CHECK TABLE statement.\n\n --- The definition cannot refer to a TEMPORARY table, and you cannot\ncreate a TEMPORARY view.\n\n --- The tables named in the view definition must already exist.\n\n --- You cannot associate a trigger with a view.\n\n\nORDER BY is allowed in a view definition, but it is ignored if you\nselect from a view using a statement that has its own ORDER BY.\n\nFor other options or clauses in the definition, they are added to the\noptions or clauses of the statement that references the view, but the effect\nis undefined. For example, if a view definition includes a LIMIT\nclause, and you select from the view using a statement that has its own\nLIMIT clause, it is undefined which limit applies. This same\nprinciple applies to options such as ALL, DISTINCT, or\nSQL_SMALL_RESULT that follow the SELECT keyword, and to\nclauses such as INTO, FOR UPDATE, LOCK IN SHARE MODE,\nand PROCEDURE.\n\nIf you create a view and then change the query processing environment by\nchanging system variables, that may affect the results you get from the\nview:\n\nmysql> CREATE VIEW v AS SELECT CHARSET(CHAR(65)), COLLATION(CHAR(65));\nQuery OK, 0 rows affected (0.00 sec)\n\nmysql> SET NAMES 'latin1';\nQuery OK, 0 rows affected (0.00 sec)\n\nmysql> SELECT * FROM v;\n+-------------------+---------------------+\n| CHARSET(CHAR(65)) | COLLATION(CHAR(65)) |\n+-------------------+---------------------+\n| latin1 | latin1_swedish_ci |\n+-------------------+---------------------+\n1 row in set (0.00 sec)\n\nmysql> SET NAMES 'utf8';\nQuery OK, 0 rows affected (0.00 sec)\n\nmysql> SELECT * FROM v;\n+-------------------+---------------------+\n| CHARSET(CHAR(65)) | COLLATION(CHAR(65)) |\n+-------------------+---------------------+\n| utf8 | utf8_general_ci |\n+-------------------+---------------------+\n1 row in set (0.00 sec)\n\nThe optional ALGORITHM clause is a MySQL extension to standard SQL.\nALGORITHM takes three values: MERGE, TEMPTABLE, or\nUNDEFINED. The default algorithm is UNDEFINED if no\nALGORITHM clause is present. The algorithm affects how MySQL\nprocesses the view.\n\nFor MERGE, the text of a statement that refers to the view and the view\ndefinition are merged such that parts of the view definition replace\ncorresponding parts of the statement.\n\nFor TEMPTABLE, the results from the view are retrieved into a\ntemporary table, which then is used to execute the statement.\n\nFor UNDEFINED, MySQL chooses which algorithm to use. It prefers\nMERGE over TEMPTABLE if possible, because MERGE is\nusually more efficient and because a view cannot be updatable if a temporary\ntable is used.\n\nA reason to choose TEMPTABLE explicitly is that locks can be released\non underlying tables after the temporary table has been created and before\nit is used to finish processing the statement. This might result in quicker\nlock release than the MERGE algorithm so that other clients that use\nthe view are not blocked as long.\n\nA view algorithm can be UNDEFINED three ways:\n\n\n --- No ALGORITHM clause is present in the CREATE VIEW statement.\n\n --- The CREATE VIEW statement has an explicit ALGORITHM = UNDEFINED\nclause.\n\n --- ALGORITHM = MERGE is specified for a view that can be processed only\nwith a temporary table. In this case, MySQL generates a warning and sets\nthe algorithm to UNDEFINED.\n\n\n\nAs mentioned earlier, MERGE is handled by merging corresponding parts\nof a view definition into the statement that refers to the view. The\nfollowing examples briefly illustrate how the MERGE algorithm works.\nThe examples assume that there is a view v_merge that has this\ndefinition:\n\nCREATE ALGORITHM = MERGE VIEW v_merge (vc1, vc2) AS\nSELECT c1, c2 FROM t WHERE c3 > 100;\n\nExample 1: Suppose that we issue this statement:\n\nSELECT * FROM v_merge;\n\nMySQL handles the statement as follows:\n\n\n --- v_merge becomes t\n\n --- * becomes vc1, vc2, which corresponds to c1, c2\n\n --- The view WHERE clause is added\n\n\nThe resulting statement to be executed becomes:\n\nSELECT c1, c2 FROM t WHERE c3 > 100;\n\nExample 2: Suppose that we issue this statement:\n\nSELECT * FROM v_merge WHERE vc1 < 100;\n\nThis statement is handled similarly to the previous one, except that\nvc1 < 100 becomes c1 < 100 and the view WHERE clause is\nadded to the statement WHERE clause using an AND connective\n(and parentheses are added to make sure the parts of the clause are executed\nwith correct precedence). The resulting statement to be executed becomes:\n\nSELECT c1, c2 FROM t WHERE (c3 > 100) AND (c1 < 100);\n\nEffectively, the statement to be executed has a WHERE clause of this\nform:\n\nWHERE (select WHERE) AND (view WHERE)\n\nThe MERGE algorithm requires a one-to relationship between the rows\nin the view and the rows in the underlying table. If this relationship does\nnot hold, a temporary table must be used instead. Lack of a one-to-one\nrelationship occurs if the view contains any of a number of constructs:\n\n\n --- Aggregate functions (SUM(), MIN(), MAX(),\nCOUNT(), and so forth)\n\n --- DISTINCT\n\n --- GROUP BY\n\n --- HAVING\n\n --- UNION or UNION ALL\n\n --- Refers only to literal values (in this case, there is no underlying table)\n\n\nSome views are updatable. That is, you can use them in statements such as\nUPDATE, DELETE, or INSERT to update the contents of the\nunderlying table. For a view to be updatable, there must be a one-to\nrelationship between the rows in the view and the rows in the underlying\ntable. There are also certain other constructs that make a view\nnon-updatable. To be more specific, a view is not updatable if it contains\nany of the following:\n\n\n --- Aggregate functions (SUM(), MIN(), MAX(),\nCOUNT(), and so forth)\n\n --- DISTINCT\n\n --- GROUP BY\n\n --- HAVING\n\n --- UNION or UNION ALL\n\n --- Subquery in the select list\n\n --- Join\n\n --- Non-updatable view in the FROM clause\n\n --- A subquery in the WHERE clause that refers to a table in the\nFROM clause\n\n --- Refers only to literal values (in this case, there is no underlying table to\nupdate)\n\n --- ALGORITHM = TEMPTABLE (use of a temporary table always makes a view\nnon-updatable)\n\n\nWith respect to insertability (being updatable with INSERT\nstatements), an updatable view is insertable if it also satisfies these\nadditional requirements for the view columns:\n\n\n --- There must be no duplicate view column names.\n\n --- The view must contain all columns in the base table that do not have a\ndefault value.\n\n --- The view columns must be simple column references and not derived columns.\nA derived column is one that is not a simple column reference but is derived\nfrom an expression. These are examples of derived columns:\n\n3.14159\ncol1 + 3\nUPPER(col2)\ncol3 / col4\n(subquery)\n\n\nA view that has a mix of simple column references and derived columns is not\ninsertable, but it can be updatable if you update only those columns that\nare not derived. Consider this view:\n\nCREATE VIEW v AS SELECT col1, 1 AS col2 FROM t;\n\nThis view is not insertable because col2 is derived from an\nexpression. But it is updatable if the update does not try to update\ncol2. This update is allowable:\n\nUPDATE v SET col1 = 0;\n\nThis update is not allowable because it attempts to update a derived column:\n\nUPDATE v SET col2 = 0;\n\nIt is sometimes possible for a multiple-table view to be updatable, assuming\nthat it can be processed with the MERGE algorithm. For this to work,\nthe view must use an inner join (not an outer join or a UNION). Also,\nonly a single table in the view definition can be updated, so the SET\nclause must name only columns from one of the tables in the view. Views\nthat use UNION ALL are disallowed even though they might be\ntheoretically updatable, because the implementation uses temporary tables to\nprocess them.\n\n\nFor a multiple-table updatable view, INSERT can work if it inserts into a\nsingle table. DELETE is not supported.\n\nThe WITH CHECK OPTION clause can be given for an updatable view to\nprevent inserts or updates to rows except those for which the WHERE\nclause in the select_statement is true.\n",""),(357,23,"TRIM"," TRIM([{BOTH | LEADING | TRAILING} [remstr] FROM] str)\n TRIM(remstr FROM] str)\nReturns the string str with all remstr prefixes and/or suffixes\nremoved. If none of the specifiers BOTH, LEADING, or\nTRAILING is given, BOTH is assumed. If remstr is optional\nand not specified, spaces are removed.\n","mysql> SELECT TRIM(' bar ');\n -> 'bar'\nmysql> SELECT TRIM(LEADING 'x' FROM 'xxxbarxxx');\n -> 'barxxx'\nmysql> SELECT TRIM(BOTH 'x' FROM 'xxxbarxxx');\n -> 'bar'\nmysql> SELECT TRIM(TRAILING 'xyz' FROM 'barxxyz');\n -> 'barx'"),(358,26,"IS"," IS boolean_value\n IS NOT boolean_value\nTests whether a value against a boolean value, where boolean_value can\nbe TRUE, FALSE, or UNKNOWN.\n","mysql> SELECT 1 IS TRUE, 0 IS FALSE, NULL IS UNKNOWN;\n -> 1, 1, 1\nmysql> SELECT 1 IS NOT UNKNOWN, 0 IS NOT UNKNOWN, NULL IS NOT UNKNOWN;\n -> 1, 1, 0"),(359,14,"GET_FORMAT"," GET_FORMAT(DATE|TIME|DATETIME, 'EUR'|'USA'|'JIS'|'ISO'|'INTERNAL')\nReturns a format string. This function is useful in combination with the\nDATE_FORMAT() and the STR_TO_DATE() functions.\nThe three possible values for the first argument\nand the five possible values for the second argument result in 15 possible\nformat strings (for the specifiers used, see the table in the\nDATE_FORMAT() function description).\n Function Call Result\n GET_FORMAT(DATE,'USA') '%m.%d.%Y'\n GET_FORMAT(DATE,'JIS') '%Y-%m-%d'\n GET_FORMAT(DATE,'ISO') '%Y-%m-%d'\n GET_FORMAT(DATE,'EUR') '%d.%m.%Y'\n GET_FORMAT(DATE,'INTERNAL') '%Y%m%d'\n GET_FORMAT(DATETIME,'USA') '%Y-%m-%d-%H.%i.%s'\n GET_FORMAT(DATETIME,'JIS') '%Y-%m-%d %H:%i:%s'\n GET_FORMAT(DATETIME,'ISO') '%Y-%m-%d %H:%i:%s'\n GET_FORMAT(DATETIME,'EUR') '%Y-%m-%d-%H.%i.%s'\n GET_FORMAT(DATETIME,'INTERNAL') '%Y%m%d%H%i%s'\n GET_FORMAT(TIME,'USA') '%h:%i:%s %p'\n GET_FORMAT(TIME,'JIS') '%H:%i:%s'\n GET_FORMAT(TIME,'ISO') '%H:%i:%s'\n GET_FORMAT(TIME,'EUR') '%H.%i.%S'\n GET_FORMAT(TIME,'INTERNAL') '%H%i%s'\n \nISO format is ISO 9075, not ISO 8601.\n\nAs of MySQL 4.1.4, TIMESTAMP can also be used;\nGET_FORMAT() returns the same values as for DATETIME.\n","mysql> SELECT DATE_FORMAT('2003-10-03',GET_FORMAT(DATE,'EUR'));\n -> '03.10.2003'\nmysql> SELECT STR_TO_DATE('10.31.2003',GET_FORMAT(DATE,'USA'));\n -> 2003-10-31\n@c Following is commented out because not yet implemented\n@c mysql> SET DATE_FORMAT=GET_FORMAT(DATE, 'USA'); SELECT '2003-10-31';\n@c -> 10-31-2003");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (360,1,"TINYBLOB"," TINYBLOB\n\nA BLOB column with a maximum length of 255\n(2^8 - 1) bytes.\n",""),(361,10,"SAVEPOINT","SAVEPOINT identifier\nROLLBACK TO SAVEPOINT identifier\n\nStarting from MySQL 4.0.14 and 4.1.1, InnoDB supports the SQL statements\nSAVEPOINT and ROLLBACK TO SAVEPOINT.\n",""),(362,9,"IF"," IF(expr1,expr2,expr3)\nIf expr1 is TRUE (expr1 <> 0 and expr1 <> NULL) then\nIF() returns expr2, else it returns expr3.\nIF() returns a numeric or string value, depending on the context\nin which it is used.\n","mysql> SELECT IF(1>2,2,3);\n -> 3\nmysql> SELECT IF(1<2,'yes','no');\n -> 'yes'\nmysql> SELECT IF(STRCMP('test','test1'),'no','yes');\n -> 'no'"),(363,6,"PURGE","","PURGE MASTER LOGS TO 'mysql-bin.010';\nPURGE MASTER LOGS BEFORE '2003-04-02 22:46:26';"),(364,25,"USER"," USER()\n\nReturns the current MySQL username and hostname.\n","mysql> SELECT USER();\n -> 'davida@localhost'"),(365,13,"MPOINTFROMWKB"," MPointFromWKB(wkb[,srid])\n MultiPointFromWKB(wkb[,srid])\nConstructs a MULTIPOINT value using its WKB representation and SRID.\n",""),(366,28,"ALTER TABLE","ALTER TABLE allows you to change the structure of an existing table.\nFor example, you can add or delete columns, create or destroy indexes, change\nthe type of existing columns, or rename columns or the table itself. You can\nalso change the comment for the table and type of the table.\n","ALTER [IGNORE] TABLE tbl_name\n alter_specification [, alter_specification] ...\n\nalter_specification:\n ADD [COLUMN] column_definition [FIRST | AFTER col_name ]\n | ADD [COLUMN] (column_definition,...)\n | ADD INDEX [index_name] [index_type] (index_col_name,...)\n | ADD [CONSTRAINT [symbol]]\n PRIMARY KEY [index_type] (index_col_name,...)\n | ADD [CONSTRAINT [symbol]]\n UNIQUE [index_name] [index_type] (index_col_name,...)\n | ADD [FULLTEXT|SPATIAL] [index_name] (index_col_name,...)\n | ADD [CONSTRAINT [symbol]]\n FOREIGN KEY [index_name] (index_col_name,...)\n [reference_definition]\n | ALTER [COLUMN] col_name {SET DEFAULT literal | DROP DEFAULT}\n | CHANGE [COLUMN] old_col_name column_definition\n [FIRST|AFTER col_name]\n | MODIFY [COLUMN] column_definition [FIRST | AFTER col_name]\n | DROP [COLUMN] col_name\n | DROP PRIMARY KEY\n | DROP INDEX index_name\n | DROP FOREIGN KEY fk_symbol\n | DISABLE KEYS\n | ENABLE KEYS\n | RENAME [TO] new_tbl_name\n | ORDER BY col_name\n | CONVERT TO CHARACTER SET charset_name [COLLATE collation_name]\n | [DEFAULT] CHARACTER SET charset_name [COLLATE collation_name]\n | DISCARD TABLESPACE\n | IMPORT TABLESPACE\n | table_options"),(367,22,"CHAR BYTE","CHAR BYTE is an alias for CHAR BINARY.\n",""),(368,7,"MERGE","\n@menu\n* MERGE table problems:: MERGE Table Problems\n@end menu\n\nThe MERGE storage engine was introduced in MySQL 3.23.25. It\nis also known as the MRG_MyISAM engine.\n\nA MERGE table is a collection of identical MyISAM tables that\ncan be used as one. ``Identical'' means that all tables have\nidentical column and index information. You can't merge tables in which the\ncolumns are listed in a different order, don't have exactly the same columns, or\nhave the indexes in different order. However, any or all of the tables can be\ncompressed with myisampack.\nSee also : [myisampack, , myisampack].\nDifferences in table options such as AVG_ROW_LENGTH, MAX_ROWS,\nor PACK_KEYS do not matter.\n","mysql> CREATE TABLE t1 (\n -> a INT NOT NULL AUTO_INCREMENT PRIMARY KEY,\n -> message CHAR(20));\nmysql> CREATE TABLE t2 (\n -> a INT NOT NULL AUTO_INCREMENT PRIMARY KEY,\n -> message CHAR(20));\nmysql> INSERT INTO t1 (message) VALUES ('Testing'),('table'),('t1');\nmysql> INSERT INTO t2 (message) VALUES ('Testing'),('table'),('t2');\nmysql> CREATE TABLE total (\n -> a INT NOT NULL AUTO_INCREMENT,\n -> message CHAR(20), INDEX(a))\n -> TYPE=MERGE UNION=(t1,t2) INSERT_METHOD=LAST;"),(369,28,"CREATE TABLE","CREATE TABLE creates a table with the given name.\nYou must have the CREATE privilege for the table.\n\nRules for allowable table names are given in [Legal names].\nBy default, the table is created in the current database.\nAn error occurs if the table exists, if there is no current database,\nor if the database does not exist.\n","CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name\n [(create_definition,...)]\n [table_options] [select_statement]"),(370,26,">"," >\nGreater than:\n","mysql> SELECT 2 > 2;\n -> 0"),(371,14,"MICROSECOND"," MICROSECOND(expr)\n\nReturns the microseconds from the time or datetime expression expr as a\nnumber in the range from 0 to 999999.\n","mysql> SELECT MICROSECOND('12:00:00.123456');\n -> 123456\nmysql> SELECT MICROSECOND('1997-12-31 23:59:59.000010');\n -> 10"),(372,7,"ANALYZE","This statement analyzes and stores the key distribution for a table.\nDuring the analysis, the table is locked with a read lock. This works on\nMyISAM and BDB tables and (as of MySQL 4.0.13) InnoDB\ntables. For MyISAM tables, this\nstatement is equivalent to using myisamchk -a.\n\nMySQL uses the stored key distribution to decide the order in which\ntables should be joined when you perform a join on something other than a\nconstant.\n","ANALYZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE tbl_name [, tbl_name] ..."),(373,7,"CONSTRAINT","The syntax of a foreign key constraint definition in InnoDB looks like\nthis:\n\n[CONSTRAINT symbol] FOREIGN KEY [id] (index_col_name, ...)\n REFERENCES tbl_name (index_col_name, ...)\n [ON DELETE {RESTRICT | CASCADE | SET NULL | NO ACTION}]\n [ON UPDATE {RESTRICT | CASCADE | SET NULL | NO ACTION}]\n","CREATE TABLE product (category INT NOT NULL, id INT NOT NULL,\n price DECIMAL,\n PRIMARY KEY(category, id)) TYPE=INNODB;\nCREATE TABLE customer (id INT NOT NULL,\n PRIMARY KEY (id)) TYPE=INNODB;\nCREATE TABLE product_order (no INT NOT NULL AUTO_INCREMENT,\n product_category INT NOT NULL,\n product_id INT NOT NULL,\n customer_id INT NOT NULL,\n PRIMARY KEY(no),\n INDEX (product_category, product_id),\n FOREIGN KEY (product_category, product_id)\n REFERENCES product(category, id)\n ON UPDATE CASCADE ON DELETE RESTRICT,\n INDEX (customer_id),\n FOREIGN KEY (customer_id)\n REFERENCES customer(id)) TYPE=INNODB;"),(374,23,"FIELD"," FIELD(str,str1,str2,str3,...)\nReturns the index of str in the str1, str2,\nstr3, ... list.\nReturns 0 if str is not found.\n\nIf all arguments to FIELD() are strings, all arguments are compared\nas strings. If all arguments are numbers, they are compared as\nnumbers. Otherwise, the arguments are compared as double.\n\nIf str is NULL, the return value is 0 because\nNULL fails equality comparison with any value.\nFIELD() is the complement of ELT().\n","mysql> SELECT FIELD('ej', 'Hej', 'ej', 'Heja', 'hej', 'foo');\n -> 2\nmysql> SELECT FIELD('fo', 'Hej', 'ej', 'Heja', 'hej', 'foo');\n -> 0");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (375,14,"MAKETIME"," MAKETIME(hour,minute,second)\n\nReturns a time value calculated from the hour, minute, and\nsecond arguments.\n","mysql> SELECT MAKETIME(12,15,30);\n -> '12:15:30'"),(376,14,"CURDATE"," CURDATE()\n\nReturns the current date as a value in 'YYYY-MM-DD' or YYYYMMDD\nformat, depending on whether the function is used in a string or numeric\ncontext.\n","mysql> SELECT CURDATE();\n -> '1997-12-15'\nmysql> SELECT CURDATE() + 0;\n -> 19971215"),(377,12,"MIN MAX"," MIN([DISTINCT] expr)\n MAX([DISTINCT] expr)\nReturns the minimum or maximum value of expr. MIN() and\nMAX() may take a string argument; in such cases they return the\nminimum or maximum string value. See also : [MySQL indexes].\nThe DISTINCT keyword can be used as of MySQL 5.0.0 to find the minimum\nor maximum of the distinct values of expr; this is supported, but\nproduces the same result as omitting DISTINCT.\n","mysql> SELECT student_name, MIN(test_score), MAX(test_score)\n -> FROM student\n -> GROUP BY student_name;"),(378,7,"SET PASSWORD","","SET PASSWORD = PASSWORD('some password')\nSET PASSWORD FOR user = PASSWORD('some password')"),(379,1,"ENUM"," ENUM('value1','value2',...)\n\nAn enumeration. A string object that can have only one value, chosen\nfrom the list of values 'value1', 'value2', ...,\nNULL or the special '' error value. An ENUM column can\nhave a maximum of 65,535 distinct values.\nENUM values are represented internally as integers.\n",""),(380,25,"DATABASE"," DATABASE()\nReturns the default (current) database name.\nAs of MySQL 4.1, the string has the utf8 character set.\n","mysql> SELECT DATABASE();\n -> 'test'"),(381,13,"POINTFROMWKB"," PointFromWKB(wkb[,srid])\nConstructs a POINT value using its WKB representation and SRID.\n",""),(382,4,"POWER"," POW(X,Y)\n POWER(X,Y)\nReturns the value of X raised to the power of Y.\n","mysql> SELECT POW(2,2);\n -> 4.000000\nmysql> SELECT POW(2,-2);\n -> 0.250000"),(383,4,"ATAN"," ATAN(X)\nReturns the arc tangent of X, that is, the value whose tangent is\nX.\n","mysql> SELECT ATAN(2);\n -> 1.107149\nmysql> SELECT ATAN(-2);\n -> -1.107149"),(384,23,"STRCMP"," STRCMP(expr1,expr2)\nSTRCMP()\nreturns 0 if the strings are the same, -1 if the first\nargument is smaller than the second according to the current sort order,\nand 1 otherwise.\n","mysql> SELECT STRCMP('text', 'text2');\n -> -1\nmysql> SELECT STRCMP('text2', 'text');\n -> 1\nmysql> SELECT STRCMP('text', 'text');\n -> 0"),(385,6,"INSERT DELAYED","The DELAYED option for the INSERT statement is a\nMySQL extension to standard SQL that is very useful if you have clients\nthat can't wait for the INSERT to complete. This is a common\nproblem when you use MySQL for logging and you also\nperiodically run SELECT and UPDATE statements that take a\nlong time to complete. DELAYED was introduced in MySQL\n3.22.15.\n\nWhen a client uses INSERT DELAYED, it gets an okay from the server at\nonce, and the row is queued to be inserted when the table is not in use by\nany other thread.\n\nAnother major benefit of using INSERT DELAYED is that inserts\nfrom many clients are bundled together and written in one block. This is much\nfaster than doing many separate inserts.\n\nThere are some constraints on the use of DELAYED:\n\n\n --- INSERT DELAYED works only with ISAM, MyISAM, and (beginning\nwith MySQL 4.1) MEMORY tables.\nFor MyISAM tables, if there are no free blocks in the middle of the\ndata file, concurrent SELECT and INSERT statements are supported.\nUnder these circumstances, you very seldom need to use INSERT\nDELAYED with MyISAM.\nSee also : [MyISAM storage engine, , MyISAM storage engine].\nSee also : [MEMORY storage engine, , MEMORY storage engine].\n\n --- INSERT DELAYED should be used only for INSERT statements that\nspecify value lists. This is enforced as of MySQL 4.0.18. The server ignores\nDELAYED for INSERT DELAYED ... SELECT statements.\n\n --- The server ignores\nDELAYED for INSERT DELAYED ... ON DUPLICATE UPDATE statements.\n\n --- Because the statement returns immediately before the rows are inserted,\nyou cannot use LAST_INSERT_ID() to get the AUTO_INCREMENT\nvalue the statement might generate.\n\n --- DELAYED rows are not visible to SELECT statements until they\nactually have been inserted.\n\n --- DELAYED are ignored on slaves, because this could cause the slave to\nhave different data than the master.\n","INSERT DELAYED ..."),(386,1,"MEDIUMTEXT"," MEDIUMTEXT\n\nA TEXT column with a maximum length of 16,777,215\n(2^24 - 1) characters.\n",""),(387,4,"LN"," LN(X)\nReturns the natural logarithm of X.\n","mysql> SELECT LN(2);\n -> 0.693147\nmysql> SELECT LN(-2);\n -> NULL"),(388,4,"LOG"," LOG(X)\n LOG(B,X)\nIf called with one parameter, this function returns the natural logarithm\nof X.\n","mysql> SELECT LOG(2);\n -> 0.693147\nmysql> SELECT LOG(-2);\n -> NULL"),(389,6,"SET SQL_LOG_BIN","SET SQL_LOG_BIN = {0|1}\n\nDisables or enables binary logging for the current connection\n(SQL_LOG_BIN is a session variable)\nif the client connects using an account that has the SUPER privilege.\nThe statement is refused with an error if the client does not have that\nprivilege. (Before MySQL 4.1.2, the statement was simply ignored in that case.)\n","");
-insert into help_topic (help_topic_id,help_category_id,name,description,example) values (390,26,"!="," <>\n !=\nNot equal:\n","mysql> SELECT '.01' <> '0.01';\n -> 1\nmysql> SELECT .01 <> '0.01';\n -> 0\nmysql> SELECT 'zapp' <> 'zappp';\n -> 1"),(391,17,"AES_DECRYPT"," AES_ENCRYPT(str,key_str)\n AES_DECRYPT(crypt_str,key_str)\nThese functions allow encryption and decryption of data using the official\nAES (Advanced Encryption Standard) algorithm, previously known as \"Rijndael.\"\nEncoding with a 128-bit key length is used, but you can extend it up to\n256 bits by modifying the source. We chose 128 bits because it is much\nfaster and it is usually secure enough.\n\nThe input arguments may be any length. If either argument is NULL,\nthe result of this function is also NULL.\n\nBecause AES is a block-level algorithm, padding is used to encode uneven length\nstrings and so the result string length may be calculated as\n16*(trunc(string_length/16)+1).\n\nIf AES_DECRYPT() detects invalid data or incorrect padding, it\nreturns NULL. However, it is possible for AES_DECRYPT()\nto return a non-NULL value (possibly garbage) if the input data or\nthe key is invalid.\n\nYou can use the AES functions to store data in an encrypted form by\nmodifying your queries:\n","INSERT INTO t VALUES (1,AES_ENCRYPT('text','password'));"),(392,14,"DAYNAME"," DAYNAME(date)\nReturns the name of the weekday for date.\n","mysql> SELECT DAYNAME('1998-02-05');\n -> 'Thursday'"),(393,25,"COERCIBILITY"," COERCIBILITY(str)\nReturns the collation coercibility value of the string argument.\n","mysql> SELECT COERCIBILITY('abc' COLLATE latin1_swedish_ci);\n -> 0\nmysql> SELECT COERCIBILITY(USER());\n -> 3\nmysql> SELECT COERCIBILITY('abc');\n -> 4"),(394,1,"INT"," INT[(M)] [UNSIGNED] [ZEROFILL]\n\nA normal-size integer. The signed range is -2147483648 to\n2147483647. The unsigned range is 0 to 4294967295.\n\n INTEGER[(M)] [UNSIGNED] [ZEROFILL]\n\nThis is a synonym for INT.\n",""),(395,23,"RLIKE"," expr REGEXP pat\n expr RLIKE pat\n\nPerforms a pattern match of a string expression expr against a pattern\npat. The pattern can be an extended regular expression. The syntax\nfor regular expressions is discussed in [Regexp]. Returns 1\nif expr matches pat, otherwise returns 0. If either\nexpr or pat is NULL, the result is NULL.\nRLIKE is a synonym for REGEXP, provided for mSQL\ncompatibility.\n\nThe pattern need not be a literal string. For example, it can be specified\nas a string expression or table column.\n\nNote: Because MySQL uses the C escape syntax in strings (for example,\n'\\n' to represent newline), you must double any '\\' that you\nuse in your REGEXP strings.\n\nAs of MySQL 3.23.4, REGEXP is not case sensitive for normal (not\nbinary) strings.\n","mysql> SELECT 'Monty!' REGEXP 'm%y%%';\n -> 0\nmysql> SELECT 'Monty!' REGEXP '.*';\n -> 1\nmysql> SELECT 'new*\\n*line' REGEXP 'new\\\\*.\\\\*line';\n -> 1\nmysql> SELECT 'a' REGEXP 'A', 'a' REGEXP BINARY 'A';\n -> 1 0\nmysql> SELECT 'a' REGEXP '^[a-d]';\n -> 1"),(396,18,"GLENGTH"," GLength(ls)\nReturns as a double-precision number the length of the LineString\nvalue ls in its associated spatial reference.\n","mysql> SET @ls = 'LineString(1 1,2 2,3 3)';\nmysql> SELECT GLength(GeomFromText(@ls));\n+----------------------------+\n| GLength(GeomFromText(@ls)) |\n+----------------------------+\n| 2.8284271247462 |\n+----------------------------+"),(397,4,"RADIANS"," RADIANS(X)\nReturns the argument X, converted from degrees to radians.\n","mysql> SELECT RADIANS(90);\n -> 1.570796"),(398,25,"COLLATION"," COLLATION(str)\nReturns the collation for the character set of the string argument.\n","mysql> SELECT COLLATION('abc');\n -> 'latin1_swedish_ci'\nmysql> SELECT COLLATION(_utf8'abc');\n -> 'utf8_general_ci'"),(399,26,"COALESCE"," COALESCE(value,...)\nReturns the first non-NULL value in the list.\n","mysql> SELECT COALESCE(NULL,1);\n -> 1\nmysql> SELECT COALESCE(NULL,NULL,NULL);\n -> NULL"),(400,25,"VERSION"," VERSION()\nReturns a string that indicates the MySQL server version.\nAs of MySQL 4.1, the string has the utf8 character set.\n","mysql> SELECT VERSION();\n -> '4.1.3-beta-log'"),(401,23,"MAKE_SET"," MAKE_SET(bits,str1,str2,...)\nReturns a set value (a string containing substrings separated by ','\ncharacters) consisting of the strings that have the corresponding bit in\nbits set. str1 corresponds to bit 0, str2 to bit 1,\nand so on. NULL values in str1, str2, ...\nare not appended to the result.\n","mysql> SELECT MAKE_SET(1,'a','b','c');\n -> 'a'\nmysql> SELECT MAKE_SET(1 | 4,'hello','nice','world');\n -> 'hello,world'\nmysql> SELECT MAKE_SET(1 | 4,'hello','nice',NULL,'world');\n -> 'hello'\nmysql> SELECT MAKE_SET(0,'a','b','c');\n -> ''"),(402,23,"FIND_IN_SET"," FIND_IN_SET(str,strlist)\nReturns a value 1 to N if the string str is in the string list\nstrlist consisting of N substrings. A string list is a string\ncomposed of substrings separated by ',' characters. If the first\nargument is a constant string and the second is a column of type SET,\nthe FIND_IN_SET() function is optimized to use bit arithmetic.\nReturns 0 if str is not in strlist or if strlist\nis the empty string. Returns NULL if either argument is NULL.\nThis function does not work properly if the first argument contains a comma\n(',') character.\n","mysql> SELECT FIND_IN_SET('b','a,b,c,d');\n -> 2");
-
-insert into help_keyword (help_keyword_id,name) values (0,"MIN"),(1,"JOIN"),(2,"SERIALIZABLE"),(3,"REPLACE"),(4,"RETURNS"),(5,"MASTER_SSL_CA"),(6,"NCHAR"),(7,"COLUMNS"),(8,"WORK"),(9,"DATETIME"),(10,"MODE"),(11,"OPEN"),(12,"INTEGER"),(13,"ESCAPE"),(14,"VALUE");
-insert into help_keyword (help_keyword_id,name) values (15,"GEOMETRYCOLLECTIONFROMWKB"),(16,"DROP"),(17,"SQL_BIG_RESULT"),(18,"EVENTS"),(19,"MONTH"),(20,"REGEXP"),(21,"DUPLICATE"),(22,"LINESTRINGFROMTEXT."),(23,"UNLOCK"),(24,"INNODB"),(25,"YEAR_MONTH"),(26,"LOCK"),(27,"NDB"),(28,"CHECK"),(29,"FULL");
-insert into help_keyword (help_keyword_id,name) values (30,"INT4"),(31,"BY"),(32,"NO"),(33,"MINUTE"),(34,"DATA"),(35,"DAY"),(36,"RAID_CHUNKSIZE"),(37,"SHARE"),(38,"REAL"),(39,"SEPARATOR"),(40,"DELETE"),(41,"ON"),(42,"CHANGED"),(43,"CLOSE"),(44,"USE");
-insert into help_keyword (help_keyword_id,name) values (45,"WHERE"),(46,"SPATIAL"),(47,"SQL_BUFFER_RESULT"),(48,"IGNORE"),(49,"QUICK"),(50,"SIGNED"),(51,"FALSE"),(52,"POLYGONFROMWKB"),(53,"NDBCLUSTER"),(54,"LEVEL"),(55,"FORCE"),(56,"BINARY"),(57,"TO"),(58,"CHANGE"),(59,"HOUR_MINUTE");
-insert into help_keyword (help_keyword_id,name) values (60,"UPDATE"),(61,"INTO"),(62,"FEDERATED"),(63,"VARYING"),(64,"HOUR_SECOND"),(65,"VARIABLE"),(66,"ROLLBACK"),(67,"MAX"),(68,"RTREE"),(69,"PROCEDURE"),(70,"TIMESTAMP"),(71,"IMPORT"),(72,"AGAINST"),(73,"CHECKSUM"),(74,"INSERT");
-insert into help_keyword (help_keyword_id,name) values (75,"COUNT"),(76,"LONGBINARY"),(77,"THEN"),(78,"ENGINES"),(79,"DAY_SECOND"),(80,"EXISTS"),(81,"BOOLEAN"),(82,"DEFAULT"),(83,"MOD"),(84,"TYPE"),(85,"NO_WRITE_TO_BINLOG"),(86,"RESET"),(87,"BIGINT"),(88,"SET"),(89,"DATE");
-insert into help_keyword (help_keyword_id,name) values (90,"STATUS"),(91,"FULLTEXT"),(92,"COMMENT"),(93,"MASTER_CONNECT_RETRY"),(94,"INNER"),(95,"STOP"),(96,"MASTER_LOG_FILE"),(97,"MRG_MYISAM"),(98,"PRECISION"),(99,"TRAILING"),(100,"LONG"),(101,"ELSE"),(102,"IO_THREAD"),(103,"FROM"),(104,"READ");
-insert into help_keyword (help_keyword_id,name) values (105,"LEFT"),(106,"MINUTE_SECOND"),(107,"COMPACT"),(108,"DEC"),(109,"FOR"),(110,"WARNINGS"),(111,"MIN_ROWS"),(112,"STRING"),(113,"FUNCTION"),(114,"ENCLOSED"),(115,"AGGREGATE"),(116,"FIELDS"),(117,"INT3"),(118,"ARCHIVE"),(119,"AVG_ROW_LENGTH");
-insert into help_keyword (help_keyword_id,name) values (120,"ADD"),(121,"FLOAT4"),(122,"STRIPED"),(123,"VIEW"),(124,"REPEATABLE"),(125,"INFILE"),(126,"ORDER"),(127,"USING"),(128,"MIDDLEINT"),(129,"UNSIGNED"),(130,"GEOMETRYFROMTEXT"),(131,"INDEXES"),(132,"FOREIGN"),(133,"CACHE"),(134,"HOSTS");
-insert into help_keyword (help_keyword_id,name) values (135,"COMMIT"),(136,"SCHEMAS"),(137,"LEADING"),(138,"LOAD"),(139,"SQL_CACHE"),(140,"CONVERT"),(141,"DYNAMIC"),(142,"POLYGONFROMTEXT"),(143,"BYTE"),(144,"LINESTRINGFROMWKB"),(145,"GLOBAL"),(146,"BERKELEYDB"),(147,"WHEN"),(148,"HAVING"),(149,"AS");
-insert into help_keyword (help_keyword_id,name) values (150,"STARTING"),(151,"AUTOCOMMIT"),(152,"GRANTS"),(153,"OUTER"),(154,"FLOOR"),(155,"AFTER"),(156,"STD"),(157,"DISABLE"),(158,"CSV"),(159,"OUTFILE"),(160,"LOW_PRIORITY"),(161,"BDB"),(162,"SCHEMA"),(163,"SONAME"),(164,"POW");
-insert into help_keyword (help_keyword_id,name) values (165,"MULTIPOINTFROMWKB"),(166,"INDEX"),(167,"MULTIPOINTFROMTEXT"),(168,"BACKUP"),(169,"MULTILINESTRINGFROMWKB"),(170,"EXTENDED"),(171,"CROSS"),(172,"NATIONAL"),(173,"GROUP"),(174,"ZEROFILL"),(175,"MASTER_PASSWORD"),(176,"RELAY_LOG_FILE"),(177,"TRUE"),(178,"CHARACTER"),(179,"MASTER_USER");
-insert into help_keyword (help_keyword_id,name) values (180,"ENGINE"),(181,"TABLE"),(182,"INSERT_METHOD"),(183,"CASCADE"),(184,"RELAY_LOG_POS"),(185,"SQL_CALC_FOUND_ROWS"),(186,"MYISAM"),(187,"MODIFY"),(188,"MATCH"),(189,"MASTER_LOG_POS"),(190,"DESC"),(191,"DISTINCTROW"),(192,"TIME"),(193,"NUMERIC"),(194,"GEOMETRYCOLLECTIONFROMTEXT");
-insert into help_keyword (help_keyword_id,name) values (195,"RAID_CHUNKS"),(196,"FLUSH"),(197,"CREATE"),(198,"ISAM"),(199,"INT2"),(200,"PROCESSLIST"),(201,"LOGS"),(202,"HEAP"),(203,"SOUNDS"),(204,"BETWEEN"),(205,"MULTILINESTRINGFROMTEXT"),(206,"PACK_KEYS"),(207,"VALUES"),(208,"FAST"),(209,"VARCHARACTER");
-insert into help_keyword (help_keyword_id,name) values (210,"SHOW"),(211,"ALL"),(212,"REDUNDANT"),(213,"USER_RESOURCES"),(214,"PARTIAL"),(215,"BINLOG"),(216,"END"),(217,"SECOND"),(218,"AND"),(219,"FLOAT8"),(220,"PREV"),(221,"HOUR"),(222,"SELECT"),(223,"DATABASES"),(224,"OR");
-insert into help_keyword (help_keyword_id,name) values (225,"MASTER_SSL_CIPHER"),(226,"SQL_SLAVE_SKIP_COUNTER"),(227,"BOTH"),(228,"BOOL"),(229,"YEAR"),(230,"MASTER_PORT"),(231,"CONCURRENT"),(232,"UNIQUE"),(233,"MASTER_SSL"),(234,"DATE_ADD"),(235,"LIKE"),(236,"IN"),(237,"COLUMN"),(238,"DUMPFILE"),(239,"MEMORY");
-insert into help_keyword (help_keyword_id,name) values (240,"CEIL"),(241,"QUERY"),(242,"MASTER_HOST"),(243,"LINES"),(244,"SQL_THREAD"),(245,"MULTIPOLYGONFROMWKB"),(246,"MASTER_SSL_CERT"),(247,"DAY_MINUTE"),(248,"TRANSACTION"),(249,"DATE_SUB"),(250,"GEOMETRYFROMWKB"),(251,"INT1"),(252,"RENAME"),(253,"RIGHT"),(254,"ALTER");
-insert into help_keyword (help_keyword_id,name) values (255,"MAX_ROWS"),(256,"STRAIGHT_JOIN"),(257,"NATURAL"),(258,"VARIABLES"),(259,"ESCAPED"),(260,"SHA1"),(261,"RAID_TYPE"),(262,"CHAR"),(263,"OFFSET"),(264,"NEXT"),(265,"SQL_LOG_BIN"),(266,"ERRORS"),(267,"TEMPORARY"),(268,"SQL_SMALL_RESULT"),(269,"COMMITTED");
-insert into help_keyword (help_keyword_id,name) values (270,"DELAY_KEY_WRITE"),(271,"BEGIN"),(272,"MEDIUM"),(273,"INTERVAL"),(274,"DAY_HOUR"),(275,"REFERENCES"),(276,"AES_ENCRYPT"),(277,"ISOLATION"),(278,"INT8"),(279,"RESTRICT"),(280,"IS"),(281,"UNCOMMITTED"),(282,"NOT"),(283,"DES_KEY_FILE"),(284,"COMPRESSED");
-insert into help_keyword (help_keyword_id,name) values (285,"START"),(286,"IF"),(287,"SAVEPOINT"),(288,"PRIMARY"),(289,"LAST"),(290,"INNOBASE"),(291,"LIMIT"),(292,"KEYS"),(293,"KEY"),(294,"MERGE"),(295,"SQL_NO_CACHE"),(296,"DELAYED"),(297,"CONSTRAINT"),(298,"SERIAL"),(299,"ACTION");
-insert into help_keyword (help_keyword_id,name) values (300,"WRITE"),(301,"SESSION"),(302,"DATABASE"),(303,"NULL"),(304,"USE_FRM"),(305,"SLAVE"),(306,"TERMINATED"),(307,"ASC"),(308,"OPTIONALLY"),(309,"ENABLE"),(310,"DIRECTORY"),(311,"LOCAL"),(312,"DISTINCT"),(313,"MASTER_SSL_KEY"),(314,"TABLES");
-insert into help_keyword (help_keyword_id,name) values (315,"<>"),(316,"HIGH_PRIORITY"),(317,"BTREE"),(318,"FIRST"),(319,"TYPES"),(320,"MASTER"),(321,"FIXED"),(322,"RAID0"),(323,"MULTIPOLYGONFROMTEXT"),(324,"ROW_FORMAT");
-
-insert into help_relation (help_topic_id,help_keyword_id) values (377,0),(280,1),(349,2),(329,3),(126,4),(147,5),(335,6),(271,7),(108,8),(298,9),(61,10),(280,10),(271,11),(77,11),(394,12);
-insert into help_relation (help_topic_id,help_keyword_id) values (126,12),(301,13),(189,14),(79,15),(19,16),(60,16),(126,16),(148,16),(218,16),(366,16),(280,17),(185,18),(20,19),(395,20),(116,21);
-insert into help_relation (help_topic_id,help_keyword_id) values (39,22),(23,23),(271,24),(369,24),(20,25),(23,26),(280,26),(369,27),(369,28),(271,29),(369,29),(394,30),(34,31),(369,31),(280,31);
-insert into help_relation (help_topic_id,help_keyword_id) values (59,31),(329,31),(366,31),(286,31),(373,32),(369,32),(20,33),(86,34),(369,34),(329,34),(20,35),(369,36),(280,37),(246,38),(126,38);
-insert into help_relation (help_topic_id,help_keyword_id) values (286,39),(373,40),(369,40),(373,41),(0,41),(24,42),(77,43),(0,44),(34,45),(59,45),(77,45),(165,46),(366,46),(280,47),(0,48);
-insert into help_relation (help_topic_id,help_keyword_id) values (116,48),(280,48),(59,48),(329,48),(366,48),(264,49),(34,49),(24,49),(298,50),(304,51),(63,52),(369,53),(349,54),(0,55),(235,56);
-insert into help_relation (help_topic_id,help_keyword_id) values (203,56),(335,56),(298,56),(361,57),(147,57),(147,58),(366,58),(20,59),(373,60),(116,60),(280,60),(116,61),(280,61),(30,61),(369,62);
-insert into help_relation (help_topic_id,help_keyword_id) values (203,63),(20,64),(95,65),(108,66),(361,66),(377,67),(165,68),(280,69),(149,70),(69,70),(329,71),(61,72),(369,73),(116,74),(385,74);
-insert into help_relation (help_topic_id,help_keyword_id) values (338,75),(225,76),(103,77),(271,78),(20,79),(118,80),(19,80),(148,80),(218,80),(61,81),(15,81),(116,82),(369,82),(189,82),(366,82);
-insert into help_relation (help_topic_id,help_keyword_id) values (136,83),(369,84),(366,84),(372,85),(258,85),(264,85),(25,86),(208,86),(113,86),(173,87),(108,88),(373,88),(144,88),(389,88),(166,88);
-insert into help_relation (help_topic_id,help_keyword_id) values (59,88),(30,88),(366,88),(207,89),(96,89),(298,89),(20,89),(271,90),(40,90),(290,90),(175,90),(369,91),(165,91),(366,91),(369,92);
-insert into help_relation (help_topic_id,help_keyword_id) values (147,93),(0,94),(37,95),(147,96),(369,97),(246,98),(357,99),(225,100),(103,101),(37,102),(257,102),(271,103),(86,103),(357,103),(34,103);
-insert into help_relation (help_topic_id,help_keyword_id) values (280,103),(185,103),(285,103),(349,104),(23,104),(77,104),(0,105),(20,106),(369,107),(163,108),(271,109),(280,109),(271,110),(369,111),(126,112);
-insert into help_relation (help_topic_id,help_keyword_id) values (126,113),(329,114),(126,115),(271,116),(329,116),(198,117),(369,118),(369,119),(366,119),(42,120),(366,120),(130,121),(369,122),(19,123),(121,123);
-insert into help_relation (help_topic_id,help_keyword_id) values (349,124),(329,125),(34,126),(280,126),(59,126),(366,126),(286,126),(0,127),(34,127),(198,128),(246,129),(394,129),(163,129),(15,129),(298,129);
-insert into help_relation (help_topic_id,help_keyword_id) values (130,129),(93,129),(324,130),(271,131),(373,132),(369,132),(366,132),(113,133),(107,134),(271,134),(108,135),(271,136),(357,137),(86,138),(329,138);
-insert into help_relation (help_topic_id,help_keyword_id) values (285,138),(280,139),(298,140),(369,141),(313,142),(367,143),(353,144),(95,145),(349,145),(144,145),(369,146),(103,147),(280,148),(0,149),(23,149);
-insert into help_relation (help_topic_id,help_keyword_id) values (280,149),(329,150),(108,151),(271,152),(0,153),(173,154),(366,155),(321,156),(366,157),(369,158),(329,158),(280,159),(116,160),(23,160),(34,160);
-insert into help_relation (help_topic_id,help_keyword_id) values (59,160),(30,160),(329,160),(369,161),(271,162),(118,162),(148,162),(166,162),(126,163),(382,164),(365,165),(271,166),(0,166),(60,166),(42,166);
-insert into help_relation (help_topic_id,help_keyword_id) values (369,166),(165,166),(366,166),(332,167),(282,168),(214,169),(264,170),(24,170),(0,171),(203,172),(335,172),(280,173),(246,174),(394,174),(163,174);
-insert into help_relation (help_topic_id,help_keyword_id) values (15,174),(130,174),(93,174),(147,175),(147,176),(304,177),(203,178),(335,178),(166,178),(147,179),(271,180),(290,180),(369,180),(366,180),(271,181);
-insert into help_relation (help_topic_id,help_keyword_id) values (117,181),(24,181),(218,181),(372,181),(264,181),(42,181),(282,181),(285,181),(369,182),(373,183),(19,183),(369,183),(218,183),(147,184),(280,185);
-insert into help_relation (help_topic_id,help_keyword_id) values (369,186),(366,187),(61,188),(147,189),(259,190),(280,190),(286,190),(280,191),(247,192),(297,192),(298,192),(163,193),(193,194),(369,195),(113,196);
-insert into help_relation (help_topic_id,help_keyword_id) values (271,197),(118,197),(126,197),(42,197),(369,197),(165,197),(369,198),(181,199),(271,200),(235,201),(271,201),(290,201),(369,202),(299,203),(109,204);
-insert into help_relation (help_topic_id,help_keyword_id) values (78,205),(369,206),(30,207),(24,208),(203,209),(107,210),(235,210),(40,210),(290,210),(175,210),(185,210),(240,211),(280,211),(369,212),(258,213);
-insert into help_relation (help_topic_id,help_keyword_id) values (369,214),(185,215),(103,216),(20,217),(109,218),(248,218),(246,219),(77,220),(20,221),(30,222),(202,222),(271,223),(102,224),(147,225),(144,226);
-insert into help_relation (help_topic_id,help_keyword_id) values (357,227),(81,228),(15,228),(20,229),(147,230),(329,231),(366,232),(147,233),(20,234),(271,235),(299,235),(61,236),(280,236),(185,236),(366,237);
-insert into help_relation (help_topic_id,help_keyword_id) values (280,238),(280,239),(350,240),(113,241),(147,242),(329,243),(37,244),(257,244),(90,245),(147,246),(20,247),(108,248),(349,248),(20,249),(106,250);
-insert into help_relation (help_topic_id,help_keyword_id) values (15,251),(366,252),(0,253),(42,254),(121,254),(366,254),(369,255),(0,256),(280,256),(0,257),(271,258),(329,259),(224,260),(369,261),(367,262);
-insert into help_relation (help_topic_id,help_keyword_id) values (298,262),(280,263),(77,264),(389,265),(271,266),(218,267),(280,268),(349,269),(369,270),(108,271),(24,272),(20,273),(20,274),(373,275),(369,275);
-insert into help_relation (help_topic_id,help_keyword_id) values (391,276),(349,277),(93,278),(373,279),(19,279),(218,279),(292,280),(349,281),(118,282),(244,282),(258,283),(369,284),(108,285),(257,285),(118,286);
-insert into help_relation (help_topic_id,help_keyword_id) values (19,286),(148,286),(218,286),(361,287),(366,288),(77,289),(369,290),(34,291),(280,291),(185,291),(59,291),(77,291),(271,292),(366,292),(373,293);
-insert into help_relation (help_topic_id,help_keyword_id) values (116,293),(42,293),(369,293),(366,293),(369,294),(280,295),(116,296),(30,296),(385,296),(369,297),(366,297),(369,298),(189,298),(373,299),(369,299);
-insert into help_relation (help_topic_id,help_keyword_id) values (23,300),(95,301),(349,301),(271,302),(118,302),(148,302),(373,303),(292,303),(264,304),(25,305),(107,305),(175,305),(37,305),(257,305),(329,306);
-insert into help_relation (help_topic_id,help_keyword_id) values (280,307),(286,307),(329,308),(366,309),(369,310),(372,311),(258,311),(264,311),(23,311),(329,311),(338,312),(377,312),(305,312),(280,312),(227,312);
-insert into help_relation (help_topic_id,help_keyword_id) values (286,312),(147,313),(271,314),(23,314),(390,315),(116,316),(280,316),(165,317),(369,318),(366,318),(77,318),(271,319),(235,320),(86,320),(40,320);
-insert into help_relation (help_topic_id,help_keyword_id) values (147,320),(208,320),(285,320),(163,321),(369,321),(369,322),(156,323),(369,324);
-
diff --git a/index.txt b/index.txt
index dea3fa0..561040b 100644
--- a/index.txt
+++ b/index.txt
@@ -39,6 +39,11 @@
@@ add slot MySQL support to scripts utilities
@patch 080_all_slot_script-r1.patch
+@ver 4.01.15.30 to 4.01.15.99
+@@ add slot MySQL support to scripts utilities
+
+@patch 080_all_slot_script-r5.patch
+@ver 4.01.16.30 to 4.01.99.99
@@ add slot MySQL support to scripts utilities
@patch 080_all_slot_script-r2.patch