opensuse-webserver上的MSSQL nvarchar(max)

时间:2016-11-29 08:57:40

标签: php sql-server image unixodbc nvarchar

我目前正在opensuse-webserver上创建一个webform,其中包含textarea,您可以使用复制和粘贴添加图片。我们使用DIV并为其赋予"contenteditable="True"值来完成此操作。

这导致POST中的字符串非常长,容易超过120000个字符。

我必须使用MSSQL数据库,我想在其中保存所有内容。

使用nvarchar(max)在Microsoft SQL Server Management Studio中保存和选择此字符串不是问题。但是当试图通过Web服务器选择它时,驱动程序会尝试分配超过4GB的内存(这是一个已知问题,请参阅here),从而产生致命错误:

  

允许的内存大小为268435456个字节(尝试分配4294967293个字节)。

我也尝试使用BINARYIMAGE数据类型,但无法使用PHP从数据库中读取数据。

可悲的是,我无法就此提出解决方案,所以我希望有人能够帮助我。

1 个答案:

答案 0 :(得分:0)

请添加此行ini_set(' memory_limit',' -1');在脚本的开头尝试。

我可以建议的另一件事是,从字符串创建一个图像并将其存储在您的服务器中,然后只在您的数据库中存储该图像的路径。 尝试使用函数imagecreatefromstring(