I am making one client server application in which at server side I made tables using this code


Database db = server.Databases["dbo"];

nonqueryCommand.CommandText = "CREATE TABLE UserInfo (ID varchar(50),LoginName varchar(50),Date varchar(50),Time varchar(50) CONSTRAINT PKid PRIMARY KEY (ID))";
nonqueryCommand.ExecuteNonQuery();

nonqueryCommand.CommandText = "CREATE TABLE RAM ( ID varchar(50),PartNo integer,SerialNo integer,SizeMb integer ,SizeGB integer,TotalRam integer CONSTRAINT FKRid FOREIGN KEY(ID) REFERENCES UserInfo) ";
nonqueryCommand.ExecuteNonQuery();


and it works fine create the tables and link to primary and foriegn key too .

Error comes when i want to insert the data in the database named "dbo"

and this error comes when i enter the same data second time .

error is

Violation of PRIMARY KEY constraint 'PKid'. Cannot insert duplicate key in object 'dbo.UserInfo'.
The statement has been terminated.

and Inserting Code is

nonqueryCommand.CommandText = "INSERT INTO UserInfo([ID],[LoginName],[Date],[Time]) VALUES (@stloginname,@sthostname,@stdate,@sttime)";
nonqueryCommand.Parameters.Add(new System.Data.SqlClient.SqlParameter("@stloginname", stloginname));
nonqueryCommand.Parameters.Add(new System.Data.SqlClient.SqlParameter("@sthostname", sthostname));
nonqueryCommand.Parameters.Add(new System.Data.SqlClient.SqlParameter("@stdate", stdate));
nonqueryCommand.Parameters.Add(new System.Data.SqlClient.SqlParameter("@sttime", sttime));
nonqueryCommand.ExecuteNonQuery();

gives error at nonqueryCommand.ExecuteNonQuery();