2013-06-04 5 views
2

У меня есть проблема с записью строки запроса, чтобы обновить конкретную запись sql. У меня есть все мои значения значений в строках, и я могу добавить их (значения как параметры), он преобразует первичный идентификатор в int. Все идет нормально.Обновить конкретную запись sql, используя значения

Проблема заключается в моей строке запроса. Я могу сделать удаление и создание записей sql (выбрать и вставить), но проблема здесь, заключается в обновлении. Это я не имею никакого реального опыта.

теперь ... Для строки запроса, что у меня есть все готов ...

SqlCommand DerGemmesMedarbejder = new SqlCommand("UPDATE MyTableInQuestion VALUES (@Tittel, @FuldeNavn, @MailAdresse, @TelefonNummer, @MedarbejderType) WHERE PersonaleID = @PersonaleID_FraRepeateren", GemDetAendredeIndhold); 

Я просто не могу показаться, чтобы получить это право. Отладчик говорит мне, что проблема «неправильный синтаксис около

ответ

0

Ваш синтаксис для команды обновления не является действительным. Вы можете смешивать с командой Insert и Update

команда Update будет как этот

UPDATE MyTableInQuestion set [email protected], [email protected] where PersonaleID = @PersonaleID_FraRepeateren 
+0

FuldeNavn = @ FuldeNavn Должен быть TheStringNameIUse = @ FuldeNavn? – Anders

+0

'@ FuldeNavn' - это параметр, который содержит значение, которое будет использоваться как значение столбца FuldeNavn. – Sachin

+0

Итак. Если я нарисую этот« DerGemmesMedarbejder.Parameters.AddWithValue («@ Tittel») , Tittel_DerSkalGemmes), «из моих строк, в которых хранятся значения, которые должны быть сохранены, тогда я должен быть в порядке с использованием« Tittle = @ Tittle », поскольку значения извлекаются из моих переменных? (Строки и int) – Anders

4

jeyword„VALUES“Попробуйте

SqlCommand DerGemmesMedarbejder = new SqlCommand("UPDATE MyTableInQuestion set [email protected], [email protected], ... WHERE PersonaleID = @PersonaleID_FraRepeateren", GemDetAendredeIndhold); 
+0

Sorry. Пробовал это, не работая. Спасибо, в любом случае. :-) – Anders

+0

Извините ... Забыл «Tittel» не «@Tittle» в «Tilt = @ Tittle» ... – Anders

+0

Теперь он работает @Anders – Amit

3

Попробуйте этот запрос -

UPDATE MyTableInQuestion 
SET 
     Tittel = @Tittel 
    , FuldeNavn = @FuldeNavn 
    , MailAdresse = @MailAdresse 
    , TelefonNummer = @TelefonNummer 
    , MedarbejderType = @MedarbejderType 
WHERE PersonaleID = @PersonaleID_FraRepeateren 
+0

Это говорит мне: Неправильный синтаксис рядом с «,» Это не может быть истребитель .... :-( – Anders

+0

Извините ... Забыл «Tittel» не «@Tittle» в титте = @ Tittle. – Anders

0

Поскольку синтаксис неверен Синтаксис here.

Для операторов обновлений вы должны изменить свой запрос на это:

UPDATE MyTableInQuestion SET Column1 = @Tittel, Column2 = @FuldeNavn, Column3 = @MailAdresse, Column4 = @TelefonNummer, Column5 = @MedarbejderType WHERE PersonaleID = @PersonaleID_FraRepeateren" 

Где Column1-5 ваши имена столбцов

Смежные вопросы