I've tried nearly any possible syntax, but with no success. Any line with
the reference to other table causes an error 1005 / 150:
"table creation failed because a foreign key constraint was not correctly
formed"
Wasted a lot of time on it with no avail, guess will be forced to go back
to ol' SQLite :)
On Wednesday, August 1, 2012 8:03:05 PM UTC+3, Massimo Di Pierro wrote:
>
> Try
>
> Field('City', 'list:reference City', label='Miestas'),
>
> On Wednesday, 1 August 2012 11:05:02 UTC-5, Aurelijus Useckas wrote:
>>
>> tried it, still the same error :( thnx anyway
>>
>> On Wednesday, August 1, 2012 6:31:52 PM UTC+3, Massimo Di Pierro wrote:
>>>
>>> Yes. this is wrong:
>>>
>>> Field('City', db.city, 'list:reference city', label='Miestas'),
>>>
>>> should be
>>>
>>> Field('City', 'list:reference city', label='Miestas'),
>>>
>>> On Wednesday, 1 August 2012 09:15:07 UTC-5, Aurelijus Useckas wrote:
>>>>
>>>> Thank you Massimo, but the 1005/150 mysql problem seems to be smth
>>>> wring with foreign key (merging of tables). Are there any flaws in my DAL
>>>> syntax?
>>>>
>>>> This line seems to be the trigger:
>>>> Field('City', db.city, 'list:reference city', label='Miestas'),
>>>>
>>>> it references:
>>>>
>>>> db.define_table('city',
>>>> Field('name', notnull=True, unique=True),
>>>> format='%(name)s')
>>>>
>>>> any ideas what's bothering mysql?
>>>>
>>>>
>>>> On Wednesday, August 1, 2012 4:56:03 PM UTC+3, Massimo Di Pierro wrote:
>>>>>
>>>>> db = DAL('mysql://....', check_reserved=['common','mysql'])
>>>>>
>>>>> Anyway, I am not sure your problem is that you are using a reserved
>>>>> keyword. Perhaps the table exists already. I am also surprised you are
>>>>> getting a pymysql InternalError and not an OperationalError.
>>>>>
>>>>> On Wednesday, 1 August 2012 07:45:01 UTC-5, Aurelijus Useckas wrote:
>>>>>>
>>>>>> I've changed the long into longitude and it seems to be solved but I
>>>>>> still get errors:
>>>>>>
>>>>>> p2
>>>>>> S'<class \'gluon.contrib.pymysql.err.InternalError\'> (1005, u"Can\'t
>>>>>> create table \'./lpkdb/asoc.frm\' (errno: 150)")'
>>>>>>
>>>>>> Now it says it cannot create next table, which is:
>>>>>>
>>>>>> db.define_table('asoc',
>>>>>> Field('name', label='Pavadinimas', unique=True),
>>>>>> Field('City', db.city, 'list:reference city', label='Miestas'),
>>>>>> Field('address', label='Adresas'),
>>>>>> Field('www'),
>>>>>> Field('tel'),
>>>>>> Field('fax'),
>>>>>> Field('email'),
>>>>>> Field('President', label='Asociacijos prezidentas'),
>>>>>> Field('CEO', label='Asociacijos generalinis'),
>>>>>> Field('CEO_tel', label='Generalinio tel.'),
>>>>>> Field('CEO_email', label='Generalinio email'),
>>>>>> Field('CEO_mob', label='Generalinio mobilus'),
>>>>>> Field('Pres_tel', label='Prezidento tel.'),
>>>>>> Field('Pres_email', label='Prezidento email'),
>>>>>> Field('Pres_mob', label='Prezidento mobilus'),
>>>>>> Field('submited_at', 'datetime', default=request.now,
>>>>>> writable=False, readable=False),
>>>>>> Field('updated_at', 'datetime', default=request.now,
>>>>>> update=request.now, writable=False, readable=False),
>>>>>> Field('submited_by', db.auth_user, default=auth.user_id,
>>>>>> writable=False, readable=False),
>>>>>> Field('updated_by', db.auth_user, update=auth.user_id,
>>>>>> writable=False, readable=False),
>>>>>> format='%(name)s')
>>>>>>
>>>>>> Are there some guidlines on how to construct DAL field names in order
>>>>>> to avoid any conflict while migrating to mysql?
>>>>>>
>>>>>>
>>>>>> On Wednesday, August 1, 2012 3:36:51 PM UTC+3, tomasz bandura wrote:
>>>>>>>
>>>>>>> Is it 'long' a mysql's reserved word?
>>>>>>>
>>>>>>> Regards
>>>>>>> Tomasz
>>>>>>>
>>>>>>> 2012/8/1 Aurelijus Useckas <[email protected]>
>>>>>>>
>>>>>>>> this is the trigger i guess:
>>>>>>>>
>>>>>>>> db.define_table('maps',
>>>>>>>> Field('name'),
>>>>>>>> Field('last_name'),
>>>>>>>> Field('long'),
>>>>>>>> Field('lat'),
>>>>>>>> format='%(name)s')
>>>>>>>>
>>>>>>>> On Wednesday, August 1, 2012 3:30:40 PM UTC+3, Aurelijus Useckas
>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>> Hi,
>>>>>>>>>
>>>>>>>>> I've built the app on SQLite and now want to migrate to the server
>>>>>>>>> based mysql. BUT web2py hangs in the middle of creating, basicaly
>>>>>>>>> just
>>>>>>>>> after the auth tables. When I restart the apache I can see auth
>>>>>>>>> tables as
>>>>>>>>> well as a few from my app.
>>>>>>>>>
>>>>>>>>> this is the err ticket that I get:
>>>>>>>>>
>>>>>>>>> (dp1
>>>>>>>>> S'output'
>>>>>>>>> p2
>>>>>>>>> S'<class \'gluon.contrib.pymysql.err.**ProgrammingError\'> (1064,
>>>>>>>>> u"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 \'long
>>>>>>>>> VARCHAR(255),\\n lat VARCHAR(255),\\n PRIMARY KEY(id)\\n)
>>>>>>>>> ENGINE=InnoDB CHA\' at line 5")'
>>>>>>>>> p3
>>>>>>>>> sS'layer'
>>>>>>>>> p4
>>>>>>>>> S'/opt/web-apps/web2py/**applications/init/models/db_**comp.py'
>>>>>>>>> p5
>>>>>>>>> sS'code'
>>>>>>>>> p6
>>>>>>>>>
>>>>>>>>> thnx
>>>>>>>>>
>>>>>>>> --
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
--