<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Do I want to set the database connection as an environment in order to loop through feature classes? in Python Questions</title>
    <link>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613696#M47879</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I got this to run in ModelBuilder with iteration, but unfortunately, the export to python isn't much help in figuring out the python syntax for the workspace environment.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;IMG alt="" class="image-1 jive-image" src="https://www.dropbox.com/s/9cw3lax3ne736o6/Export%20Graphic.png?dl=0" style="max-width: 620px; height: auto;" /&gt;&lt;IMG alt="" class="image-2 jive-image j-img-original" src="/legacyfs/online/391028_Export Graphic.png" style="width: 620px; height: 207px;" /&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 15 Dec 2017 19:48:30 GMT</pubDate>
    <dc:creator>PaulHuffman</dc:creator>
    <dc:date>2017-12-15T19:48:30Z</dc:date>
    <item>
      <title>Do I want to set the database connection as an environment in order to loop through feature classes?</title>
      <link>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613695#M47878</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;After mass loading a bunch of feature classes into a enterprise geodatabases (10.3.1, MSSQL),&amp;nbsp; I need to add privileges for a role to many of them.&amp;nbsp; I tested ChangePrivileges&amp;nbsp; with a single feature class,&amp;nbsp; it worked,&amp;nbsp; so now I thought I would extend this by getting a list of feature classes, then using a For loop on the list to grant the privileges.&amp;nbsp; But it didn't wok to set up the correct database connection as a env.workspace.&amp;nbsp; What's the correct way to loop through a enterprise geodatabase to add permissions?&amp;nbsp; Or do I want to do this in a totally different way?&amp;nbsp; The following script gives a TypeError: 'NoneType' object is not iterable&amp;nbsp; on debugging line 17, indicating I didn't get anything into the list.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;&lt;SPAN class="comment token"&gt;# ModPriv2lp.py&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# Testing how to modify enterprise geodatabase privileges with python&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# Paul Huffman, 2017-12-14&lt;/SPAN&gt;

&lt;SPAN class="keyword token"&gt;import&lt;/SPAN&gt; arcpy
&lt;SPAN class="keyword token"&gt;from&lt;/SPAN&gt; arcpy &lt;SPAN class="keyword token"&gt;import&lt;/SPAN&gt; env
env&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;workspace &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"Database Connections/Streams as GisOwner.sde"&lt;/SPAN&gt;

&lt;SPAN class="comment token"&gt;#get list of feature classes in geodatabase.&lt;/SPAN&gt;
fclist &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;
fclist &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;ListFeatureClasses &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;"Database Connections/Streams as GisOwner.sde"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;

&lt;SPAN class="comment token"&gt;#datasetName = "Database Connections/Streams as GisOwner.sde/Streams.GISOWNER.str37_route_rivers"&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#datasetName = "Streams.GISOWNER.str37_route_rivers"&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#arcpy.ChangePrivileges_management(datasetName, "GISUsers", "GRANT", "AS_IS")&lt;/SPAN&gt;

&lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; fc &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; fclist&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;print&lt;/SPAN&gt; fc
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="comment token"&gt;#arcpy.ChangePrivileges_management(fc, "GISUsers", "GRANT", "AS_IS")‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍&lt;/SPAN&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 02:14:49 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613695#M47878</guid>
      <dc:creator>PaulHuffman</dc:creator>
      <dc:date>2021-12-12T02:14:49Z</dc:date>
    </item>
    <item>
      <title>Re: Do I want to set the database connection as an environment in order to loop through feature classes?</title>
      <link>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613696#M47879</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I got this to run in ModelBuilder with iteration, but unfortunately, the export to python isn't much help in figuring out the python syntax for the workspace environment.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;IMG alt="" class="image-1 jive-image" src="https://www.dropbox.com/s/9cw3lax3ne736o6/Export%20Graphic.png?dl=0" style="max-width: 620px; height: auto;" /&gt;&lt;IMG alt="" class="image-2 jive-image j-img-original" src="/legacyfs/online/391028_Export Graphic.png" style="width: 620px; height: 207px;" /&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 15 Dec 2017 19:48:30 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613696#M47879</guid>
      <dc:creator>PaulHuffman</dc:creator>
      <dc:date>2017-12-15T19:48:30Z</dc:date>
    </item>
    <item>
      <title>Re: Do I want to set the database connection as an environment in order to loop through feature classes?</title>
      <link>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613697#M47880</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Paul,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Once you set your environment workspace, the List functions (i.e. ListFeatureClasses, ListDatasets, etc) will automatically use that workspace.&amp;nbsp; You're trying to set the workspace in the ListFeatureClasses function for the wild card parameter. Try the following:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;&lt;SPAN class="keyword token"&gt;import&lt;/SPAN&gt; arcpy
