Click here to Skip to main content
13,047,131 members (59,951 online)
Rate this:
Please Sign up or sign in to vote.
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 19: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.170713.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