Member 13655759 Ответов: 2

Проблема Sql - запросов для VB и C++


у меня есть запрос в sql vb6.0, который показан ниже:

локон.Выполнить "метод exec('убить" &амп; РСА("СПИД") &ампер; "')"

когда я написал тот же запрос на c++, он дает мне такую проблему, как

DB_E_ERRORSINCOMMAND одна или несколько ошибок, возникших при обработке команды

не могли бы вы сообщить мне, в чем может быть проблема или мне нужно обновить запрос для c++

Что я уже пробовал:

Exec('убить(51)')

Exec('убить(52)')

Maciej Los

Что возвращается: rsa("spid")?

Member 13655759

значение как 51

2 Ответов

Рейтинг:
2

Jochen Arndt

Команды SQL не идентичны:

-- VB
EXEC('kill id')
-- C++
EXEC('kill(id)')
Просто используйте тот же (правильный) синтаксис, что и в вашем VB-коде, передавая id параметр разделен пробелом, а не заключен в круглые скобки.


Maciej Los

Ну, это не вопрос VB или c++, это проблема SQL.
Я считаю, что первое утверждение правильно. А второй - нет.

Jochen Arndt

Это то, что я пытался сказать ему, показывая используемые команды SQL вместе для сравнения ("вы видели свою ошибку сейчас"?). Я даже посоветовал ему использовать правильный синтаксис без скобок.

Member 13655759

я попробовал это не работает

Jochen Arndt

А что вы пробовали?
Есть ли какие-либо сообщения об ошибках?

Обратите также внимание, что решения являются всего лишь примерами. Вы должны передать действительное удостоверение личности.

В зависимости от используемой базы данных и интерфейса БД вы также можете попытаться получить полное сообщение об ошибке SQL. Это будет более информативно.

Рейтинг:
0

Wendelius

Принято это SQL Server, KILL команда не использует скобки, попробуйте с помощью

Exec('kill 51')

Еще одна проблема заключается в том, что в зависимости от используемой вами библиотеки она может потребоваться, а может и не потребоваться EXEC для вызова. Поэтому, если проблема все еще остается, попробуйте выполнить команду просто как
kill 51


Maciej Los

5ed!

Member 13655759

я попробовал это не работает

Wendelius

Что происходит, вы получаете сообщение об ошибке? Если вы делаете, о чем это говорит?