• A Network Switch Mapping Solution

SQLite Database Errors and other questions

The Managed Switch Port Mapping Tool uses the SQLite database to save settings and history. This page addresses some errors we have heard about. The USB version has more some specific errors.

Error: CPPSQLITE_ERROR[1000]: Invalid field name requested

This error is what you see (the program version may be different, but it is always in version 1.x):

Error Text: CPPSQLITE_ERROR[1000]: Invalid field name requested
Source: CLeftPaneControls:RetrieveSwitchConfig:LoadingSwitchSettings
Switch Port Mapper Version: 1.99.9.8

What happened: you used to have v1.x, then you upgraded to v2.x. The new v2.x makes changes to the spmap.db3 database that render it unusable by old v1.x.

If you want to stay with version 2.x: Go into C:\Program Files (x86)\NWPS\NetScanTools Pro and remove spmap.exe.

If you want to stay with old version 1.x: You will need to restore a preupgrade version of spmap.db3 from a backup or delete spmap.db3 and start over. The location of spmap.db3 is C:\Users\%username%\AppData\Roaming\NWPS\ManagedSwitchPortMapper\

Why are we using the SQLite Database?

Why are you using SQLite? Why can't this application interact with a different database like MySQL or Microsoft SQL Server instead of SQLite?

Answer: SQLite is very fast and tightly integrated into the software. SQLite is a standalone database without the overhead of client/server. It is not 'installed' in the same sense as the other database. It uses a DLL to interact with database files containing one or more SQL tables. By using SQLite, we are most likely providing a much faster set of results than we would with other server database packages. There may be a time later on when we allow connection to an external server databases for the purpose of sending history results or some other tables for quick review by other software. If you are interested in SQLite, please visit http://www.sqlite.org/ - the software is open source and you are probably using it every day: it is used in Firefox, iPhones, iPads, Android and many other products.