Krunal:
私は私のテーブル内の列挙型データ型と「タイプ」という名前のフィールド/列をしました、私は私のPL-SQL関数のパラメータの同様のタイプを使用したいです。
私は、関数の引数として列挙型を渡すことはできますか?
私は(MySQLの)機能、次の試してみたが、関数の引数/パラメータとして列挙型を受け入れません。
CREATE FUNCTION `save_type` (type('new', 'existing', 'xyz') IN enum)
RETURNS INTEGER
BEGIN
RETURN 1;
END
ビルKarwin:
あなたは、関数パラメータのためのENUMタイプを使用することができますが、MySQLのための間違った構文を持っています。
この作品:
CREATE FUNCTION `save_type` (type enum('new', 'existing', 'xyz'))
RETURNS INTEGER
DETERMINISTIC
BEGIN
RETURN 1;
END
違い:
- 後に列挙値をリスト
enum
するキーワード。 - 以下のためのオプションはありません
IN
対OUT
MySQLのストアド関数のパラメータは。 - 機能は次のいずれかを使用して宣言しなければならない
DETERMINISTIC
、NO SQL
またはREADS SQL DATA
。