|
|
|
ADO & XML
|
|||
|---|---|---|---|
|
#18+
Как получить результат выполнения запроса SELECT * FROM [MYTABLE] FOR XML RAW в виде XML (string) на клиенте с помощью ADO? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2002, 10:47:59 |
|
||
|
ADO & XML
|
|||
|---|---|---|---|
|
#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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2002, 16:12:08 |
|
||
|
ADO & XML
|
|||
|---|---|---|---|
|
#18+
Есть ли какой нибудь способ автоматизировать создание таблицы стилей (xsl) иди все руками :( ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2002, 16:39:19 |
|
||
|
ADO & XML
|
|||
|---|---|---|---|
|
#18+
Если используете опцию "RAW" - то "все руками"... (впрочем с "AUTO" - тоже руками... но можно шаблончиков на стандартные представления налепить и их использовать) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2002, 17:00:09 |
|
||
|
ADO & XML
|
|||
|---|---|---|---|
|
#18+
Uvw, ya rabotayu v Delphi, tak ne prohodit, daze esli rabotat napriamuyu s ADO COM object (2.6) Nize primer na Delphi (ne rabotaet) var AConnection: _Connection; ACommand: _Command; AStream: _Stream; AnInStream : _Stream; AnOutput: OleVariant; sSql : string; RecCount: OleVariant; begin sSql := '<ROOT xmlns:sql=''urn:schema-microsoft-com:xml-sql''>'; sSql := sSql + '<sql:query>SELECT * FROM rtLoginInfo FOR XML RAW</sql:query>'; sSQl := sSql + '</ROOT>'; AConnection := CoConnection.Create; AConnection.Open(CON_STR,EmptyStr,EmptyStr,0); ACommand := CoCommand.Create; // ACommand.CommandText := 'SELECT * FROM rtLoginInfo FOR XML RAW'; ACommand.CommandText := sSql; ACommand.Dialect := '{5D531CB2-E6Ed-11D2-B252-00C04F681B71}'; ACommand._Set_ActiveConnection(AConnection); AStream := CoStream.Create; AStream.LineSeparator := adCRLF; AnInStream := CoStream.Create; AnInStream.Open(EmptyParam,adModeUnknown, adOpenStreamUnspecified,'',''); AnInStream.WriteText(sSQl, adWriteChar); AnInStream.Position := 0; ACommand.Set_CommandStream(AnInStream); AStream.Open(EmptyParam,adModeUnknown, adOpenStreamUnspecified,'',''); ACommand.Properties.Item['Output Stream'].Value := AStream; ACommand.Properties.Item['Output Encoding'].Value := 'UTF-8'; RS := ACommand.Execute(RecCount, EmptyParam, adExecuteStream); AStream.Open(EmptyParam,adModeUnknown, adOpenStreamUnspecified,'',''); AStream.Position := 0; Edit1.Text := AStream.ReadText(AStream.Size); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2002, 17:54:47 |
|
||
|
ADO & XML
|
|||
|---|---|---|---|
|
#18+
Nize primer na Delphi (ne rabotaet) Если не работает, значит - пишет что-то об ошибках... (хотелось бы взглянуть - что именно?) Навскидку - у тебя для AConnection не вижу явно указанного свойства Provider (строка CON_STR неизвестно чего содержит). По-умолчанию, если явно не указан ADO-провайдер, используется т.н. MSDASQL (он же - OLE DB Provider for ODBC ), что-то я сильно сомневаюсь, что он может поддерживать свойства типа Dialect со значениями GUID, или обрабатывать запросы по типу SOAP с возвратом результатов в потоки типа AnInStream . Проверь в этом направлении... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.08.2002, 12:21:26 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32042602&tid=1821186]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
35ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
| others: | 195ms |
| total: | 310ms |

| 0 / 0 |
