• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Models confused?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Models confused?


  • Subject: Re: Models confused?
  • From: Chuck Hill <email@hidden>
  • Date: Wed, 22 Dec 2010 10:49:53 -0800

On Dec 22, 2010, at 10:30 AM, Ramsey Gurley wrote:

> MySQL does not have deferred fk constraints.  EOF doesn't order operations, it just commits en masse.  So, if you want to use fk constraints with MySQL, you have to order the operations yourself.  There is some magic in wonder for this
>
> http://lists.apple.com/archives/Webobjects-dev/2007/Jun/msg00751.html
>
> However, keep in mind that required, circular relationships cannot be modeled in MySQL if you use FK constraints.  If the relationship is circular, no amount of operation ordering will fix your problem AFAIK.

You could possibly order by the PK/FK if the relationship was A->B->C in the same table.  If it is A<->B, then that is not possible.


> Or you can just turn off constraints and live dangerously... or switch to Postgres.  It's free and has deferred FK constraints. Or Frontbase.... or if you're made out of money, Oracle...  I even read SQLite has deferred FKs... cool! (^_^)

Microsoft SQL Server does not support deferred constraints either, so MySQL is in good company!  :-P


Chuck


> On Dec 22, 2010, at 1:13 PM, Jesse Tayler wrote:
>
>> Hi Paul
>>
>> thanks for your reply -- but
>>
>> How do you mean?
>>
>> I establish other foreign keys on other tables without troubles? Their SQL runs. this line is my only trouble - I thought it was mismatched "id" types for some reason, but you think the trouble is in my model somewhere?
>>
>>
>>
>>
>> On Dec 22, 2010, at 12:54 PM, Paul D Yu wrote:
>>
>>> Jesse
>>>
>>> I believe foreignKeys do not work on MySQL with EOF.
>>>
>>> Paul
>>> On Dec 22, 2010, at 12:53 PM, Jesse Tayler wrote:
>>>
>>>> I've had ERAttachment tests working once or twice, now I think maybe I've gotten models confused somewhere perhaps.
>>>>
>>>> I have a poster relationship from user which eogen's a line to add a foreign key, which I think should be there, but this step fails - in past experience, this has been mismatched id key types, but I don't see that here.
>>>>
>>>> Everything is setup with "id" as a prototype for mysql.
>>>>
>>>> I see some similar troubles with Postgres on the list or google, but I'm on Mysql and just starting a new dev. environment etc.
>>>>
>>>> This foreign key should be there right? Any ideas why it might be failing?
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> 		userTable.addForeignKey("posterId", "ERAttachment", "id");
>>>>
>>>> Can't create table 'mtly.#sql-731_26c3' (errno: 150)
>>>>
>>>> Failed to execute 'ALTER TABLE USER ADD CONSTRAINT USER_posterId_posterId_FK FOREIGN KEY (posterId) REFERENCES ERAttachment (id)'.
>>>>
>>>>
>>>>
>>>>
>>>> If I ignore, I'll get a runtime:
>>>>
>>>>
>>>>
>>>>
>>>> com.webobjects.eoaccess.EOGeneralAdaptorException: EvaluateExpression failed: : Next exception:SQL State:23000 -- error code: 1452 -- msg: Cannot add or update a child row: a foreign key constraint fails (`mtly`.`ERAttachment`, CONSTRAINT `ERAttachment_attachmentDataID_attachmentDataID_FK` FOREIGN KEY (`attachmentDataID`) REFERENCES `ERAttachmentData` (`id`))
>>>>
>>>> Reason:
>>>> EvaluateExpression failed: <com.webobjects.jdbcadaptor._MySQLPlugIn$MySQLExpression: "INSERT INTO ERAttachment(size, width, height, attachmentDataID, available, thumbnail, creationDate, ownerID, configurationName, smallData, mimeType, originalFileName, webPath, id, proxied, storageType) VALUES (?, NULL, NULL, ?, ?, NULL, ?, NULL, NULL, NULL, ?, ?, ?, ?, ?, ?)" withBindings: 1:73207(size), 2:2(attachmentDataID), 3:true(available), 4:2010-12-21 22:23:33(creationDate), 5:"image/jpeg"(mimeType), 6:"jesseheadshot.jpg"(originalFileName), 7:"/2.jpg"(webPath), 8:2(id), 9:true(proxied), 10:"db"(storageType)>: Next exception:SQL State:23000 -- error code: 1452 -- msg: Cannot add or update a child row: a foreign key constraint fails (`mtly`.`ERAttachment`, CONSTRAINT `ERAttachment_attachmentDataID_attachmentDataID_FK` FOREIGN KEY (`attachmentDataID`) REFERENCES `ERAttachmentData` (`id`))
>>>> _______________________________________________
>>>> Do not post admin requests to the list. They will be ignored.
>>>> Webobjects-dev mailing list      (email@hidden)
>>>> Help/Unsubscribe/Update your Subscription:
>>>>
>>>> This email sent to email@hidden
>>>
>>>
>>
>> _______________________________________________
>> Do not post admin requests to the list. They will be ignored.
>> Webobjects-dev mailing list      (email@hidden)
>> Help/Unsubscribe/Update your Subscription:
>>
>> This email sent to email@hidden
>>
>
> _______________________________________________
> Do not post admin requests to the list. They will be ignored.
> Webobjects-dev mailing list      (email@hidden)
> Help/Unsubscribe/Update your Subscription:
>
> This email sent to email@hidden

--
Chuck Hill             Senior Consultant / VP Development

Practical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems.
http://www.global-village.net/products/practical_webobjects







Attachment: smime.p7s
Description: S/MIME cryptographic signature

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden

References: 
 >Models confused? (From: Jesse Tayler <email@hidden>)
 >Re: Models confused? (From: Paul D Yu <email@hidden>)
 >Re: Models confused? (From: Jesse Tayler <email@hidden>)
 >Re: Models confused? (From: Ramsey Gurley <email@hidden>)

  • Prev by Date: Re: Models confused?
  • Next by Date: Re: Models confused?
  • Previous by thread: Re: Models confused?
  • Next by thread: Re: Models confused?
  • Index(es):
    • Date
    • Thread