Search code examples
mysqlsqlvb.netsql-in

passing an Array as a Parameter to be used in a SQL Query using the "IN" Command


Good Afternoon to All,

I have a question concerning on SQL Queries. is it possible to use an array as a parameter to a query using the "IN" command?

for example,

int x = {2,3,4,5}

UPDATE 'table_name' set 'field' = data WHERE field_ID IN (x)

the reason I am asking this is to avoid an iterative SQL Statement when I have to update data in a database. I also thought of using a for each statement in for the UPDATE Query but I don't know if it will affect the performance of the query if it will slow down the system if ever 100+ records are updated.

I am using VB.Net btw. My Database is MySQL Workbench.


Solution

  • I have gotten the answer. I just simply need to convert each elements to a String then concatenate it with a "," for each element. so the parameter that i will pass will be a string.

    ANSWER: int x = {2,3,4,5} will become string x = "2,3,4,5"

    My Query string will become "UPDATE tablename SET field=value WHERE ID IN("&x&")"

    Thank you to all who helped.