MySQL中的用户定义函数类似于Excel用户定义函数,用于十六进制到Ascii

MySQL中的用户定义函数类似于Excel用户定义函数,用于十六进制到Ascii,mysql,sql,hex,user-defined-functions,sql-function,Mysql,Sql,Hex,User Defined Functions,Sql Function,可以像在excel中一样在MySQL中创建用户定义的函数,如果是的话,可以这样做 此外,如果上述方法可行,那么我如何将MySql函数与粘贴在下面的现有excel函数相关联(具有相同的用法): Public Function HexToText(Text As Range) As String Dim i As Integer Dim DummyStr As String For i = 1 To Len(Text) Step 2 If Val("&H" & (Mid(Text,

可以像在excel中一样在MySQL中创建用户定义的函数,如果是的话,可以这样做

此外,如果上述方法可行,那么我如何将MySql函数与粘贴在下面的现有excel函数相关联(具有相同的用法):

Public Function HexToText(Text As Range) As String
Dim i As Integer
Dim DummyStr As String
For i = 1 To Len(Text) Step 2
If Val("&H" & (Mid(Text, i, 2))) > 31 Then DummyStr = DummyStr & 
Chr(Val("&H" & (Mid(Text, i, 2))))
DoEvents
Next i
HexToText = DummyStr
End Function

请注意,在使用Unhex时,我的十六进制数据还包含可能导致错误的Null(00)

十六进制列中的一个示例值:

596f757220496e7465726e6574206163636f756e7420776974682044484c2042524f414442414e44204e4554205b505d204c494d4954454420686176696e6720757365726e616d652020414a57414454524156454c2077696c6c20657870697265206f6e20323031362d31302d30332032303a30303a313620506c656173652
��W"��FW&�WB66�V�Bv�F�D��%$�D$�B�UB��ĔԕDTB�f��rW6W&��R�tEE$dT�v���W��&R��#b��2#��b�V6R
通过上述UnHex命令获得的错误结果:

596f757220496e7465726e6574206163636f756e7420776974682044484c2042524f414442414e44204e4554205b505d204c494d4954454420686176696e6720757365726e616d652020414a57414454524156454c2077696c6c20657870697265206f6e20323031362d31302d30332032303a30303a313620506c656173652
��W"��FW&�WB66�V�Bv�F�D��%$�D$�B�UB��ĔԕDTB�f��rW6W&��R�tEE$dT�v���W��&R��#b��2#��b�V6R
实际结果应该是这样的:

596f757220496e7465726e6574206163636f756e7420776974682044484c2042524f414442414e44204e4554205b505d204c494d4954454420686176696e6720757365726e616d652020414a57414454524156454c2077696c6c20657870697265206f6e20323031362d31302d30332032303a30303a313620506c656173652
��W"��FW&�WB66�V�Bv�F�D��%$�D$�B�UB��ĔԕDTB�f��rW6W&��R�tEE$dT�v���W��&R��#b��2#��b�V6R

您在DHL BROADBAND NET[p]LIMITED(用户名为AJWDTRAVEL)的互联网帐户将于2016-10-03 20:00:16到期。鉴于“MySQL用户定义函数”很快返回,此问题显示出明显的研究不足:。相关:请注意,我的十六进制数据也包含Null(00),可能在使用Unhex时导致错误