It would be breaking only if somebody were using a database backend where it's 
NOT a keyword and also had a mapper field called "blob", right?

Seems pretty unlikely, but that's just my opinion.

-Ross

On Mar 4, 2010, at 4:13 PM, Jim Barrows wrote:

> On Thu, Mar 4, 2010 at 2:10 PM, Mads Hartmann Jensen <mads...@gmail.com> 
> wrote:
> This has already been on reviewboard and comitted to master - should i send 
> out a breaking change note? 
> 
> I'm not sure i get why this is a breaking change though? 
> 
> 
> Not sure if it is.  However it's certainly something folks will want to 
> upgrade to asap.
> 
> Naming columns keywords in SQL is bad.
> 
> 
> 
> On 04/03/2010, at 22.07, Jim Barrows wrote:
> 
>> On Thu, Mar 4, 2010 at 1:47 PM, Naftoli Gugenheim <naftoli...@gmail.com> 
>> wrote:
>> Is blob a standard reserved word or only on MySQL?
>> If the latter this is a potential breaking change.
>> 
>> Blob is not apparently part of the ANSI standard reserved word for SQL.  I 
>> would have sworn it was.   However, it is common in Oracle, MS SQL server 
>> and others.  Might as well be standard.
>> 
>>  
>> 
>> -------------------------------------
>> Mads Hartmann<mads...@gmail.com> wrote:
>> 
>> Ah! That fixed it, thanks a lot Jeppe ;)
>> 
>> I'm not sure what to say in the ticket though, the column-name blob
>> was a bad choise made by me.
>> 
>> On Mar 4, 1:32 pm, Jeppe Nejsum Madsen <je...@ingolfs.dk> wrote:
>> > On Thu, Mar 4, 2010 at 1:25 PM, Mads Hartmann <mads...@gmail.com> wrote:
>> > > Hello everyone,
>> > > I'm not sure if this is a lift problem or it's me. I'm trying to add
>> > > the ability to upload images to a project - I'm using the code
>> > > explained here:
>> > >http://groups.google.com/group/liftweb/browse_thread/thread/b0509263e...
>> >
>> > > I added two mapper classes:
>> > > -------
>> > > class ImageInfo extends LongKeyedMapper[ImageInfo] with IdPK {
>> > >  def getSingleton = ImageInfo
>> >
>> > >  object date extends MappedLong(this) {
>> > >    override def defaultValue = Helpers.millis
>> > >  }
>> > >  object mimeType extends MappedPoliteString(this, 64)
>> > >  object name extends MappedPoliteString(this, 256) {
>> > >    override def dbIndexed_? = true
>> > >    override def defaultValue = ""
>> >
>> > >    private def noSlashes(s: String) : List[FieldError] =
>> > >      if (s.contains("/"))
>> > >                                List(FieldError(this, Text("Image name 
>> > > \"" + s + "\" may not
>> > > contain \"/\"")))
>> > >      else
>> > >                                Nil
>> >
>> > >    override def validations =
>> > >      valMinLen(1, "Image name must not be empty") _ ::
>> > >      valUnique("Image name must be unique") _ ::
>> > >      noSlashes _ ::
>> > >      super.validations
>> > >  }
>> >
>> > >  object blob extends MappedLongForeignKey(this, ImageBlob)
>> >
>> > >  def deleteWithBlob {
>> > >    this.blob.obj match {
>> > >      case Full(x) => x.delete_!
>> > >      case _ =>
>> > >    }
>> > >    this.delete_!
>> > >  }
>> > > }
>> > > ---------
>> > > and
>> > > ----------
>> > > class ImageBlob extends LongKeyedMapper[ImageBlob] with IdPK {
>> > >  def getSingleton = ImageBlob
>> >
>> > >  object image extends MappedBinary(this)
>> > > }
>> > > ---------
>> >
>> > > The schemifier couldn't create the tables it gave to following
>> > > error ::
>> > > You have an error in your SQL syntax; check the manual that
>> > > corresponds to your MySQL server version for the right syntax to use
>> > > near 'blob BIGINT UNSIGNED)  ENGINE = InnoDB' at line 1
>> >
>> > > this is the sql statement it tried to execute
>> >
>> > > CREATE TABLE imageinfo (name VARCHAR(256) , id BIGINT UNSIGNED NOT
>> > > NULL AUTO_INCREMENT UNIQUE KEY , date_c BIGINT , mimetype
>> > > VARCHAR(64) , blob BIGINT UNSIGNED)  ENGINE = InnoDB
>> >
>> > I looks like it tries to create a column named blob, afaiks blob is a
>> > reserved word in 
>> > MySqlhttp://dev.mysql.com/doc/refman/5.0/en/reserved-words.html
>> >
>> > You could try renaming the field. If this solves the problem, please
>> > file a ticket
>> >
>> > /Jeppe
>> 
>> --
>> You received this message because you are subscribed to the Google Groups 
>> "Lift" group.
>> To post to this group, send email to lift...@googlegroups.com.
>> To unsubscribe from this group, send email to 
>> liftweb+unsubscr...@googlegroups.com.
>> For more options, visit this group at 
>> http://groups.google.com/group/liftweb?hl=en.
>> 
>> --
>> You received this message because you are subscribed to the Google Groups 
>> "Lift" group.
>> To post to this group, send email to lift...@googlegroups.com.
>> To unsubscribe from this group, send email to 
>> liftweb+unsubscr...@googlegroups.com.
>> For more options, visit this group at 
>> http://groups.google.com/group/liftweb?hl=en.
>> 
>> 
>> 
>> 
>> -- 
>> James A Barrows
>> 
>> 
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Lift" group.
>> To post to this group, send email to lift...@googlegroups.com.
>> To unsubscribe from this group, send email to 
>> liftweb+unsubscr...@googlegroups.com.
>> For more options, visit this group at 
>> http://groups.google.com/group/liftweb?hl=en.
> 
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Lift" group.
> To post to this group, send email to lift...@googlegroups.com.
> To unsubscribe from this group, send email to 
> liftweb+unsubscr...@googlegroups.com.
> For more options, visit this group at 
> http://groups.google.com/group/liftweb?hl=en.
> 
> 
> 
> -- 
> James A Barrows
> 
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Lift" group.
> To post to this group, send email to lift...@googlegroups.com.
> To unsubscribe from this group, send email to 
> liftweb+unsubscr...@googlegroups.com.
> For more options, visit this group at 
> http://groups.google.com/group/liftweb?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
"Lift" group.
To post to this group, send email to lift...@googlegroups.com.
To unsubscribe from this group, send email to 
liftweb+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en.

Reply via email to