mysql に新しい関数を追加するには2つの方法があります:
(SOUNDEX() のような) 新しいネイティブ MySQL 関数を追加するには、 次のことだけを行う必要があります:
sql_lex.cc
内の sql_functions
配列内に関数名を定義する1行
を追加して下さい。
sql_yacc.y
に2行追加して下さい。プリプロセッサシンボルの定義上に
yacc が定義できます (これはファイルの最初に追加されるべきです)。それから
関数パラメータを定義し、これらのパラメータで 'item' を作成します。例とし
て、sql_yacc.y
内の SOUNDEX の全てのできごとをチェックしてくださ
い。
double *Item_func_newname::val()
または、文字列関数を定義して
いる場合 String *Item_func_newname::Str(String *str)
。
void
Item_func_newname::fix_length_and_dec()
これは与えられた引数に基づいて
少なくとも max_length
を計算します。max_length
は関数が返
す最大文字数です。関数が NULL
を返さない場合、maybe_null =
0
をセットすべきです。
文字列関数について:
String *str
引数が、結果を保持するために使用され
る文字列バッファを提供します。
Go to the first, previous, next, last section, table of contents.