sql >> データベース >  >> RDS >> Oracle

エラー:互換性のない文字エンコード:UTF-8およびASCII-8BIT

    同じ問題があり、モンキーパッチで何時間も検索した後、問題を解決しました。

        module ActiveSupport #:nodoc:
          class SafeBuffer < String
    
            def safe_concat(value)
              value = force_utf8_encoding(value)
              raise SafeConcatError unless html_safe?
              original_concat(value)
            end
    
            def concat(value)
              value = force_utf8_encoding(value)
              if !html_safe? || value.html_safe?
                super(value)
              else
                super(ERB::Util.h(value))
              end
            end
    
            alias << concat
    
            private
    
            def force_utf8_encoding(value)
              self.force_encoding('UTF-8').html_safe unless self.encoding.name == 'UTF-8'
              value = (value).force_encoding('UTF-8').html_safe unless value.nil? || value.encoding.name == 'UTF-8'
              value
            end
          end
        end
    


    1. 30分後にデータベースからアイテムを削除する

    2. PHPで行を削除-WebページのPDO

    3. 接続用のMySQLiクラスパターン、閉じる、開いたままにしますか?

    4. 複数の属性とvalue_idを検索するためのMySQLクエリ