laptop and a wrench

Bogue

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

Dernière publication: June 6, 2017 ArcSDE/Enterprise Geodatabase
Numéro d’ID de bogue BUG-000094187
EnvoiFebruary 13, 2016
Dernière modificationJune 5, 2024
S’applique àArcSDE/Enterprise Geodatabase
Version trouvée10.3
Système d’exploitationWindows OS
Version du système d’exploitation7.0 64 Bit
StatutNon-Reproducible

Informations supplémentaires

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)

Étapes pour reproduire

ID de bogue: BUG-000094187

Logiciel:

  • ArcSDE/Enterprise Geodatabase

Recevoir une notification lorsque le statut d’un bogue change

Télécharger l’application Esri Support

En savoir plus sur ce sujet

Obtenir de l’aide auprès des experts ArcGIS

Contacter le support technique

Télécharger l’application Esri Support

Accéder aux options de téléchargement