import arcpy from arcpy import env import sys import os arcpy.env.workspace = (r"c:\connectionFiles\conntop10sig.sde") try:     SQLStatement = "SELECT * FROM [TOP10_SIG].[dbo].[ABCBNIVL] WHERE [TOP10_SIG].[dbo].[ABCBNIVL].[TYPECBN] = 3 "     SQLStatementList = SQLStatement.split(";")     print "\n"     for sql in SQLStatementList:         print "Execute SQL Statement: " + sql         try:             sdeReturn = sdeConn.execute(sql)         except Exception, ErrorDesc:             print "ErrorDesc"             sdeReturn = False         if isinstance(sdeReturn, list):             print "Number of rows returned by query: " + len(sdeReturn), "rows"             for row in sdeReturn:                 print "row"                 print "\n"             else:                 if sdeReturn == True:                     print "SQL statement: " + sql + " ran sucessfully."                     print "\n"                 else:                     print "SQL statement: " + sql + " FAILED."                     print "\n" except Exception, ErrorDesc:     print "Exception, ErrorDesc" except:     print "Problem executing SQL.
					
				
			
			
				
			
			
				Solved! Go to Solution.
Try this:import arcpy from arcpy import * import sys arcpy.env.workspace = r"c:\connectionFiles\conntop10sig.sde" sql = "select * from TOP10_SIG.DBO.ABCBNIVL where TOP10_SIG.DBO.ABCBNIVL.TYPECBN = 3" sdeConn = arcpy.ArcSDESQLExecute(r"c:\connectionFiles\conntop10sig.sde") print "Execute SQL Statement: ", sql print "connecting to dba" sdeReturn = sdeConn.execute(sql) if isinstance(sdeReturn, list): print "Number of rows returned by query: ", len(sdeReturn), "rows" for row in sdeReturn: print row else: print "no selection made"
If you are still getting errors, you need to confirm that there is a numeric field named TYPECBN in the table named TOP10_SIG.DBO.ABCBNIVL in the sde connection r"c:\connectionFiles\conntop10sig.sde". Look in ArcCatalog and make sure that TOP10_SIG.DBO.ABCBNIVL is listed as the table name there. If so, and still getting errors, you might try dropping the DBO from it ( TOP10_SIG.ABCBNIVL ) as I have seen in the FlexApp environment where links to DBO tables didn't work with that in the path.
R_
>>> import arcpy
... from arcpy import *
... import sys
... arcpy.env.workspace = (r"c:\connectionFiles\conntop10sig.sde")
... try:
...     SQLStatement = ("select * from TOP10_SIG.DBO.ABCBNIVL where TOP10_SIG.DBO.ABCBNIVL.ALTDCRNV = 50") # ALTDCRNV = the elevation
...     sdeConn = arcpy.ArcSDESQLExecute(r"c:\connectionFiles\conntop10sig.sde")  # vital part you are missing....
...     print "Execute SQL Statement: ", SQLStatement
...     try:
...         # Pass the SQL statement to the database.
...         #
...         print "connecting to dba"
...         sdeReturn = sdeConn.execute(SQLStatement)
...         print "Number of rows returned by query: ", len(sdeReturn)
...     except Exception, ErrorDesc:
...         print "ErrorDesc",ErrorDesc   ## added this to actually print what the error is
...         sdeReturn = False
...     # If the return value is a list (a list of lists), display each list as a row from the
...     #   table being queried.
...     if isinstance(sdeReturn, list):
...         print "Number of rows returned by query: ", len(sdeReturn), "rows"
...         for row in sdeReturn:
...             print "row"
...         print "\n"
...     else:
...         # If the return value was not a list, the statement was most likely a DDL statment.
...         #   Check its status.
...         if sdeReturn == True:
...             print "SQL statement: ", SQLStatement , " ran sucessfully."
...             print "\n"
...         else:
...             print "SQL statement: ",SQLStatement ," FAILED."
...             print "\n"
... except:
...     print "Problem executing SQL."
... 
...     
... 
Execute SQL Statement:    select * from TOP10_SIG.DBO.ABCBNIVL where TOP10_SIG.DBO.ABCBNIVL.ALTDCRNV = 50
connecting to dba
Number of rows returned by query:    38
Number of rows returned by query:    38   rows
row
row
.
.
					
				
			
			
				
			
			
				
			
			
			
			
			
			
		