Forum Discussion

chetanhiwale's avatar
chetanhiwale
Resolver I
5 months ago
Solved

Query data from Fabric SQL DB using spark / python.

Hi Folks, 

I am trying to query data using Fabric SQL DB using python / pyspark. But I am not getting proper syntax to query. If anyone has , can someone share the syntax. 

Thanks and regards.

  • Hi chetanhiwale ,

    You can query a Fabric SQL Database from a Spark notebook using JDBC. Here's a working example:

    jdbc_url = "jdbc:sqlserver://<your-server>.database.fabric.microsoft.com:1433;database=<your-db>"

    df = spark.read \
        .format("jdbc") \
        .option("url", jdbc_url) \
        .option("dbtable", "dbo.YourTable") \
        .option("authentication", "ActiveDirectoryInteractive") \
        .load()
    df.show()
    Alternatively, if your SQL DB is in the same workspace, you can use the synapsesql connector:
    df = spark.read.synapsesql("YourDatabase.dbo.YourTable")

    Did this help?
    Drop a kudo so others can find it ! 

    😉

3 Replies

Replies have been turned off for this discussion
  • Hi chetanhiwale ,

    You can query a Fabric SQL Database from a Spark notebook using JDBC. Here's a working example:

    jdbc_url = "jdbc:sqlserver://<your-server>.database.fabric.microsoft.com:1433;database=<your-db>"

    df = spark.read \
        .format("jdbc") \
        .option("url", jdbc_url) \
        .option("dbtable", "dbo.YourTable") \
        .option("authentication", "ActiveDirectoryInteractive") \
        .load()
    df.show()
    Alternatively, if your SQL DB is in the same workspace, you can use the synapsesql connector:
    df = spark.read.synapsesql("YourDatabase.dbo.YourTable")

    Did this help?
    Drop a kudo so others can find it ! 

    😉

  • Hi Tamanchu , 
    I tried both both options but they are not working for me. Have you tried to use MS-SQL python module by Microsoft

    • Tamanchu's avatar
      Tamanchu
      Super User

      Hi chetanhiwale,

      If the JDBC and synapsesql approaches didn't work, you can try using pyodbc directly in a Fabric notebook:

      Also, could you share the error messages you got with the JDBC and synapsesql methods? That would help narrow down the root cause.

      Thanks!