Issues with 64 BIT Arcpy Scripts

923
5
06-08-2020 05:27 PM
RamakrishnaBillakanti
New Contributor III

Unable to use the 64 Bit Arcpy modules to list table or print records or do anything on a non sde geodatabase where as the same code works absolutely fine with 32 Bit arcpy modules. 

Doing this simple process and I'm stumbled to understand why this is not working in 64 Bit

import arcpy

# Set the current workspace
table = 'D:\\abc\\xyz.sde\\user.table'

if arcpy.Exists(table):
print "Exits"

Got all the TNS Entries configured tried different versions using single slashes, double slashes etc but no luck in 64 Bit. 

Using ArcGIS 10.6.1 with ArcGIS Oracle 18 C Patch. 

Tags (2)
0 Kudos
5 Replies
MichaelVolz
Esteemed Contributor

What kind of error messages are you getting?  Have you tried using try except and capturing the Exception if the default error message does not provide meaningful information about the problem?

0 Kudos
RamakrishnaBillakanti
New Contributor III

Thanks Michael. The program doesn't throw any error. It just exists out of the loop and doesn't print print statement. 

0 Kudos
MarcoBoeringa
MVP Regular Contributor

Although you do not mention it explicitly, I assume you have ArcGIS for Desktop's "64 bit Background Geoprocessing" installed? Otherwise, of course, everything will run in 32 bit by default.

If so, and accessing Oracle through ODBC, you likely also need an Oracle 64 bit ODBC driver, something like this may need to be installed:

https://www.oracle.com/database/technologies/odac-downloads.html

0 Kudos
RamakrishnaBillakanti
New Contributor III

Yes, These dependancies are taken care, Got the Background Utility and Oracle Drivers configured for 64 BIT also made sure I've the TNS Entries. 

0 Kudos
AndrewFleming1
New Contributor

I am having the exact same problem @RamakrishnaBillakanti , running 64 bit background GP with ArcGIS 10.6.1 with ArcGIS Oracle 18 C Patch. I getting errors in arcpy.Exists() when if I'm trying to connect to an SDE feature class while programmatically kicking off script from FME. Works fine if I use manually.

Did you ever figure this out? Any help would be massively appreciated!

0 Kudos