Сменил место работы, и естественно первой задачей встала незаконченная инвентаризация.
А именно, она была проведена, но система недоработана,
сбором информации занимается программа, которая делает отчет в DBF файл,
каким-то образом, этот файл перегонялся в TXT, а потом sql-ем закачивал инфу из TXT в таблицу на сервере SQL.
с закачиванием файла в таблицу, я разобрался, а вот как он из DBF делал TXT - не могу понять, если только не руками
но помнится мне, что когда-то очень давно, я мастерил sql скрипты прямо в Excel, а как забыл, может здесь зацепка?
хмм..
а сразу из dbf в sql религия не позволяет?
[/quote]
пока не могу сказать, так как сижу и разбира.юсь как у него работало,
смог найти скрипт, который загружает в БД TXT
потом нашел DBF и TXT, разница только в том, что в DBF - поля шапки
типа DATE / INVEN / FIO / NOTE
а в TXT
Дата / Инвен. Номер / ФИО / Примечание
хочу понять как работало, а потом сделать как лучше.
DECLARE @bulk_cmd varchar(1000)
SET @bulk_cmd = 'BULK INSERT dbo.dd_temp_Device
FROM ''g:\logs\inventory\device.txt''
WITH (
CODEPAGE = ''ACP'',
FIRSTROW = 2,
FIELDTERMINATOR ='''+CHAR(9)+''',
ROWTERMINATOR = ''\n'')'
EXEC(@bulk_cmd)
select *
into dbo.dd_Device
from dbo.dd_temp_Device
select * from dbo.dd_Device
create view dbo.v_dd_Device
as
select * from dbo.dd_Device
where convert (char(10),stamp,104) = (select convert (char(10),max(stamp),104) from dbo.dd_Device )
-- update dbo.dd_Device set flag = 0, stamp = getdate()
--последнее обновление
select max(stamp) from dbo.v_dd_Device
--типы оборудования
select distinct([Тип оргтехники]) from dbo.v_dd_Device
select distinct([Месторасположение оргтехники]) as [Тип оргтехники2] from dbo.v_dd_Device where [Месторасположение оргтехники] is not null