WeeWX Version 4 introduces a new, more flexible, way of specifying schemas. The old way is still supported. If I understand you correctly, you're trying to use the new way on an old copy of WeeWX.
Try upgrading WeeWX, then try again. -tk On Thu, May 21, 2020 at 9:26 PM Echo 7 Foxtrot < [email protected]> wrote: > I'm very new...been running my weewx 3.9.2 (rpi4) install for about a > month, using the standard wview.schema. I've been working on adding some > sensors and wanting to extend the schema, then I saw the wview_extended > schema rolling out with 4.0. It's got everything I wanted to add in the > near future, and if I'm going to add I thought it'd be best to stick to the > naming conventions chosen for 4.0. I placed a copy of wview_extended.py > from 4.0 in /weewx/schemas and changed the schema in weewx.conf to > schemas.wview_extended.schema as mentioned in this thread. This is what I > get: > > pi@raspberrypi:~ $ sudo wee_database /etc/weewx/weewx.conf --reconfigure > Using configuration file /etc/weewx/weewx.conf > Using database binding 'wx_binding', which is bound to database > 'archive_sqlite' > New database 'weewx.sdb_new' already exists. Delete it first (y/n)? y > Copying database 'weewx.sdb' to 'weewx.sdb_new' > The new database will use the same unit system as the old ('US'). > Are you sure you wish to proceed (y/n)? y > Traceback (most recent call last): > File "/usr/bin/wee_database", line 794, in <module> > main() > File "/usr/bin/wee_database", line 156, in main > reconfigMainDatabase(config_dict, db_binding) > File "/usr/bin/wee_database", line 336, in reconfigMainDatabase > new_schema=manager_dict['schema']) > File "/usr/share/weewx/weewx/manager.py", line 817, in reconfig > with Manager.open_with_create(new_db_dict, schema=new_schema) as > new_archive: > File "/usr/share/weewx/weewx/manager.py", line 141, in open_with_create > dbmanager = cls(connection, table_name=table_name, schema=schema) > File "/usr/share/weewx/weewx/manager.py", line 82, in __init__ > self._initialize_database(schema) > File "/usr/share/weewx/weewx/manager.py", line 175, in > _initialize_database > _sqltypestr = ', '.join(["`%s` %s" % _type for _type in schema]) > TypeError: not enough arguments for format string > > The _new .sdb file is created but it is empty (I did it again to capture > for this post, that's why it was already there). I went to the syslog to > capture anything there for this post as well, but there were no entries > from attempting this. This first time I tried it I stopped weewx first but > left it running when I ran wee_database the 2nd time...result was the same. > > Not sure what to do from here...I know just enough about python to have a > general idea of what the problem is but no idea how to digest this and > apply corrective action. Thanks in advance for any help. > > -Michael F. > > > On Saturday, May 9, 2020 at 6:57:09 AM UTC-5, Tom Keffer wrote: >> >> Updating to WeeWX V4 and changing your schema are two different things. >> They have nothing to do with each other. Version 4 offers a new schema, but >> it is used only for new databases. >> >> If for some reason you wish to change schemas and use the new schema, you >> can do so using either WeeWX V3 or V4. Follow the directions in the section >> *Adding >> a new type to the database >> <http://www.weewx.com/docs/customizing.htm#archive_database>* in the >> Customizing Guide, except skip step #1, and in step #2 change this >> >> [DataBindings] >> [[wx_binding]] >> database = archive_sqlite >> table_name = archive >> manager = weewx.wxmanager.DaySummaryManager >> schema = user.electricity.electricity_schema >> >> to this >> >> [DataBindings] >> [[wx_binding]] >> database = archive_sqlite >> table_name = archive >> manager = weewx.wxmanager.DaySummaryManager >> schema = schemas.wview_extended.schema >> >> -tk >> >> >> On Sat, May 9, 2020 at 4:41 AM Andrea <[email protected]> wrote: >> >>> Hi all, >>> To install new weewx 4.0 with the new DB schema, I need to modify my old >>> DB schema with my old data? I've sqllite db. >>> >>> Thanks >>> Andrea >>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "weewx-user" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> To view this discussion on the web visit >>> https://groups.google.com/d/msgid/weewx-user/1dd6b51f-9e7a-40dd-b054-9eaa25520aea%40googlegroups.com >>> <https://groups.google.com/d/msgid/weewx-user/1dd6b51f-9e7a-40dd-b054-9eaa25520aea%40googlegroups.com?utm_medium=email&utm_source=footer> >>> . >>> >> -- > You received this message because you are subscribed to the Google Groups > "weewx-user" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/weewx-user/a46a8292-4354-4a95-a2f7-8882fab7589a%40googlegroups.com > <https://groups.google.com/d/msgid/weewx-user/a46a8292-4354-4a95-a2f7-8882fab7589a%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- You received this message because you are subscribed to the Google Groups "weewx-user" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/CAPq0zECtPxp5QDwpeS_YX4UkT_wkS4d1zhy1cFUo02vOvGjGPw%40mail.gmail.com.