&lt;SPAN class="keyword token"&gt;from&lt;/SPAN&gt; arcpy &lt;SPAN class="keyword token"&gt;import&lt;/SPAN&gt; env
env&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;workspace &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"Database Connections/Streams as GisOwner.sde"&lt;/SPAN&gt;

&lt;SPAN class="comment token"&gt;#get list of feature classes in geodatabase.&lt;/SPAN&gt;
fclist &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;
fclist &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;ListFeatureClasses &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 02:14:51 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613697#M47880</guid>
      <dc:creator>JakeSkinner</dc:creator>
      <dc:date>2021-12-12T02:14:51Z</dc:date>
    </item>
    <item>
      <title>Re: Do I want to set the database connection as an environment in order to loop through feature classes?</title>
      <link>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613698#M47881</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks Jake.&amp;nbsp; But I have tried that syntax as well.&amp;nbsp; Still getting the error "&amp;nbsp;for fc in fclist:&lt;BR /&gt;TypeError: 'NoneType' object is not iterable"&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;&lt;SPAN class="comment token"&gt;# -*- coding: utf-8 -*-&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# ModPriv2lp.py&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# Testing how to modify enterprise geodatabase privileges with python&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# Paul Huffman, 2017-12-14&lt;/SPAN&gt;

&lt;SPAN class="comment token"&gt;# Set the necessary product code&lt;/SPAN&gt;
&lt;SPAN class="keyword token"&gt;import&lt;/SPAN&gt; arceditor

&lt;SPAN class="keyword token"&gt;import&lt;/SPAN&gt; arcpy
&lt;SPAN class="keyword token"&gt;from&lt;/SPAN&gt; arcpy &lt;SPAN class="keyword token"&gt;import&lt;/SPAN&gt; env
env&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;workspace &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"Database Connections/Streams as GisOwner.sde"&lt;/SPAN&gt;

&lt;SPAN class="comment token"&gt;#get list of feature classes in geodatabase.&lt;/SPAN&gt;
fclist &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#fclist = arcpy.ListFeatureClasses ("Database Connections/Streams as GisOwner.sde")&lt;/SPAN&gt;
fclist &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;ListFeatureClasses &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;

&lt;SPAN class="comment token"&gt;#The folling line worked by setting connection + feature class in a string for ChangePrivileges&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#datasetName = "Database Connections/Streams as GisOwner.sde/Streams.GISOWNER.str37_route_rivers"&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#datasetName = "Streams.GISOWNER.str37_route_rivers"&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#arcpy.ChangePrivileges_management(datasetName, "GISUsers", "GRANT", "AS_IS")&lt;/SPAN&gt;

&lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; fc &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; fclist&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;print&lt;/SPAN&gt; fc
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="comment token"&gt;#arcpy.ChangePrivileges_management(fc, "GISUsers", "GRANT", "AS_IS")&lt;/SPAN&gt;
&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 02:14:54 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613698#M47881</guid>
      <dc:creator>PaulHuffman</dc:creator>
      <dc:date>2021-12-12T02:14:54Z</dc:date>
    </item>
    <item>
      <title>Re: Do I want to set the database connection as an environment in order to loop through feature classes?</title>
      <link>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613699#M47882</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Check the &lt;STRONG&gt;Streams as GisOwner.sde&lt;/STRONG&gt; connection is connected as the correct user.&amp;nbsp; You can do this by right-clicking on the database connection &amp;gt; Connection Properties.&amp;nbsp; It could be the user does not have privileges to any of the feature classes.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 15 Dec 2017 21:09:36 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613699#M47882</guid>
      <dc:creator>JakeSkinner</dc:creator>
      <dc:date>2017-12-15T21:09:36Z</dc:date>
    </item>
    <item>
      <title>Re: Do I want to set the database connection as an environment in order to loop through feature classes?</title>
      <link>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613700#M47883</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I am not sure what the best way is, but I would say the most Pythonic way is using &lt;A class="link-titled" href="http://desktop.arcgis.com/en/arcmap/latest/analyze/arcpy-data-access/walk.htm" title="http://desktop.arcgis.com/en/arcmap/latest/analyze/arcpy-data-access/walk.htm"&gt;Walk—Help | ArcGIS Desktop&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 15 Dec 2017 21:12:36 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613700#M47883</guid>
      <dc:creator>JoshuaBixby</dc:creator>
      <dc:date>2017-12-15T21:12:36Z</dc:date>
    </item>
    <item>
      <title>Re: Do I want to set the database connection as an environment in order to loop through feature classes?</title>
      <link>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613701#M47884</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks Jake,&amp;nbsp; but it worked when I ran a script like this on just one feature class.&amp;nbsp; There must be a typo somewhere.&amp;nbsp; &lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;&lt;SPAN class="comment token"&gt;# ModPriv.py&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# Testing how to modify enterprise geodatabase privileges with python&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#Paul Huffman, 2017-12-14&lt;/SPAN&gt;

