I have a rails 3.rc app that I'm developing. I have a text entry in one
my models that can sometimes be quite big. I tried setting :limit =>
4294967296 on the text column in my migration file but this doesn't seem
to have any effect. The column is till created as a TEXT column rather
than MEDIUMTEXT or LONGTEXT.
Does anyone have any idea why this might be happening? Is there a better
way of ensuring that
an entry won't default to TEXT in a mysql database?
Conor,
I think this is relevant - I had similar issue when I was saving reports to a db field. To work around, I changed the datatype of the field to :longtext. You can create or change the field to :longtext in your migration and everyone should be happy.
Conor,
I think this is relevant - I had similar issue when I was saving reports
to
a db field. To work around, I changed the datatype of the field to
:longtext. You can create or change the field to :longtext in your
migration
and everyone should be happy.
Hi David,
Thanks a million for your reply. I will give that a go. I had seen that
that is possible but I was a bit worried that it would mean that my
migrations wouldn't be database agnostic
Conor,
I think this is relevant - I had similar issue when I was saving reports
to
a db field. To work around, I changed the datatype of the field to
:longtext. You can create or change the field to :longtext in your
migration
and everyone should be happy.
Hi David,
Thanks a million for your reply. I will give that a go. I had seen that
that is possible but I was a bit worried that it would mean that my
migrations wouldn't be database agnostic
Is there a reason that you're not using VARCHAR? That should hold the
data (in less space, I believe!) and keep your migrations DB-agnostic.
Conor,
I think this is relevant - I had similar issue when I was saving reports
to
a db field. To work around, I changed the datatype of the field to
:longtext. You can create or change the field to :longtext in your
migration
and everyone should be happy.
Hi David,
Thanks a million for your reply. I will give that a go. I had seen that
that is possible but I was a bit worried that it would mean that my
migrations wouldn't be database agnostic
Is there a reason that you're not using VARCHAR? That should hold the
data (in less space, I believe!) and keep your migrations DB-agnostic.
From mysql doc:
"Values in VARCHAR columns are variable-length strings. The length can
be specified as 1 to 255 before MySQL 4.0.2, 0 to 255 as of MySQL
4.0.2, and 0 to 65,535 as of MySQL 5.0.3. (The maximum actual length
of a VARCHAR in MySQL 5.0 is determined by the maximum row size and
the character set you use. The maximum effective length is 65,532
bytes.) "
That was the problem I was trying to get over - I found the :LONGTEXT
workaround at 10 at night after 14 hour day so very well could be a
better solution, but I do remember specifically that I was being cut
off at ~65k chars. I don't recall trying varchar... but looks like at
least in my case would not have worked.
If you *really* need to store big stuff, maybe you could just use the
db to store a filename? It will add overhead to make sure files get
deleted when the record goes away, but it could work.
maybe you could just use the
db to store a filename
From experience I would second this approach... in fact that is what I
did on the app I referred to, once I put it off Heroku onto its own
environ (as at least stand-alone on Heroku there is no file storage)
Thanks a million for your reply. I will give that a go. I had seen that
that is possible but I was a bit worried that it would mean that my
migrations wouldn't be database agnostic
Is there a reason that you're not using VARCHAR? That should hold the
data (in less space, I believe!) and keep your migrations DB-agnostic.
Thanks a million for your reply. I will give that a go. I had seen that
that is possible but I was a bit worried that it would mean that my
migrations wouldn't be database agnostic
Is there a reason that you're not using VARCHAR? That should hold the
data (in less space, I believe!) and keep your migrations DB-agnostic.
Thanks a million for all the suggestions. I'll go with using longtext
for now and look into moving over to a solution that stores the files on
s3 in the near future.
This was a my first post to forum and I am really appreciate all the
help that I got, thanks