laptop and a wrench

Bug

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

Last Published: June 6, 2017 ArcSDE/Enterprise Geodatabase
Bug ID Number BUG-000094187
SubmittedFebruary 13, 2016
Last ModifiedJune 5, 2024
Applies toArcSDE/Enterprise Geodatabase
Version found10.3
Operating SystemWindows OS
Operating System Version7.0 64 Bit
StatusNon-Reproducible

Additional Information

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)

Steps to Reproduce

Bug ID: BUG-000094187

Software:

  • ArcSDE/Enterprise Geodatabase

Get notified when the status of a bug changes

Download the Esri Support App

Discover more on this topic

Get help from ArcGIS experts

Contact technical support

Download the Esri Support App

Go to download options