首页 > 解决方案 > 将存储在 mysql LONGTEXT 字段上的 HTML 文本转换为可读值?

问题描述

我正在迁移和旧的 ASP 上的应用程序。在一个页面上,从 MySQL 数据库的 LONGTEXT 字段中显示了一些 HTML 文本。在新服务器上,仅不显示来自该 LONGTEXT 字段的文本。

我尝试按照此处的建议将 LONGTEXT 转换为 CHAR:

将 mysql LONGTEXT 值转换为 VARCHAR 值?

SELECT ID, CAST(YourLongText as char(255)) AS YourVarchar FROM some_table

它有效,但存储的文本更长。我尝试使用 char(10000)。该查询适用于 MySQL 的 SQL Manager,但是当我在 Web 应用程序上使用它时,它什么也不显示(空)。

也许我错过了 IIS 上的配置。¿ 我应该去哪里看?¿ 有没有办法正确投射 LONGTEXT?

LONGTEXT 上存储的文本是这样的:

<font style=font-family:Tahoma;font-size:12px>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>  <table>  <tbody><tr>   <td>   <font style=font-family:Tahoma;font-size:12px>1111111111</p>   </td>   <td>   <font style=font-family:Tahoma;font-size:12px>PERSON NAME</p>   </td>   <td>   <font style=font-family:Tahoma;font-size:12px>PERSON MIDDLE NAME</p>   </td>   <td>   <font style=font-family:Tahoma;font-size:12px>PERSON LASTNAME</p>   </td>  </tr> </tbody></table>

我正在阅读 .ASP 上的字段,如下所示:

sql = "SELECT ID, CAST(YourLongText as char(255)) AS YourVarchar FROM some_table"
set rs = db.execute(sql)

if not rs.eof then
'nothing
else
%>  
    <div align="justify"><span style="font-family: Tahoma; font-size: 12px"><%=rs("YourVarchar")%></span></div>
<%
end if

编辑 1: HTML 没有任何问题。我尝试只用文本“测试”替换 LONGTEXT,但也没有出现。

标签: mysqliisasp-classiciis-8windows-server-2012-r2

解决方案


将 MySQL 连接器 ODBC 从 5.1.1 升级到 5.1.6 版本解决了这个问题。


推荐阅读