14

MySQLストアドプロシージャを作成するとき、文字セットと照合をどのように設定しますか? MySQLのドキュメントには例が記載されておらず、一般的な構文が少し不明確です。

mysql> show procedure status\G

*************************** 1. row ***************************
                  Db: MslLandingSequence
                Name: DeploySkycrane
                Type: PROCEDURE
             Definer: curiosity@localhost
            Modified: 2012-08-04 00:05:16
             Created: 2011-11-12 00:02:45
       Security_type: DEFINER
             Comment: 
character_set_client: latin1
collation_connection: latin1_swedish_ci
  Database Collation: latin1_swedish_ci

最後の 3 つの項目は Unicode にする必要があります。ありがとう。

4

2 に答える 2

4

バグレポートに注意してください。プロシージャとそのパラメータがデータベースのデフォルトの文字セットに関連付けられているのではなく、常に Binary String に関連付けられていることを示しています。

そのため、パラメータのCharacter set属性を明示的に指定する必要があります。

単純な再作成手順では、問題が解決しない場合があります。

于 2015-04-30T04:49:52.467 に答える