Click here to Skip to main content
12,749,754 members (36,865 online)
Rate this:
Please Sign up or sign in to vote.
See more: .NET SQL-Server .NET4
I want to know column which has primary key defined in sql server database.
Following is my code

    SqlConnection con = new SqlConnection("Initial Catalog=Dbname; Data Source=MySqlServer; User=testuser; Password=pass123;");

    DataSet ds = new DataSet();

SqlCommand cmd = new SqlCommand("select * from TableName", con);
        cmd.CommandType = CommandType.Text;

        SqlDataAdapter da = new SqlDataAdapter(cmd);

        DataColumn[] columns;
        columns = ds.Tables[0].PrimaryKey;

        // Get the number of elements in the array.
         Response.Write("Column Count: " + columns.Length);
        for (int i = 0; i < columns.Length; i++)
            Response.Write(columns[i].ColumnName + columns[i].DataType);

In fact, i have defined one primary key on a column of

But my code returns zero count.
please correct me, if i am wrong and provide me alternative solution
thank is advance.
Posted 4-Feb-13 20:44pm
Rate this: bad
Please Sign up or sign in to vote.

Solution 1

Abhijit Parab 5-Feb-13 2:21am
i think u have not understood my questiom. i want to know which table has primary key.i am fetching tables in dataset, from that dataset i want to know which table has primary key and count of the primary keys. i want logic in .net.
Rate this: bad
Please Sign up or sign in to vote.

Solution 2

I got the answer......
da.MissingSchemaAction = MissingSchemaAction.AddWithKey;


It worked......

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

    Print Answers RSS
Top Experts
Last 24hrsThis month

Advertise | Privacy | Mobile
Web02 | 2.8.170215.1 | Last Updated 5 Feb 2013
Copyright © CodeProject, 1999-2017
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100