Как добавить несколько записей в одном INSERT в MySQL? - PullRequest
0 голосов
/ 29 марта 2019

Я знаю, каков синтаксис, где я мог бы вставить несколько записей в одну строку. (здесь) .Тем не менее, в моем случае количество входящих записей не фиксировано, поэтому я пытаюсь сделать обходной путь, чтобы я все еще мог использовать метод.

INSERT INTO tasks(title, priority)
VALUES
 ('My first task', 1),
 ('It is the second task',2),
 ('This is the third task of the week',3);

Я настроил свои входящие данные следующим образом:

foreach (var item in oListing.items)
            {
                string s1 = String.Format("({0},{1},{2})", Enum.GetName(typeof(ItemType), item.itemSize), item.ItemPrice, DateTime.Now.ToUniversalTime());
                portion_price.Add(s1);
            }
            string string_portion_price = string.Join(",", portion_price);

Затем я использую «string_portion_price», используя «AddWithValue», следующим образом:

Одна из собранных строк: (SMALL, 2.50,3 / 29/2019 15:06:39 PM)

oCommand.Parameters.AddWithValue("@string_portion_price", string_portion_price);

Мой оператор SQL:

  INSERT INTO listing_price (SIZE, PRICE, PRICES_ADD_CHANGE_DATE)
                                    VALUES @string_portion_price;";

Я получаю сообщение о том, что рядом с этим оператором SQL есть синтаксическая ошибка:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''(SMALL,2.50,3/29/2019 3:06:39 PM)'' at line 2

Является ли мойнеправильный способ назначения параметров?(обычно я делаю это с присваиванием значения.)

Каков наилучший способ вставить записи в собственную таблицу в одном запросе вставки?У меня может быть несколько записей, но их количество может быть разным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...