&lt;SPAN class="keyword token"&gt;import&lt;/SPAN&gt; arcpy

datasetName &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"Database Connections/Streams as GisOwner.sde/Streams.GISOWNER.str37_route_rivers"&lt;/SPAN&gt;
arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;ChangePrivileges_management&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;datasetName&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"GISUsers"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"GRANT"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"AS_IS"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 02:14:56 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613701#M47884</guid>
      <dc:creator>PaulHuffman</dc:creator>
      <dc:date>2021-12-12T02:14:56Z</dc:date>
    </item>
    <item>
      <title>Re: Do I want to set the database connection as an environment in order to loop through feature classes?</title>
      <link>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613702#M47885</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Well, now the short test version that changed just one feature class doesn't run.&amp;nbsp; I keep getting "ExecuteError: ERROR 000229: Cannot open Database Connections/Streams as GisOwner.sde/Streams.GISOWNER.str37_route_rivers&lt;BR /&gt;Failed to execute (ChangePrivileges).&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;The Model with iteration version continues to update the privileges through the database connection.&amp;nbsp; Export to python shows that the syntax is :&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;&lt;SPAN class="comment token"&gt;# Process: Change Privileges&lt;/SPAN&gt;
arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;ChangePrivileges_management&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;"'Database Connections\\Streams as GisOwner.sde\\Streams.GISOWNER.str39_route_rivers'"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"GISUsers"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"GRANT"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"AS_IS"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;I noticed that ModelBuilder used both double and single quotes around the connection string, but this didn't work for me in python when I tried it.&amp;nbsp; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 02:14:59 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613702#M47885</guid>
      <dc:creator>PaulHuffman</dc:creator>
      <dc:date>2021-12-12T02:14:59Z</dc:date>
    </item>
    <item>
      <title>Re: Do I want to set the database connection as an environment in order to loop through feature classes?</title>
      <link>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613703#M47886</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hey,&amp;nbsp; I've used Walk before.&amp;nbsp; I'll give it a try in this situation.&amp;nbsp; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 15 Dec 2017 22:30:23 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613703#M47886</guid>
      <dc:creator>PaulHuffman</dc:creator>
      <dc:date>2017-12-15T22:30:23Z</dc:date>
    </item>
    <item>
      <title>Re: Do I want to set the database connection as an environment in order to loop through feature classes?</title>
      <link>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613704#M47887</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Here's an idea.&amp;nbsp; I just tried the three line version of the script from IDLE,&amp;nbsp; and still get "ERROR 000229: Cannot open Database Connections/Streams as GisOwner.sde/Streams.GISOWNER.str37_route_rivers."&amp;nbsp; Yet I can copy those three lines into&amp;nbsp; ArcCatalog's python window and it successfully ran.&amp;nbsp; And the model with iterator version runs successfully.&amp;nbsp; Do you suppose that setting datasetName = "'Database Connections/Streams as GisOwner.sde/Streams.GISOWNER.str37_route_rivers'"&amp;nbsp;&amp;nbsp; in IDLE isn't working because that connection string doesn't mean anything to the OS,&amp;nbsp; the OS can't find that connection,&amp;nbsp; while running it in ArcCatalog can find the correct relative path and connection?&amp;nbsp; &lt;A class="link-titled" href="https://www.dropbox.com/s/mvfuheeslks2jpj/Screenshot%202017-12-18%2015.21.59.png?dl=0" title="https://www.dropbox.com/s/mvfuheeslks2jpj/Screenshot%202017-12-18%2015.21.59.png?dl=0"&gt;Dropbox - Screenshot 2017-12-18 15.21.59.png&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 18 Dec 2017 23:36:41 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613704#M47887</guid>
      <dc:creator>PaulHuffman</dc:creator>
      <dc:date>2017-12-18T23:36:41Z</dc:date>
    </item>
    <item>
      <title>Re: Do I want to set the database connection as an environment in order to loop through feature classes?</title>
      <link>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613705#M47888</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I tried it with walk.&amp;nbsp; Almost the same thing,&amp;nbsp; although the walk version ran without errors from IDLE,&amp;nbsp; the feature class list was empty, and permissions were not updated.&amp;nbsp; If I copy and paste the python lines into ArcCatalog Python window,&amp;nbsp; the lines run to completion, the print filename line shows the current feature class getting processed,&amp;nbsp; and the privileges get added.&amp;nbsp; It's as if the Database connection is a property that only ArcCatalog knows about.&amp;nbsp; Arcpy and os don't know about the database connections.&amp;nbsp; &lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;&lt;SPAN class="comment token"&gt;# -*- coding: utf-8 -*-&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# ModPrivlpwalk.py&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# Testing how to modify enterprise geodatabase privileges with python&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#&amp;nbsp; this time with python Walk rather than ListFeatureClass&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# Paul Huffman, 2017-12-18&lt;/SPAN&gt;

