|
|
|
FoxPro & MSSQL
|
|||
|---|---|---|---|
|
#18+
Help me PLS! Есть задача, нужна програмка, которая при запуске соединялась бы с SQL server,вставляла бы в определенную таблицу новую строку с системной датой и закрывалась. Все по отдельности понятно, а как это сделать через FOXPro - не знаю. Может кто поможет советом? STORE SQLCONNECT('ODBCName', user) TO gnConnHandle IF gnConnHandle < 0 = MESSAGEBOX('Cannot make connection', 16, 'SQL Connect Error') ELSE = MESSAGEBOX('made connection',48, 'SQL Connect Message') ???? INSERT INTO mytable (DateS) values(getDate()) а как указать FOXPRO к какой именно базе на сервере нужно коннектиться? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2007, 13:42 |
|
||
|
FoxPro & MSSQL
|
|||
|---|---|---|---|
|
#18+
STORE SQLCONNECT('ODBCName', user) TO gnConnHandle IF gnConnHandle < 0 = MESSAGEBOX('Cannot make connection', 16, 'SQL Connect Error') ELSE = MESSAGEBOX('made connection',48, 'SQL Connect Message') endif cSql='INSERT INTO mybd.dbo.mytable (DateS) values(getDate())' sqlexec(gnConnHandle,cSql) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2007, 13:46 |
|
||
|
FoxPro & MSSQL
|
|||
|---|---|---|---|
|
#18+
большое спасибо!!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2007, 14:13 |
|
||
|
FoxPro & MSSQL
|
|||
|---|---|---|---|
|
#18+
В дополнении к этому. Программа написана, работает. Но почему-то не всегда срабатывает. Т.е. после отработки программы, подключаешься к базе через Query Analyzer и делаешь запрос: select * from Table where assertion='R' Так вот иногда, вместо необходимого значения true в поле holds остается false. Причем не всегда. Текст программы прилагаю: STORE SQLCONNECT('SRVNAME', 'USER') TO gnConnHandle cSql='update DBName.dbo.Table set holds="true", asof =(GETDATE()) where assertion="R"' sqlexec(gnConnHandle,cSql) quit Может кто-нибудь подскажет, почем такое происходит? Что неверно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2007, 10:35 |
|
||
|
FoxPro & MSSQL
|
|||
|---|---|---|---|
|
#18+
Структуру таблицы покажите Проверьте условие where в запросе ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2007, 11:10 |
|
||
|
FoxPro & MSSQL
|
|||
|---|---|---|---|
|
#18+
Table: assertion (varchar(1024), Not Null) holds(varchar(5), Not Null) asof (smalldatetime, NULL) Таблица содержит всего 2 записи: assertion holds asof G false 2007-02-07 00:00:00 R false 2007-03-15 21:15:00 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2007, 14:32 |
|
||
|
FoxPro & MSSQL
|
|||
|---|---|---|---|
|
#18+
А зачем поле varchar(1024) для assertion, если используются только 2 значения R и G? попробуйте так: cSql='update DBName.dbo.Table set holds="true", asof =(GETDATE()) where rtrim(ltrim(assertion))="R"' sqlexec(gnConnHandle,cSql) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2007, 16:37 |
|
||
|
|

start [/forum/topic.php?fid=41&fpage=209&tid=1589720]: |
0ms |
get settings: |
10ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
47ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
| others: | 235ms |
| total: | 386ms |

| 0 / 0 |
