|
FoxPro+SQL
|
|||
---|---|---|---|
#18+
Доброе время суток! Ребята подскажите плиз, как вызвать встроенную процедуру MS SQL Server с передачей ей параметров. Допустим есть exec(<имя соединения>, <имя хранимой процедуры>,<FoxPro- курсор куда возращаются данные из SQL Servera>), а куда здесь засунуть параметры для передачи в <хранимую процедуру> Заранее благодарен Pavlov Igor ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2002, 15:14 |
|
FoxPro+SQL
|
|||
---|---|---|---|
#18+
Доброе время суток! Ребята подскажите плиз, как вызвать встроенную процедуру MS SQL Server с передачей ей параметров. Допустим есть exec(<имя соединения>, <имя хранимой процедуры>,<FoxPro- курсор куда возращаются данные из SQL Servera>), а куда здесь засунуть параметры для передачи в <хранимую процедуру> Заранее благодарен Pavlov Igor ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2002, 15:14 |
|
FoxPro+SQL
|
|||
---|---|---|---|
#18+
Купи МСДН Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2002, 16:57 |
|
FoxPro+SQL
|
|||
---|---|---|---|
#18+
Спасибо за ответ. Но нельзя ли по другому? Я например помучился и получилось следующее =SQLEXEC('имя соединения', 'имя_SQL_процедуры &параметр', 'имя курсора') если в качестве параметра передаются данные типа numeric то параметр будет равен что то типа STR(perem,15,2) a perem - это переменная содержащая само значение которое надо передать в процедуру если в качестве параметра передаются данные типа char то параметр будет равен что то типа '"'+perem+'"' a perem - это переменная содержащая само значение которое нао передать в процедуру короче параметры должны передаваться через макроподстановку. Переменных SQLEXEC не понимает. С данными типа DATE вообще весело они должны передаваться что то типа 'jan'+' '+'01'+' '+'2002' (Если кому то интересно я вышлю подробно примеры конкретных текстов вызовов процедур на VFP и примеры этих процедур на MSSQL ) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.12.2002, 09:11 |
|
FoxPro+SQL
|
|||
---|---|---|---|
#18+
Что-то не пойму - а чем вас не устраивает стандартный механизм передачи пареметров с помощью resultCode = SQLExec(connHand, "{CALL sp_xxx (?InParam1, ?InParam2, ?@OutParam1)}") ? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.12.2002, 10:12 |
|
FoxPro+SQL
|
|||
---|---|---|---|
#18+
Спасибо большое за совет Glory из Эстонии. Теперь уже когда узнал этот механизм меня устраивает на все 100. Но это - когда знаешь! "{CALL sp_xxx (?InParam1, ?InParam2, ?@OutParam1)}" Только вот не пойму CALL - это чья команда FOXPRO или MSSQL? В документации ни там ни там я ее не нашел. И что значат фигурные скобки? {}. Если кто - нибудь не посчитает за труд и пришлет мне документацию по данному вопросу - буду очень рад. Могу выслать тоже что-нибудь касающееся работы с MSSQL. По FoxPRO к сожалению док у меня мало! МОЙ e-mail Alex_BUBU@mail.ru Cпасибо! Всех с Новым Годом! ... |
|||
:
Нравится:
Не нравится:
|
|||
31.12.2002, 11:07 |
|
FoxPro+SQL
|
|||
---|---|---|---|
#18+
Только вот не пойму CALL - это чья команда FOXPRO или MSSQL? В документации ни там ни там я ее не нашел. И что значат фигурные скобки? {}. "The Microsoft® SQL Server™ ODBC driver supports both the ODBC CALL escape sequence and the Transact-SQL EXECUTE statement for executing stored procedures; the ODBC CALL escape sequence is the preferred method. Using ODBC syntax enables an application to retrieve the return codes of stored procedures and the SQL Server ODBC driver is also optimized to use a protocol originally developed for sending remote procedure (RPC) calls between SQL Servers. This RPC protocol increases performance by eliminating much of the parameter processing and statement parsing done on the server. The ODBC CALL escape sequence for calling a procedure is: {[?=]call procedure_name[([parameter][,[parameter]]...)]} where procedure_name specifies the name of a procedure and parameter specifies a procedure parameter." ... |
|||
:
Нравится:
Не нравится:
|
|||
31.12.2002, 11:47 |
|
FoxPro+SQL
|
|||
---|---|---|---|
#18+
Спасибо большое Глори за ответ. Не могли бы Вы выслать полную документацию по ODBC. Мой e-mail: alex_bubu@mail.ru Заранее очень благодарен! Алексей Савельев ... |
|||
:
Нравится:
Не нравится:
|
|||
02.01.2003, 16:58 |
|
FoxPro+SQL
|
|||
---|---|---|---|
#18+
допустим параметр myPar SQLexec(con,"exec mySP ?myPar") ... |
|||
:
Нравится:
Не нравится:
|
|||
05.01.2003, 10:08 |
|
FoxPro+SQL
|
|||
---|---|---|---|
#18+
Кстати сказать, вчера столкнулся с проблемой когда myPar в =SQLexec(con,"exec mySP ?myPar") является именем таблицы содержащим пробел. Эта сволочь почему-то считает что это два параметра, а не один. Сталкивался кто? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.01.2003, 11:18 |
|
FoxPro+SQL
|
|||
---|---|---|---|
#18+
Насколько я знаю не рекомендуется имена полей, таблиц и т.д. писать на кирилице. А пробелы в именах таблиц недопустимы! ... |
|||
:
Нравится:
Не нравится:
|
|||
06.01.2003, 12:22 |
|
FoxPro+SQL
|
|||
---|---|---|---|
#18+
to Alexey Savelyev Пробелы в именах таблиц SQL2000 допустимы. Здесь какой-то глюк фокса. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.01.2003, 20:27 |
|
FoxPro+SQL
|
|||
---|---|---|---|
#18+
2 Вася Это не глюк фокса. Это его фича. В среде FoxPro пробел - это символ разделитель опций внутри одной команды. Чтобы он не считал пробел в качестве разделителя необходимо использовать кавычки или квадратные скобки при написании имен таких полей. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2003, 17:51 |
|
|
start [/forum/topic.php?fid=16&msg=32086649&tid=1348952]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
31ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
others: | 284ms |
total: | 398ms |
0 / 0 |