&lt;SPAN class="comment token"&gt;# Set the necessary product code&lt;/SPAN&gt;
&lt;SPAN class="keyword token"&gt;import&lt;/SPAN&gt; arceditor
&lt;SPAN class="keyword token"&gt;import&lt;/SPAN&gt; os

&lt;SPAN class="keyword token"&gt;import&lt;/SPAN&gt; arcpy
&lt;SPAN class="keyword token"&gt;from&lt;/SPAN&gt; arcpy &lt;SPAN class="keyword token"&gt;import&lt;/SPAN&gt; env
env&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;workspace &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"Database Connections/Streams as GisOwner.sde"&lt;/SPAN&gt;
ws &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"Database Connections/Streams as GisOwner.sde"&lt;/SPAN&gt;

&lt;SPAN class="comment token"&gt;#get list of feature classes in geodatabase.&lt;/SPAN&gt;
fclist &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;
walk &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;da&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;Walk&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;ws&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; datatype&lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;"FeatureClass"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#fclist = arcpy.ListFeatureClasses ("Database Connections/Streams as GisOwner.sde")&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#fclist = arcpy.ListFeatureClasses ()&lt;/SPAN&gt;

&lt;SPAN class="comment token"&gt;#The folling line worked by setting connection + feature class in a string for ChangePrivileges&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#datasetName = "Database Connections/Streams as GisOwner.sde/Streams.GISOWNER.str37_route_rivers"&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#datasetName = "Streams.GISOWNER.str37_route_rivers"&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#arcpy.ChangePrivileges_management(datasetName, "GISUsers", "GRANT", "AS_IS")&lt;/SPAN&gt;

&lt;SPAN class="comment token"&gt;#for fc in fclist:&lt;/SPAN&gt;
&lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; dirpath&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; dirnames&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; filenames &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; walk&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; filename &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; filenames&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;print&lt;/SPAN&gt; filename
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;ChangePrivileges_management&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;filename&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"GISUsers"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"GRANT"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"AS_IS"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 02:15:02 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613705#M47888</guid>
      <dc:creator>PaulHuffman</dc:creator>
      <dc:date>2021-12-12T02:15:02Z</dc:date>
    </item>
    <item>
      <title>Re: Do I want to set the database connection as an environment in order to loop through feature classes?</title>
      <link>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613706#M47889</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I asked ESRI,&amp;nbsp; and Rex found the correct syntax for adding a enterprise geodatabase connection as a env.workspace.&amp;nbsp; to get this to run outside of ArcGIS Desktop, you need to read in the connection file. But you must also ensure that the connection is made with&amp;nbsp;the "Save username / password" option checked in the connection properties. Otherwise, the connection will try to promprt you for the username/password, and fail in a script.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;To find the connection file path,&amp;nbsp; " in ArcCatalog- right click the connection file &amp;lt; Properties &amp;lt; Copy the file path). "&amp;nbsp; In my case this was C:\Users\huffm\AppData\Roaming\Esri\Desktop10.3\ArcCatalog\Streams as GisOwner.sde.&amp;nbsp; Knowing this will open up all kinds of SDE geodatabase management and processing for me.&amp;nbsp; Couldn't find this anywhere in Help.&amp;nbsp; Also note, env.Workspace doesn't work,&amp;nbsp; it needs to be env.workspace.&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In this script,&amp;nbsp; you can see several ways I tried to get the syntax correct that in the commented out in lines 12 - 14,&amp;nbsp; then the last env.workspace in line 15 is the correct way, going to the connection file.&amp;nbsp; This script successfully populates the fclist, and prints list elements out to the Python Shell.&amp;nbsp; Remove the comment on line 29 and it will grant privileges to everything in the geodatabase connection. &amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;&lt;SPAN class="comment token"&gt;# -*- coding: utf-8 -*-&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# ModPriv2lp.py&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# Testing how to modify enterprise geodatabase privileges with python&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# Paul Huffman, 2017-12-14&lt;/SPAN&gt;

