[osgeo4w-dev] [osgeo4w] #305: python/sqlite: "sqlite3-rtree-geometry-callback" not found in "C:\OSGeo4W\apps\Python27\DLLs\sqlite3.dll"
OSGeo4W
trac_osgeo4w at osgeo.org
Thu Nov 8 11:11:22 PST 2012
#305: python/sqlite: "sqlite3-rtree-geometry-callback" not found in
"C:\OSGeo4W\apps\Python27\DLLs\sqlite3.dll"
--------------------+-------------------------------------------------------
Reporter: hellik | Owner: maphew
Type: defect | Status: new
Priority: blocker | Component: Package
Version: 1.0 | Keywords: python, python-core, sqlite
--------------------+-------------------------------------------------------
Comment(by hellik):
Replying to [comment:40 jef]:
> Replying to [comment:39 martinl]:
> > so could be SQLite DLL library removed from the python package? It
would be really nice to get rid of the problem...
>
> done. The testing area is updated, please test ({{{osgeo4w-setup -t}}}
or {{{setup-test.bat}}})
complete fresh test-install by setup-test.bat in a new folder
C:\OSGeo4Wtest, only wingrass7svn and dependencies installed.
some testing (always in the ''OSGeo for Windows command shell'' and the
''Minimal SYStem''):
testsqlite.py
{{{
import sys
import sqlite3
print sys.executable
b = sqlite3.version
print b
c = sqlite3.sqlite_version
print c
}}}
{{{
myricaria at MYRICARIA-HP /c/tmp/test
$ python testsqlite.py
C:\OSGeo4Wtest\bin\python.exe
2.6.0
3.7.10
}}}
test-shapefile
{{{
$ ogrinfo -al test.shp
INFO: Open of `test.shp'
using driver `ESRI Shapefile' successful.
Layer name: test
Geometry: Point
Feature Count: 3
Extent: (11.360236, 47.562036) - (12.456152, 47.884962)
Layer SRS WKT:
GEOGCS["GCS_WGS_1984",
DATUM["WGS_1984",
SPHEROID["WGS_84",6378137.0,298.257223563]],
PRIMEM["Greenwich",0.0],
UNIT["Degree",0.0174532925199433]]
Id: Integer (6.0)
pname: String (3.0)
OGRFeature(test):0
Id (Integer) = 0
pname (String) = a
POINT (11.360236291910875 47.884962359602177)
OGRFeature(test):1
Id (Integer) = 0
pname (String) = b
POINT (12.456151953403253 47.882419631849288)
OGRFeature(test):2
Id (Integer) = 0
pname (String) = c
POINT (11.812841831923969 47.562035934986092)
}}}
ogr2ogr test-shapefile to a sqlite-db
{{{
myricaria at MYRICARIA-HP /c/tmp/test
$ ogr2ogr -f "SQLite" shape2sqlite.db test.shp
}}}
{{{
myricaria at MYRICARIA-HP /c/tmp/test
$ ogrinfo -al shape2sqlite.db
INFO: Open of `shape2sqlite.db'
using driver `SQLite' successful.
Layer name: test
Geometry: Point
Feature Count: 3
Extent: (11.360236, 47.562036) - (12.456152, 47.884962)
Layer SRS WKT:
GEOGCS["WGS 84",
DATUM["WGS_1984",
SPHEROID["WGS 84",6378137,298.257223563,
AUTHORITY["EPSG","7030"]],
AUTHORITY["EPSG","6326"]],
PRIMEM["Greenwich",0,
AUTHORITY["EPSG","8901"]],
UNIT["degree",0.0174532925199433,
AUTHORITY["EPSG","9122"]],
AUTHORITY["EPSG","4326"]]
FID Column = OGC_FID
Geometry Column = GEOMETRY
id: Integer (0.0)
pname: String (0.0)
OGRFeature(test):1
id (Integer) = 0
pname (String) = a
POINT (11.360236291910875 47.884962359602177)
OGRFeature(test):2
id (Integer) = 0
pname (String) = b
POINT (12.456151953403253 47.882419631849288)
OGRFeature(test):3
id (Integer) = 0
pname (String) = c
POINT (11.812841831923969 47.562035934986092)
}}}
connect2db.py
{{{
import sqlite3
conn = sqlite3.connect('shape2sqlite.db')
c = conn.cursor()
# Create table
c.execute('''CREATE TABLE stocks
(date text, trans text, symbol text, qty real, price
real)''')
# Insert a row of data
c.execute("INSERT INTO stocks VALUES
('2006-01-05','BUY','RHAT',100,35.14)")
# Save (commit) the changes
conn.commit()
# We can also close the connection if we are done with it.
# Just be sure any changes have been committed or they will be lost.
conn.close()
}}}
sometest.py
{{{
import sqlite3
conn = sqlite3.connect('shape2sqlite.db')
c = conn.cursor()
# Do this
t = ('RHAT',)
c.execute('SELECT * FROM stocks WHERE symbol=?', t)
print c.fetchone()
# Larger example that inserts many records at a time
purchases = [('2006-03-28', 'BUY', 'IBM', 1000, 45.00),
('2006-04-05', 'BUY', 'MSFT', 1000, 72.00),
('2006-04-06', 'SELL', 'IBM', 500, 53.00),
]
c.executemany('INSERT INTO stocks VALUES (?,?,?,?,?)', purchases)
for row in c.execute('SELECT * FROM stocks ORDER BY price'):
print row
}}}
{{{
myricaria at MYRICARIA-HP /c/tmp/test
$ python sometest.py
(u'2006-01-05', u'BUY', u'RHAT', 100.0, 35.14)
(u'2006-01-05', u'BUY', u'RHAT', 100.0, 35.14)
(u'2006-03-28', u'BUY', u'IBM', 1000.0, 45.0)
(u'2006-04-06', u'SELL', u'IBM', 500.0, 53.0)
(u'2006-04-05', u'BUY', u'MSFT', 1000.0, 72.0)
}}}
osgeo4w-wingrass7svn starts without any problem
Helmut
--
Ticket URL: <http://trac.osgeo.org/osgeo4w/ticket/305#comment:41>
OSGeo4W <http://trac.osgeo.org/osgeo4w>
OSGeo4W is the Windows installer and package environment for the OSGeo stack.
More information about the osgeo4w-dev
mailing list