Вот проблема: у меня есть одна гигантская строка данных XML, хранящаяся в поле (BLOB) в таблице.Он содержит несколько строк по 70 тыс. Символов или более.Я вытащил его, используя ODBC_Connection.
Я могу импортировать (без проблем).
Я могу манипулировать XML и сохранять его обратно как строку (без проблем).
Я могу сохранить строкуобратно в поле MySQL (без проблем).
Проблема возникает, когда я пытаюсь сохранить его обратно в исходное поле, из которого извлек его.Если я сохраню строку длиной менее 32 000 символов, мы получим золотую награду.Если в строке больше символов, BAM.Я получаю это сообщение об ошибке.
( ! ) Warning: odbc_exec() [function.odbc-exec]: SQL error: [DataDirect][ODBC InterBase
driver][InterBase]Dynamic SQL Error, SQL error code = -104, token size exceeds limit,
SQL state 37000 in SQLExecDirect in ...\Test\index4.php on line 129 Call Stack
# Time Memory Function Location
1 0.0011 482872 {main}( ) ..\index4.php:0
2 0.1260 1033760 odbc_exec ( ) ..\index4.php:129
Вот код PHP, который я использую на всякий случай:
// Now save it back to the system
$conn=odbc_connect($DBNAME_O,$DBUSER_O,$DBPW_O);
if (!$conn)
{exit("Connection Failed: " . $conn);}
echo $tempFileXML;
$sql="UPDATE EHR_VISITS SET RECORD='$tempFileXML' WHERE EHR_VISITS_ID='1396'";
// echo $theData;
$rs=odbc_exec($conn,$sql);
odbc_close($conn);
Спасибо за помощь ...
ОБНОВЛЕНИЕ: Это связано сбаза данных между базами, а не MS SQL.Кроме того, я попытался использовать другой драйвер ODBC, и получил то же сообщение, но с чуть более высокой толерантностью символов: 42000 вместо 37000.
ПОМОГИТЕ, пожалуйста ....