&lt;SPAN class="comment token"&gt;# Set the necessary product code&lt;/SPAN&gt;
&lt;SPAN class="keyword token"&gt;import&lt;/SPAN&gt; arceditor
&lt;SPAN class="keyword token"&gt;import&lt;/SPAN&gt; os

&lt;SPAN class="keyword token"&gt;import&lt;/SPAN&gt; arcpy
&lt;SPAN class="keyword token"&gt;from&lt;/SPAN&gt; arcpy &lt;SPAN class="keyword token"&gt;import&lt;/SPAN&gt; env
&lt;SPAN class="comment token"&gt;#env.workspace = "Database Connections/Streams as GisOwner.sde"&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#env.workspace = "Database Connections\\Streams as GisOwner.sde"&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#env.workspace = r"Database Connections\Streams as GisOwner.sde"&lt;/SPAN&gt;
env&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;workspace &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; r&lt;SPAN class="string token"&gt;"C:\Users\huffm\AppData\Roaming\Esri\Desktop10.3\ArcCatalog\Streams as GisOwner.sde"&lt;/SPAN&gt;

&lt;SPAN class="comment token"&gt;#get list of feature classes in geodatabase.&lt;/SPAN&gt;
fclist &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#fclist = arcpy.ListFeatureClasses ("Database Connections/Streams as GisOwner.sde")&lt;/SPAN&gt;
fclist &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;ListFeatureClasses &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;

&lt;SPAN class="comment token"&gt;#The folling line worked by setting connection + feature class in a string for ChangePrivileges&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#datasetName = "Database Connections/Streams as GisOwner.sde/Streams.GISOWNER.str37_route_rivers"&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#datasetName = "Streams.GISOWNER.str37_route_rivers"&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#arcpy.ChangePrivileges_management(datasetName, "GISUsers", "GRANT", "AS_IS")&lt;/SPAN&gt;

&lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; fc &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; fclist&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;print&lt;/SPAN&gt; fc
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="comment token"&gt;#arcpy.ChangePrivileges_management(fc, "GISUsers", "GRANT", "AS_IS")&lt;/SPAN&gt;
‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 02:15:04 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613706#M47889</guid>
      <dc:creator>PaulHuffman</dc:creator>
      <dc:date>2021-12-12T02:15:04Z</dc:date>
    </item>
    <item>
      <title>Re: Do I want to set the database connection as an environment in order to loop through feature classes?</title>
      <link>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613707#M47890</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I was just running this script at another office, and extending it to include other data besides feature classes,&amp;nbsp; and it was running like a champ.&amp;nbsp; Today I noticed it was running without reading my connection file, but just getting the connection from ArcCatalog.&amp;nbsp; I think the difference is that I was finding the python file with File Explorer, right clicking on it,&amp;nbsp; I get choices that include Edit with IDLE, Edit with IDLE (ArcGIS Pro),&amp;nbsp; Run with ArcGIS Pro.&amp;nbsp; If I select "Edit with IDLE", I think it gets opened in an ArcDesktop type environment, because it doesn't have any problem finding and importing arcpy, and the env.workspace can be set with the same string that ArcCatalog knows for my data owner connection. The slash in the Database Connections string can be either way /&amp;nbsp; or \ .&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;&lt;SPAN class="comment token"&gt;# -*- coding: utf-8 -*-&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# ModPriv2lp.py&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# Testing how to modify enterprise geodatabase privileges with python&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;# Paul Huffman, 2017-12-14&lt;/SPAN&gt;

