Mr A
Mr A

Reputation: 6778

Add values to a table cell using C#

I want to add multiple values to a table cell separated by commas, the table I got is Id ,Name , Type . I want to add multiple names in the name column, so the row will be something like:

ID  Name                              Type
1   Peter, Jas , Roden , Karen        Class A

I have done simple insertion which is:

[WebMethod]
public static string Insertion(string Name)  
{
    //List<string> result = new List<string>();
    SqlConnection con = new SqlConnection("Data Source=XXX;Initial Catalog=XXX;User ID=sa;Password=XXXXX");
    {
         string query = "Insert into TestTable values @Name";

        SqlCommand cmd = new SqlCommand(query, con);
        cmd.Parameters.Add("@Name", SqlDbType.NVarChar).Value = Name;
        {
            con.Open();
            cmd.ExecuteNonQuery();

            //test();
            con.Close();
            return "True";

        }
    }
}

Can any one guide me on how to add multiple names which should be separated by commas, also I need to make sure there is no duplication of names.

Upvotes: 0

Views: 1323

Answers (2)

Ehsan
Ehsan

Reputation: 32729

Can any one guide me on how to add multiple names which should be separated by commas

You need to use parameterized queries. It will also help you inb avoiding sql injection attacks.

like

cmd.Parameters.AddWithValue("@name",name);

also i need to make sure there is no duplication of names

Something like this should work for you

string name = "a,b,c,d,a,b,c,d";
HashSet<string> h = new HashSet<string>(name.Split(','));
string distinctNames = string.Join(",", h);

Upvotes: 1

Damith
Damith

Reputation: 63105

you can send parameter value as "Peter, Jas , Roden , Karen" then it will insert that text in to given record.

but if you have array or List of names to be added, you can easily create the insert string as below

var names = string.Join("," ,namesArray.Distinct());

now you can call the service method using above generated names string

Upvotes: 1

Related Questions