|
|
|
Траблы при использовании переменной в OpenRowset
|
|||
|---|---|---|---|
|
#18+
Выношу путь к FoxPro-таблице в переменную @fullPathVFPsource, чтобы потом не править этот путь в случае необходимости, лазая по всему тексту хранимой процедуры. Так вот, ругается Уважаемые, на строку с OpenRowset, ежели пишу прямо ...FROM OpenRowset('MSDASQL', 'Driver=Microsoft Visual FoxPro Driver;SourceDB=I:\VFP_AP;SourceType=DBF;', 'SELECT * FROM vTbl') - то всё работает. В чём моя ошибка? DECLARE @fullPathVFPsource VARCHAR(800), @TmpStr VARCHAR(800) SET @fullPathVFPsource='I:\VFP_AP' SET @TmpStr='Driver=Microsoft Visual FoxPro Driver;SourceDB='+@fullPathVFPsource+';SourceType=DBF;' INSERT INTO tbl1 SELECT * FROM OpenRowset('MSDASQL', @TmpStr, 'SELECT * FROM vTbl') ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2002, 11:37:56 |
|
||
|
Траблы при использовании переменной в OpenRowset
|
|||
|---|---|---|---|
|
#18+
Вот синтаксис OpenRowset, и из него видно что он не допускает переменных Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2002, 12:28:46 |
|
||
|
Траблы при использовании переменной в OpenRowset
|
|||
|---|---|---|---|
|
#18+
суть в том что openrowset (так же как и openquery) не понимает переменных ... DECLARE @fullPathVFPsource VARCHAR(800), @TmpStr VARCHAR(800) ,@SQL VARCHAR(8000) SET @fullPathVFPsource='I:\VFP_AP' SET @TmpStr='Driver=Microsoft Visual FoxPro Driver;SourceDB='+@fullPathVFPsource+';SourceType=DBF;' set @SQL='INSERT INTO tbl1 SELECT * FROM OpenRowset(''MSDASQL'','+ @TmpStr+ ',''SELECT * FROM vTbl'')' exec(@SQL) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2002, 13:19:37 |
|
||
|
|

start [/forum/topic.php?fid=46&fpage=3366&tid=1818350]: |
0ms |
get settings: |
5ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
167ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 200ms |
| total: | 439ms |

| 0 / 0 |
