Форум программистов, компьютерный форум, киберфорум
Microsoft SQL Server
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/18: Рейтинг темы: голосов - 18, средняя оценка - 4.83
1 / 1 / 1
Регистрация: 13.08.2014
Сообщений: 40

Неправильный синтаксис около конструкции merge

17.12.2014, 04:55. Показов 3725. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток!

Процедура должна приводить одну таблицу в полное соответствие с другой.

Собственно код:
T-SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
use marina
go
create procedure dbo.update_lpu
as
begin
  merge sveta.dbo.lpu t
  using dbo.lpu s on t.regnum=s.regnum
  when matched then
    update set t.dedit=s.dedit,
               t.caption=s.caption,
               t.code=s.code,
               ...
  when not matched by target then
    insert (t.dedit,
            t.caption,
            t.code,
            ...)
    values (s.dedit,
            s.caption,
            s.code,
            ...)
  when not matched by source then
    delete;
end;
В ответ получаю ошибку
Сообщение 102, уровень 15, состояние 1, процедура update_lpu, строка 4
Неправильный синтаксис около конструкции "merge".
В чём может быть проблема?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
17.12.2014, 04:55
Ответы с готовыми решениями:

Цикл While в запросе: Неправильный синтаксис около конструкции
Коллеги, Вот фрагмент запроса: DECLARE @TEMP1 int SELECT @TEMP1 = COUNT(*) FROM ..Items DECLARE @i int SET @i =0; ...

Вложенные запросы SQL: Неправильный синтаксис около конструкции ")"
Всем привет. Помогите создать "Вложенные запросы". Пример. SELECT имя_столбца FROM имя_таблицы WHERE часть условия IN (SELECT...

Ошибка в коде SQL: Неправильный синтаксис около конструкции "<"
Помогите пожалуйста с ошибкой в коде. USE GO INSERT INTO . ( , , , ...

5
1116 / 761 / 183
Регистрация: 27.11.2009
Сообщений: 2,272
17.12.2014, 10:18
Уберите t. в update, insert, values

Вообще, сообщение об ошибке надо читать и постить сюда полностью.
Там же всё написано
0
1 / 1 / 1
Регистрация: 13.08.2014
Сообщений: 40
17.12.2014, 11:36  [ТС]
Цитата Сообщение от iap Посмотреть сообщение
Уберите t. в update, insert, values
ОК. Делаю таким образом:
T-SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
use marina
go
create procedure dbo.update_lpu
as
begin
  merge sveta.dbo.lpu t
  using dbo.lpu s on t.regnum=s.regnum
  when matched then
    update set dedit=s.dedit,
               caption=s.caption,
               code=s.code,
               ...
  when not matched by target then
    insert (dedit,
            caption,
            code,
            ...)
    values (s.dedit,
            s.caption,
            s.code,
            ...)
  when not matched by source then
    delete;
end;
Результат тот же самый
Цитата Сообщение от iap Посмотреть сообщение
Вообще, сообщение об ошибке надо читать и постить сюда полностью
Я выложил полностью. Больше ничего не написано.
0
1116 / 761 / 183
Регистрация: 27.11.2009
Сообщений: 2,272
17.12.2014, 11:43
Версию сервера надо угадать?
Выполните PRINT @@VERSION и результат покажите здесь.
0
1 / 1 / 1
Регистрация: 13.08.2014
Сообщений: 40
18.12.2014, 03:13  [ТС]
Microsoft SQL Server 2005 - 9.00.5057.00 (X64)
Mar 25 2011 13:33:31
Copyright (c) 1988-2005 Microsoft Corporation
Standard Edition (64-bit) on Windows NT 6.1 (Build 7601: Service Pack 1)
0
 Аватар для kodv
1449 / 1121 / 347
Регистрация: 11.04.2011
Сообщений: 2,621
18.12.2014, 04:30
Лучший ответ Сообщение было отмечено standmit как решение

Решение

Цитата Сообщение от standmit Посмотреть сообщение
Microsoft SQL Server 2005 - 9.00.5057.00 (X64)
Ну так:
Цитата Сообщение от MSDN
MERGE (Transact-SQL)
...
Применимо для следующих объектов: SQL Server (SQL Server 2008 по текущую версию), База данных SQL Windows Azure (с первоначального выпуска по текущий выпуск).
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.12.2014, 04:30
Помогаю со студенческими работами здесь

Процедура на удаление: выводится ошибка -неправильный синтаксис около конструкции "15"
CREATE PROCEDURE dbo.DeletFromTable @field varchar(50), @name varchar(20) AS BEGIN exec('Delete From ' + @name + ' where id...

Заполнение таблицы из txt файла, "Неправильный синтаксис около конструкции INFILE"
здравствуйте, не получается заполнить таблицу в ms sql server 2012 из текстового файла. вот текст запроса LOAD DATA INFILE...

Неправильный синтаксис около конструкции "OFFSET"
Здравствуйте, пишу простой запрос: Select orderid From . Order by orderid OFFSET 1 rowВыдаётся ошибка:Неправильный синтаксис около...

Сообщение 102, уровень 15, состояние 1, строка 7 Неправильный синтаксис около конструкции "id_format"
USE master; GO CREATE DATABASE CD ON PRIMARY ( NAME = CD_disc, FILENAME = 'E:\CD\CDDat.mdf', FILEGROWTH = 20 )

Сообщение 102, уровень 15, состояние 1, строка 1 Неправильный синтаксис около конструкции "DATETIME". Сообщени
CREATE TABLE Komanda (ID INT PRIMARY KEY, ФИО CHAR(100),Data obrazovania DATETIME, Nazvanie komandi CHAR(100),Reyting komandi INT) CREATE...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru