Предполагам, че казвате SQL (структуриран език за заявки) и наистина имате предвид Microsoft SQL Server (действителният продукт на базата данни) вместо това - нали?
Не можете да вмъкнете цял списък като цяло в SQL Server - трябва да вмъкнете един ред за всеки запис. Това означава, че трябва да извикате оператора INSERT няколко пъти.
Направете го така:
// define the INSERT statement using **PARAMETERS**
string insertStmt = "INSERT INTO dbo.REPORT_MARJORIE_ROLE(REPORT_ID, ROLE_ID, CREATED_BY, CREATED) " +
"VALUES(@ReportID, @RoleID, 'SYSTEM', CURRENT_TIMESTAMP)";
// set up connection and command objects in ADO.NET
using(SqlConnection conn = new SqlConnection(-your-connection-string-here))
using(SqlCommand cmd = new SqlCommand(insertStmt, conn)
{
// define parameters - ReportID is the same for each execution, so set value here
cmd.Parameters.Add("@ReportID", SqlDbType.Int).Value = YourReportID;
cmd.Parameters.Add("@RoleID", SqlDbType.Int);
conn.Open();
// iterate over all RoleID's and execute the INSERT statement for each of them
foreach(int roleID in ListOfRoleIDs)
{
cmd.Parameters["@RoleID"].Value = roleID;
cmd.ExecuteNonQuery();
}
conn.Close();
}