laptop and a wrench

Bug

An error occurs while using 'sde.next_rowid' to insert a row into a table using Python.

Zuletzt veröffentlicht: June 6, 2017 ArcSDE/Enterprise Geodatabase
Bug-ID-Nummer BUG-000094187
EingereichtFebruary 13, 2016
Zuletzt geändertJune 5, 2024
Gilt fürArcSDE/Enterprise Geodatabase
Gefunden in Version10.3
BetriebssystemWindows OS
Betriebssystemversion7.0 64 Bit
StatusNon-Reproducible

Zusätzliche Informationen

Next_RowID takes a table that is registered with the geodatabase as an input parameter and returns the next value for the ObjectID (RowID) field. You can use this value when you are inserting a row to the table using SQL. When executing through ArcGIS we pass the execution through the ODBC driver, and SQL Server will use sp_describe_first_result_set to return the metadata for the first possible result set of the Transact-SQL batch. Because of this behavior via the Microsoft ODBC client driver, you must include WITH RESULT SETS NONE into the execution of NEXT_ROWID. i.e. import arcpy sql="DECLARE @oid INT; DECLARE @owner nvarchar(128) = 'dbo'; DECLARE @table nvarchar(128) = 'TABTEST'; EXEC dbo.next_rowid @owner , @table, @oid OUTPUT WITH RESULT SETS NONE; INSERT INTO dbo.TABTEST(OBJECTID,NAME,C1) VALUES (@oid,'prvni',1);" con = arcpy.ArcSDESQLExecute(r'Database Connections\enterpriseGDB.sde') con.execute(sql)

Schritte zur Reproduzierung

Bug-ID: BUG-000094187

Software:

  • ArcSDE/Enterprise Geodatabase

Benachrichtigung erhalten, wenn sich der Status eines Bugs ändert

Esri Support App herunterladen

Weitere Informationen zu diesem Thema erkunden

Unterstützung durch ArcGIS-Experten anfordern

An den technischen Support wenden

Esri Support App herunterladen

Zu Download-Optionen wechseln