set isql="C:\\Program Files(x86)\\FireBird\\FireBird_2_1\\BIN\\isql.exe"
CONNECT '127.0.0.1/3080:E:\Torgovlya54\MAIN.GDB' USER 'sysdba' PASSWORD 'masterkey';
SELECT C.CODE AS "Табельный", C.NAME AS "Ф.И.О.", T.TRANZDATE AS "Дата", max(T.TRANZTIME) AS "Время", T.INFOSTR AS "Карта" sum(T.SUMM) AS "Сумма" FROM DOCUMENT D LEFT JOIN TRANZT T ON D.ID = T.DOCUMENTID JOIN CLIENT C ON D.CLIENTID = C.ID WHERE T.TRANZDATE = cast('now' as date) and D.STATE = 1 AND D.ISFISCAL = 1 AND D.CLIENTID >=0 AND T.TRANZTYPE = '36' GROUP BY C.CODE, C.NAME, T.TRANZDATE, T.INFOSTR;
set outputfile=outputfile.txt
echo %mydt% >> %outputfile%
set isql="C:\\Program Files(x86)\\FireBird\\FireBird_2_1\\BIN\\isql.exe"
echo ^
SELECT C.CODE AS "Табельный", C.NAME AS "Ф.И.О.", T.TRANZDATE AS "Дата", max(T.TRANZTIME) AS "Время", T.INFOSTR AS "Карта" sum(T.SUMM) AS "Сумма" FROM DOCUMENT D LEFT JOIN TRANZT T ON D.ID = T.DOCUMENTID JOIN CLIENT C ON D.CLIENTID = C.ID WHERE T.TRANZDATE = cast('now' as date) and D.STATE = 1 AND D.ISFISCAL = 1 AND D.CLIENTID >=0 AND T.TRANZTYPE = '36' GROUP BY C.CODE, C.NAME, T.TRANZDATE, T.INFOSTR; ^
| %isql% 127.0.0.1/3050:E:\Torgovlya54\MAIN.GDB sysdba masterkey > outputfile.txt
set isql="C:\\Program Files(x86)\\FireBird\\FireBird_2_1\\BIN\\isql.exe"
echo ^
CONNECT '127.0.0.1/3050:E:\Torgovlya54\MAIN.GDB' USER 'sysdba' PASSWORD 'masterkey''; ^
SELECT C.CODE AS "Табельный", C.NAME AS "Ф.И.О.", T.TRANZDATE AS "Дата", max(T.TRANZTIME) AS "Время", T.INFOSTR AS "Карта", sum(T.SUMM) AS "Сумма" FROM DOCUMENT D LEFT JOIN TRANZT T ON D.ID = T.DOCUMENTID JOIN CLIENT C ON D.CLIENTID = C.ID WHERE T.TRANZDATE = cast('now' as date) and D.STATE = 1 AND D.ISFISCAL = 1 AND D.CLIENTID >=0 AND T.TRANZTYPE = '36' GROUP BY C.CODE, C.NAME, T.TRANZDATE, T.INFOSTR; ^
| %isql% > outputfile.txt
set mytime=%time%
set mydate=%date:~-10%
rem set mydate=%mydate:~6,4%%mydate:~3,2%%mydate:~0,2%
set mydt=%mydate% %mytime%
set isql="C:\\Program Files(x86)\\FireBird\\FireBird_2_1\\BIN\\isql.exe"
set inputfile=query.sql
set outputfile=outputfile.txt
echo %mydt% >> %outputfile%
%isql% -input %inputfile% -output %outputfile%
CONNECT '127.0.0.1/3050:E:\Torgovlya54\MAIN.GDB' USER 'sysdba' PASSWORD 'masterkey'';
SELECT C.CODE AS "Табельный", C.NAME AS "Ф.И.О.", T.TRANZDATE AS "Дата", max(T.TRANZTIME) AS "Время", T.INFOSTR AS "Карта", sum(T.SUMM) AS "Сумма" FROM DOCUMENT D LEFT JOIN TRANZT T ON D.ID = T.DOCUMENTID JOIN CLIENT C ON D.CLIENTID = C.ID WHERE T.TRANZDATE = cast('now' as date) and D.STATE = 1 AND D.ISFISCAL = 1 AND D.CLIENTID >=0 AND T.TRANZTYPE = '36' GROUP BY C.CODE, C.NAME, T.TRANZDATE, T.INFOSTR;
commit work;
Пока что тоже безрезультатно.
> cd c:\path\to\script_dir
> my_script.bat
set mytime=%time%
set mydate=%date:~-10%
rem set mydate=%mydate:~6,4%%mydate:~3,2%%mydate:~0,2%
set mydt=%mydate% %mytime%
set isql="C:\\Program Files(x86)\\FireBird\\FireBird_2_1\\BIN\\isql.exe"
set inputfile=query.sql
set outputfile=outputfile.txt
echo %mydt% >> %outputfile%
%isql% -input %inputfile% -output %outputfile%
CONNECT '127.0.0.1/3080:E:\Torgovlya54\MAIN.GDB' USER 'sysdba' PASSWORD 'masterkey';
SELECT C.CODE AS "Табельный", C.NAME AS "Ф.И.О.", T.TRANZDATE AS "Дата", max(T.TRANZTIME) AS "Время", T.INFOSTR AS "Карта", sum(T.SUMM) AS "Сумма" FROM DOCUMENT D LEFT JOIN TRANZT T ON D.ID = T.DOCUMENTID JOIN CLIENT C ON D.CLIENTID = C.ID WHERE T.TRANZDATE = cast('now' as date) and D.STATE = 1 AND D.ISFISCAL = 1 AND D.CLIENTID >=0 AND T.TRANZTYPE = '36' GROUP BY C.CODE, C.NAME, T.TRANZDATE, T.INFOSTR;
commit work;
1.bat 1>1.log 2>&1
Запускаю 1.bat
cd c:\путь\к\каталогу\с\батником
мой_батник.bat
set isql="C:\\Program Files(x86)\\FireBird\\FireBird_2_1\\BIN\\isql.exe"
echo SELECT C.CODE FROM CLIENT C; | %isql% 127.0.0.1/3050:E:\Torgovlya54\MAIN.GDB sysdba masterkey > outputfile.txt
set isql="C:\Program Files (x86)\FireBird\FireBird_2_1\BIN\isql.exe"
set inputfile="C:\Users\Admin\Documents\tee\query.sql"
set outputfile="C:\Users\Admin\Documents\tee\output_%Date:~6,4%%Date:~3,2%%Date:~0,2%.txt"
%isql% -i %inputfile% -o %outputfile% -q
CONNECT 'E:\Torgovlya54\MAIN.GDB' user 'SYSDBA' password 'masterkey';
SELECT C.CODE, C.NAME, T.TRANZDATE, max(T.TRANZTIME), T.INFOSTR, sum(T.SUMM) FROM DOCUMENT D LEFT JOIN TRANZT T ON D.ID = T.DOCUMENTID JOIN CLIENT C ON D.CLIENTID = C.ID WHERE T.TRANZDATE = cast('now' as date) and D.STATE = 1 AND D.ISFISCAL = 1 AND D.CLIENTID >=0 AND T.TRANZTYPE = '36' GROUP BY C.CODE, C.NAME, T.TRANZDATE, T.INFOSTR;
commit work;
после апдейта с триммированием пробелы больше не появлялисьпосле обновления таблиц? или отдельных полей?
UPDATE my_table t SET
t.my_text_field1 = stretrim(t.my_text_field1),
t.my_text_field2 = stretrim(t.my_text_field2);