#c# #mysql #sql #mysql-workbench
#c# #mysql #sql #mysql-workbench
Вопрос:
Мы готовимся к масштабной миграции SQL.
В настоящее время у меня написан код, и я тестирую его с данными на своем локальном компьютере.
Шаг 1 — удалить существующие данные в таблице, прежде чем импортировать новые данные:
using (var txn = m_mySqlConnection.BeginTransaction()) {
using (var cmd = new MySqlCommand("TRUNCATE TABLE `blah_blah`;", m_mySqlConnection, txn)) {
cmd.ExecuteNonQuery();
}
// other code
}
Но TRUNCATE
команда выдает исключение всякий раз, когда я пытаюсь выполнить ее с помощью учетной записи пользователя MySQL, с которой я запускаю код:
Я попытался зайти в MySQL Workbench, чтобы предоставить это DROP
разрешение userid, но все, что я смог найти, это способ добавления DROP
в раздел Просмотра.
Я пробовал это, но это не сработало.
Как мне предоставить этому пользователю возможность удалять данные из этих таблиц, чтобы я мог протестировать свой сценарий заполнения?
Комментарии:
1. попробуйте
DELETE FROM Table
2. Это сработало, Дэниел. Я выполнил поиск перед написанием своего кода, и то, что я нашел, было использовать
TRUNCATE
вместоDELETE
. Я не знаю почему. Удаление, похоже, работает нормально.
Ответ №1:
TRUNCATE
удаляет таблицу. Попробуйте использовать DELETE FROM Table
.