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 <aurelijus.usec...@gmail.com>
>>>
>>>> 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
>>>>>
>>>>  -- 
>>>>  
>>>>  
>>>>  
>>>>
>>>
>>>

-- 



Reply via email to