I used this version (the first one) and change to MySQLdb. https://groups.google.com/forum/#!searchin/web2py/extract_mysql_models.py/web2py/XPoTlzPG7lQ/ngSsMbd6zHAJ
It gives me an error: Basically, This worked db = MySQLdb.connect(host = 'localhost',user ='root',passwd = '',db = 'name_of_my_database') But this didn't. extract_mysql_models.py --user 'root' --password '' --host '127.0.0.1' --database 'name_of_my_database' --dalname 'wikidb' --colcomments --singlemigrate > mywiki.py Note, my password is empty. The error I get is simply that it can't connect to the server. So, I am going through the code now. On Wednesday, April 22, 2015 at 2:49:41 PM UTC-4, Richard wrote: > > What do you exactly get out of extract_mysql_models.py applied over an SQL > dump of the schema (only no data inserts)? > > Richard > > On Wed, Apr 22, 2015 at 2:29 PM, Ron Chatterjee <[email protected] > <javascript:>> wrote: > >> Sorry, wasn't clear. Basically want to create a DAL (db.py) file from an >> existing site that I locally hosted (wAMP) which is php front end mysql >> backend. I exported out of my WAMP (phpmysqladmin) the tables and fields in >> SQL language. Then I tried to make DAL out of it. As you explained, thats >> not possible, Now I will try to take a stab at working with >> extract_mysql_models.py but it will probably will require some updates. If >> nothing works, I can use the MYSQL workbench to connect to the server to >> draw me the schema and then write the DAL from that. Hope it clear things >> up now. My bad. >> >> >> >> On Wednesday, April 22, 2015 at 2:04:49 PM UTC-4, Richard wrote: >>> >>> Hello Ron, >>> >>> The more this thread goes the less I understand what you are trying to >>> acheive... Do you want to translate a SQLite DB into a web2py model? or >>> MySQL DB? If you do have a MySQL server instance your connection string >>> seems correct... But then you have to define the table you want to access >>> in this table or you only have DB connection active which give you notting >>> because the DAL don't know the DB structure... >>> >>> Richard >>> >>> On Wed, Apr 22, 2015 at 1:30 PM, Ron Chatterjee <[email protected]> >>> wrote: >>> >>>> This is what I was looking for. >>>> >>>> >>>> https://groups.google.com/forum/#!searchin/web2py/extract_mysql_models.py/web2py/XPoTlzPG7lQ/ngSsMbd6zHAJ >>>> >>>> But homehow the code didn't work for me even when I followed the >>>> example like it says. So, I am creating a stand alone version that works >>>> with MySQLdb. >>>> >>>> >>>> >>>> >>>> >>>> >>>> On Tuesday, April 21, 2015 at 4:58:52 PM UTC-4, Ron Chatterjee wrote: >>>>> >>>>> I have sqlite browser. I am guessing its the same like SQlite Manager >>>>> where someone can import, export csv or sql file. I don't have password >>>>> in >>>>> that database and work externally to the python >>>>> >>>>> *I guess one possibility will be:* >>>>> >>>>> import MySQLdb >>>>> >>>>> import sys >>>>> >>>>> try: >>>>> >>>>> db = MySQLdb.connect(host = 'localhost',user ='root',passwd = ' ',db = >>>>> 'my_dabasename') >>>>> >>>>> except Exception as e: >>>>> >>>>> sys.exit('we cant get into the db'); >>>>> >>>>> cursor = db.cursor() >>>>> >>>>> cursor.execute('SELECT *FROM table') >>>>> >>>>> results = cursor.fetchall() >>>>> >>>>> print results >>>>> >>>>> >>>>> Once the table is fetched then use the insert_into_table option to >>>>> create db object. >>>>> >>>>> >>>>> But I agree with Niphlod, import, export csv is probably the only way >>>>> to go around, if it works:-). And also agree with richard. sqlbroser does >>>>> take the storage object as input and can export csv table and then use >>>>> that >>>>> back to create the database. I was just hoping to directly connect to my >>>>> local server (WAMP) where I have the mysql database defined. I was under >>>>> the impression, db = DAL('mysql:// >>>>> [email protected]:8000/my_database_name',migrate_enabled=False, >>>>> pool_size=20) is the way to go about it. >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> On Tuesday, April 21, 2015 at 4:07:02 PM UTC-4, Richard wrote: >>>>>> >>>>>> And what would be the utility since you already have INSERT INTO >>>>>> TABLE... Someone can just use something like SQLite Manager ( >>>>>> https://addons.mozilla.org/en-us/firefox/addon/sqlite-manager/) to >>>>>> import it... Once in SQLite DB (which anyway it should) he can use >>>>>> web2py >>>>>> csv export import if he want to migrate from SQLite to Postgres for >>>>>> instance... >>>>>> >>>>>> Richard >>>>>> >>>>>> On Tue, Apr 21, 2015 at 3:55 PM, Niphlod <[email protected]> wrote: >>>>>> >>>>>>> >>>>>>> >>>>>>> On Tuesday, April 21, 2015 at 9:39:14 PM UTC+2, Ron Chatterjee wrote: >>>>>>>> >>>>>>>> I tried this: >>>>>>>> >>>>>>>> db = >>>>>>>> DAL('mysql://[email protected]:8000/my_database_name',migrate_enabled=False, >>>>>>>> >>>>>>>> pool_size=20) >>>>>>>> >>>>>>>> It didn't work either. I guess someone needs to look at how to >>>>>>>> connect to legacy database. >>>>>>>> >>>>>>>> >>>>>>> where is the password ?! >>>>>>> >>>>>>> BTW: I think there's a bit of misunderstandings going on in this >>>>>>> thread. >>>>>>> There are two separate concept at play: schema (structure) AND data. >>>>>>> Every script/extract_***_models.py can "inspect" an existing >>>>>>> database and figure out (with limitations) the model you should write >>>>>>> to >>>>>>> access that database --> schema (or structure) translated to nifty >>>>>>> "db.define_table(....)" >>>>>>> >>>>>>> Exporting and importing a csv (compatible with what web2py >>>>>>> generates) instead - again, with limitations - is the way to transfer >>>>>>> data >>>>>>> around. >>>>>>> >>>>>>> If you have a long list of SQL statements in a file, those are NOT >>>>>>> going to work. >>>>>>> There's virtually nothing that reverse-engineers table definitions >>>>>>> such as "CREATE TABLE ....." to a model file, nor something that turns >>>>>>> "INSERT INTO TABLE..." to a db.table.insert(), although it can be fun >>>>>>> to >>>>>>> create one (with lots of headaches). >>>>>>> >>>>>>> -- >>>>>>> Resources: >>>>>>> - http://web2py.com >>>>>>> - http://web2py.com/book (Documentation) >>>>>>> - http://github.com/web2py/web2py (Source code) >>>>>>> - https://code.google.com/p/web2py/issues/list (Report Issues) >>>>>>> --- >>>>>>> You received this message because you are subscribed to the Google >>>>>>> Groups "web2py-users" group. >>>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>>> send an email to [email protected]. >>>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>>> >>>>>> >>>>>> -- >>>> Resources: >>>> - http://web2py.com >>>> - http://web2py.com/book (Documentation) >>>> - http://github.com/web2py/web2py (Source code) >>>> - https://code.google.com/p/web2py/issues/list (Report Issues) >>>> --- >>>> You received this message because you are subscribed to the Google >>>> Groups "web2py-users" group. >>>> To unsubscribe from this group and stop receiving emails from it, send >>>> an email to [email protected]. >>>> For more options, visit https://groups.google.com/d/optout. >>>> >>> >>> -- >> Resources: >> - http://web2py.com >> - http://web2py.com/book (Documentation) >> - http://github.com/web2py/web2py (Source code) >> - https://code.google.com/p/web2py/issues/list (Report Issues) >> --- >> You received this message because you are subscribed to the Google Groups >> "web2py-users" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected] <javascript:>. >> For more options, visit https://groups.google.com/d/optout. >> > > -- Resources: - http://web2py.com - http://web2py.com/book (Documentation) - http://github.com/web2py/web2py (Source code) - https://code.google.com/p/web2py/issues/list (Report Issues) --- You received this message because you are subscribed to the Google Groups "web2py-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.

