Forum guidelines
How to obtain primary key of table
Posted By Abhijit Parab on 05 Feb 2013
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 TableName
But my code returns zero count.
please correct me, if i am wrong and provide me alternative solution
thank is advance.

Re: How to obtain primary key of table
Posted By Santhosh Kumar Jayaraman on 05 Feb 2013   Accepted Answer
before fill add this line of code

da.MissingSchemaAction = MissingSchemaAction.AddWithKey

Thanks & Regards,SanthoshPlease mark this answer as accepted answer if it resolves your problem.
Download Free eBooks


JetBrains ReSharper Ultimate
.NET code analysis, refactorings, navigation, unit testing, code coverage and profiling in Visual Studio, a bonus for C++ devs, bundled at 50% off.