Pythonは初めてで、それが大好きです。これは単純なものかもしれないと思います。
私は現在、pymssqlを使用してPythonスクリプトを介してSQLServer2008にポイントを挿入しています。
var1 = "hi"
lat = "55.92"
lon = "-3.29"
cursor.execute("INSERT INTO table (field1, x, y) VALUES(%s, %s, %s)",
(var1 , lat, lon))
これはすべて正常に機能します。また、これらの座標をGEOGRAPHYタイプのフィールド(geogと呼ばれる)に挿入する必要があります。
geog_type = "geography::STGeomFromText('POINT(%s %s)',4326))" % (lat, lon)
cursor.execute("INSERT INTO table (field1, x, y, geog) VALUES(%s, %s, %s, %s)",
(var1 , lat, lon, geog_type))
これにより、次の例外がスローされます。
入力well-knowntext(WKT)のラベルgeography::STGeomFroが無効です。有効なラベルは、POINT、LINESTRING、POLYGON、MULTIPOINT、MULTILINESTRING、MULTIPOLYGON、GEOMETRYCOLLECTION、CIRCULARSTRING、COMPOUNDCURVE、CURVEPOLYGON、およびFULLGLOBE(地理データ型のみ)です。
SSMSから、テーブルに対して挿入ステートメントを実行して、ポイントを細かく挿入できます。
USE [nosde]
INSERT INTO tweets (geog)
VALUES(
geography::STGeomFromText(
'POINT(55.9271035250276 -3.29431266523898)',4326))
詳細が必要な場合は、コメントでお知らせください。
ペーストビンに関する私の仕事のいくつか。