My agency recently migrated to the Microsoft Azure Cloud (sql server) and with it came a database name change. The name of the new database is "Migrate-Forestry". I've gone through and updated my sde connection file and made sure my python scripts are pointing to it correctly. However all of them are now failing when trying reach a table through the sde connection. It's the generic error "Table does not exist or is not supported." I've done a lot of research but cannot find a solid answer to why my scripts are failing. I think it's because my database name has a dash in it, but just wanted clarification on this. Any help would be appreciated.
It may have to do with the renaming of the geodatabase.
If you want to move a geodatabase to a new SQL Server instance, you can use SQL Server tools to move the entire database. Options to move a SQL Server database include detaching the database file from the SQL Server instance and attaching it to a new instance, creating a backup of the database and restoring it to a new SQL Server instance, or using the Copy Database wizard.
No matter which of the methods you use to move your SQL Server database, you cannot rename the database. When you restore a database, for example, you are given the opportunity to restore it with a different name. Don't do this with a geodatabase; you won't be able to connect to it.
All object names in the geodatabase system tables are fully qualified with the database name. In addition, many stored procedures use a three-part naming syntax in their code, which follows the format <database>.<owner>.<object>. If the database name changes, you will not be able to execute these procedures
Can you connect to the DB outside of Python via ArcGIS Pro in the same Azure region?
Also be sure to review these docs: https://enterprise.arcgis.com/en/server/latest/cloud/azure/functionality-geodatabase-azure-sql-datab...
Thank you for your reply. I apologize, I should have worded my question better. The enterprise database that I am trying to connect to is not a Geodatabase, but just a standard non spatial sql database. I have scripts that pull data from it and update feature classes and feature services elsewhere.
Yes I can connect to it in ArcGIS Pro. However, I cannot run Geoprocessing tools on any of the tables unless I first add them to my map first. I get the same message (table does not exist or is not supported).
Referring to what you said about the object naming convention in Geodatabases. When I make an sde connection to this database, it sees all of the tables with the database name in front of it. Example: Migrate-Forestry.dbo.gacounties. I'm thinking the dash/hyphen is the problem. If so, do you by chance know of a work around without renaming the database?
I appreciate the updated information. I am not aware if the "dash / hyphen" will cause any issues.
This may be best to work with technical support if no other users respond.