&lt;SPAN class="comment token"&gt;# Set the necessary product code&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#import arceditor&lt;/SPAN&gt;
&lt;SPAN class="keyword token"&gt;import&lt;/SPAN&gt; os

&lt;SPAN class="keyword token"&gt;import&lt;/SPAN&gt; arcpy
&lt;SPAN class="keyword token"&gt;from&lt;/SPAN&gt; arcpy &lt;SPAN class="keyword token"&gt;import&lt;/SPAN&gt; env
&lt;SPAN class="comment token"&gt;#env.workspace = "Database Connections/Streams as GisOwner.sde"&lt;/SPAN&gt;
env&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;workspace &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"Database Connections/Other_Vector as GIS.sde"&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#env.workspace = "Database Connections\\Streams as GisOwner.sde"#env.workspace = r"Database Connections\Streams as GisOwner.sde"&lt;/SPAN&gt;

&lt;SPAN class="comment token"&gt;#get list of feature classes in geodatabase.&lt;/SPAN&gt;
fclist &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#fclist = arcpy.ListFeatureClasses ("Database Connections/Streams as GisOwner.sde")&lt;/SPAN&gt;
fclist &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;ListFeatureClasses &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
dslist &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;ListDatasets &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
tblist &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;ListTables &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
rslist &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;ListRasters &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#The folling line worked by setting connection + feature class in a string for ChangePrivileges&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#datasetName = "Database Connections/Streams as GisOwner.sde/Streams.GISOWNER.str37_route_rivers"&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#datasetName = "Streams.GISOWNER.str37_route_rivers"&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;#arcpy.ChangePrivileges_management(datasetName, "GISUsers", "GRANT", "AS_IS")&lt;/SPAN&gt;

&lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; fc &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; fclist&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
    &lt;SPAN class="keyword token"&gt;print&lt;/SPAN&gt; fc
    arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;ChangePrivileges_management&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;fc&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"DataViewer"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"GRANT"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"AS_IS"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; ds &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; dslist&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
    &lt;SPAN class="keyword token"&gt;print&lt;/SPAN&gt; ds
    arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;ChangePrivileges_management&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;ds&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"DataViewer"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"GRANT"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"AS_IS"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; tb &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; tblist&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
    &lt;SPAN class="keyword token"&gt;print&lt;/SPAN&gt; tb
    arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;ChangePrivileges_management&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;tb&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"DataViewer"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"GRANT"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"AS_IS"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; rs &lt;SPAN class="keyword token"&gt;in&lt;/SPAN&gt; rslist&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
    &lt;SPAN class="keyword token"&gt;print&lt;/SPAN&gt; rs
    arcpy&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;ChangePrivileges_management&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;rs&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"DataViewer"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"GRANT"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"AS_IS"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 02:15:07 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613707#M47890</guid>
      <dc:creator>PaulHuffman</dc:creator>
      <dc:date>2021-12-12T02:15:07Z</dc:date>
    </item>
    <item>
      <title>Re: Do I want to set the database connection as an environment in order to loop through feature classes?</title>
      <link>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613708#M47891</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;When I try to open a script like this with the "Edit with IDLE (ArcGIS Pro)"&amp;nbsp; choice in File Explorer,&amp;nbsp; I get Python 3.6.5 and the script fails with syntax error, missing parenthesis in print statement.&amp;nbsp; Is print totally different in Python 3.6.5?&amp;nbsp; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 07 Feb 2019 19:07:06 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613708#M47891</guid>
      <dc:creator>PaulHuffman</dc:creator>
      <dc:date>2019-02-07T19:07:06Z</dc:date>
    </item>
    <item>
      <title>Re: Do I want to set the database connection as an environment in order to loop through feature classes?</title>
      <link>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613709#M47892</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;When using &lt;STRONG&gt;print&lt;/STRONG&gt; with Python 3.x, you will want to put parenthesis around the print statement:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="language-python line-numbers"&gt;&lt;CODE&gt;&lt;SPAN class="keyword token"&gt;print&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;"Print message"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 07 Feb 2019 19:21:02 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/do-i-want-to-set-the-database-connection-as-an/m-p/613709#M47892</guid>
      <dc:creator>JakeSkinner</dc:creator>
      <dc:date>2019-02-07T19:21:02Z</dc:date>
    </item>
  </channel>
</rss>

