catsy
Дата: 29.09.2005 17:42:05
Не хочу сравнивать, но в MS SQL Server так: в ХП переменные, когда описыватся до тела, начинаются с @, в теле тоже с @, и при добавлении их в FbParameter - имя тоже начинается с @.
В FireBird:
1. До тела ХП - без @, а то не понимает
2.a. В теле - начиная с двоеточия, но только в селекте каком-нибудь
2.b. В теле же - не в селекте, а так - без доп. символов
3. При ссылке в FbParameter - начиная с @
Не слишком ли все запутано? Кто объяснит, как сделать попроще и пооднозначнее?
AndriyKo
Дата: 29.09.2005 17:46:37
везде ставь : .
Gold
Дата: 29.09.2005 17:48:11
Слушай сюда:
1) Кажись по стандарту вобще не : и не @, а ?
2) В объявлении параметров в заголовке процедуры никаких таких символов не надо
3) В теле процедуры в cлучае если может возникнуть неоднозначность (например имя параметра совпадает с именем поля в запросе в выражении WHERE), для отличия параметров и переменных перед ними ставиться :. В прочих случаях двоеточие необязательно
4) На клиенте параметры могут обознгачаться по разному. Например в IBX они начинаются с :, в FIBPlus с : или ?, в .NET Provider с @, причём при обращении к ним также @ нужна
Карабас Барабас
Дата: 29.09.2005 17:54:21
сервер знать не знает ни про какие @
catsy
Дата: 29.09.2005 18:26:44
ну да, сервер не знает, а тем не менее, вызов команды, у которой в параметре вместо "@SomeField" стоит "SomeField" приводит к тому, что сервер говорит - а я не знаю, что за токен такой SomeField.
Кто не верит - проверьте.
Это все про FB .NetProvider.
Kull Damned
Дата: 29.09.2005 19:00:29
Девушка, у FB .NetProvider свой формат передачи параметров, у процедур внутри FB СВОЙ, извольте читать и о том и о том.
Posted via ActualForum NNTP Server 1.3
catsy
Дата: 29.09.2005 19:08:44
Да, это все так, конечно, но. Почему же нет единообразия, вот это утомляет, понимаете?
Хотелось бы, чтобы везде одинаково... а то сабж...
Amris Mirddin
Дата: 29.09.2005 19:24:28
И ваще. Вот скажем различия полов - ОВСФ? Было бы всё единообразно. Утомляет...
______________________________________
Cоздавать БД надо для того чтобы любой человек не знающий SQL мог пользоваться ею.
Не моё. Честно украденный перл.
Kull Damned
Дата: 29.09.2005 19:26:05
|
Да, это все так, конечно, но. Почему же нет единообразия, вот это утомляет, понимаете? Хотелось бы, чтобы везде одинаково... а то сабж... |
Нет однообразия и не будет. Префикс @ - это фишка ADO-подобных драйверов, к которым относится FB .NET Provider, сделано специально для тех, кто привык к ADO. Ну а параметры с : - это особенность сервера. Переделывать сервер для тебя никто не будет, как впрочем и провайдер. ;) Так что держи в голове все особенности...
Posted via ActualForum NNTP Server 1.3
catsy
Дата: 30.09.2005 11:50:19
Ну все понятно.