External table 'RetailDB.dbo.Product' is not accessible because content of directory cannot be listed

Amriteshwar Singh 30 Reputation points
2023-03-26T19:23:59.9466667+00:00

So I want to ingest data in a lake database table in Azure Synapse Studio, but I'm getting this error.

"External table 'RetailDB.dbo.Product' is not accessible because content of directory cannot be listed"

Even though the networking is set to All Networks for my data lake storage account.

This is a part of exercise https://microsoftlearning.github.io/dp-203-azure-data-engineer/Instructions/Labs/04-Create-a-Lake-Database.html . Please Help!!

Azure Data Lake Storage
Azure Data Lake Storage
An Azure service that provides an enterprise-wide hyper-scale repository for big data analytic workloads and is integrated with Azure Blob Storage.
1,563 questions
Azure Synapse Analytics
Azure Synapse Analytics
An Azure analytics service that brings together data integration, enterprise data warehousing, and big data analytics. Previously known as Azure SQL Data Warehouse.
5,384 questions
{count} votes

1 answer

Sort by: Most helpful
  1. KranthiPakala-MSFT 46,647 Reputation points Microsoft Employee Moderator
    2023-03-27T23:52:30.2233333+00:00

    Hi @Amriteshwar Singh ,

    Welcome to Microsoft Q&A forum and thanks for reaching out here.

    As per the error message, it seems like directory specified in the external table definition does not exist or the user does not have sufficient permissions to access the directory. You can try the following steps to resolve the issue:

    1. Check if the directory specified in the external table definition exists in the data lake storage account. Check if you have specified the correct path to the directory in the external table definition. User's image User's image
    2. Ensure that you have sufficient permissions to access the directory. You can grant the necessary permissions by using the Access Control (IAM) feature in the Azure portal (ADLSGen2 account).

    Please make sure that you have followed all the steps mentioned in these 3 steps:

    User's image

    Also please ensure that the product file is uploaded to your Primary ADLS Gen2 container which has been used to create a table in your lake database. Once the file is uploaded, please make sure to Publish the changes you have made. Then you can right click on the table and select New SQL script and select the online SQL pool and run the query which will display the results.

    User's image

    Hope this helps.


    Please don’t forget to Accept Answer and Yes for "was this answer helpful" wherever the information provided helps you, this can be beneficial to other community members.

    1 person found this answer helpful.

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.