いいえ、あなたは自動的に使用されるタイプと一致することはできません:私は(約)次のようにnormalizeEmailを定義できるようにしたいと思います。このため
INSERT INTO NL_LIST (NAME, EMAIL)
SELECT
NAME,
normalizeEmail(EMAIL)
FROM
RAW_NL_LIST;
:次のINSERT文を考えてみましょうストアドプロシージャの型を持つテーブル定義。 テーブル定義を自分で検索し、正しいタイプを入力する必要があります。
参照:http://dev.mysql.com/doc/refman/5.6/en/create-procedure.html
ここでは述べている:あなたは、テーブル内の列を参照している
CREATE
[DEFINER = { user | CURRENT_USER }]
PROCEDURE sp_name ([proc_parameter[,...]])
[characteristic ...] routine_body
CREATE
[DEFINER = { user | CURRENT_USER }]
FUNCTION sp_name ([func_parameter[,...]])
RETURNS type
[characteristic ...] routine_body
proc_parameter:
[ IN | OUT | INOUT ] param_name type
func_parameter:
param_name type
type:
Any valid MySQL data type <<<-- no special magic allowed
....
どんな文脈では?あなたはこれを行う場所でクエリの例を挙げることができますか? – TehShrike
概念の説明については、http://www.dba-oracle.com/plsql/t_plsql_var_const.htmを参照してください。 –
プロシージャを記述する場合は、いくつかの変数を宣言する必要があります。これらは、主にテーブルの列から入力を受け取ります。変数の型が指定された列の値と互換性があるようにするには、上記の構文を使用して、テーブルの列の型に基づいて変数を宣言します。これは、PL/SQLをプログラミングするときのベスト・プラクティスと見なされます。私の質問は、同じ種類のことがmysqlで可能かどうかでした。 –