From: ryc <[EMAIL PROTECTED]>

> I am aware that currently innobase tables can not have abritararly large
> text/varchar fields and support for this will be released sometime in the
> month of June. The application I am working with requires text fields
> (usually less than 64k), and I desperatly need row level locking. Either I
> continue using Mysql, and use Innodb tables.. or I have to switch to
> Postgresql.
>
> I need to do something right away about this performance problem, I can
not
> wait until Innodb tables are released with the unlimited row length. I
tried
> to find out what the max row length for a Innodb table row, but did not
find
> it in the documentation. If it isnt too much smaller than 64k I could
switch
> now, and not have to worry about using postgresql. Does anyone know what
the
> limit is? Any pointers would be apreciated.

Hi,

We used to have a similar problem with MS-SQL Server (a limit that's now
been removed I believe).

If you are willing to do some extra development you can get around this by
splitting the field into multiple chunks of (for example), 8k, and inserting
them with a field indicating re-assemble order.

Benefits : Better use of space with fixed field size. Can store an object of
abitrary size (i.e. from 1k to gigabytes).

Downside : Extra development. Slower retrival.

So your code would look something like :

mysql_query(db, "select chunk_data from chunks where id = 5453 order by
reassemble_order");
results = mysql_get_results(db);
number = mysql_num_rows(results);
for (a=0 to number)
    {
    tail = mysql_result(results[a]);
    bigvar = bigvar+ tail;
    }

Splitting it up in the first place is a similar procedure.

Russ.


---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to