-1
Я получаю следующее сообщение об ошибке: Имя переменной '@Title' уже объявлено. Имена переменных должны быть уникальными в рамках пакета запросов или хранимой процедуры.ошибка в запросе mysql
public static string PostArticle(Article article)
{
try
{
conn.Open();
string query = "INSERT INTO Article VALUES (@Title, @UserId, @Category, @Type, @Contents, @Thumbnail)";
command.CommandText = query;
command.Parameters.AddWithValue("@Title", article.Title);
command.Parameters.AddWithValue("@UserId", article.UserId);
command.Parameters.AddWithValue("@Category", article.Category);
command.Parameters.AddWithValue("@Type", article.Type);
command.Parameters.AddWithValue("@Contents", article.Contents);
command.Parameters.AddWithValue("@Thumbnail", article.Thumbnail);
command.ExecuteNonQuery();
return "Post Successful";
}
finally
{
conn.Close();
}
}
Это workerd один раз, а затем я вернулся к той же проблеме – user3079575
Он работает сейчас, я должен добавить в конце, cmd.Parameters.clear(), потому что этот код используется не только один раз – user3079575
Думаю, вам стоит подумать о том, чтобы создать новую команду каждый раз. Или найти лучший способ реорганизовать это, так как это тупо, что вы, кажется, повторно используете команду, но полностью заменяете свой список команд и параметров. –