Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Import DBF -> SQL  [new]
KIRCOMS
Member

Откуда:
Сообщений: 74
Добрый день

Имеется

print @@version
Microsoft SQL Server 2012 - 11.0.2100.60 (X64) 
Copyright (c) Microsoft Corporation
Standard Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)


Делается импорт dbf файла по инструкции http://blogs.technet.com/b/isv_team/archive/2012/05/14/3497825.aspx

в строке подключения указываю Driver={Microsoft dBASE Driver (*.dbf)};driverid=277;dbq=C:\Sources

В итоге теряется значения 1-2 полей (поле SMO-полность, и часть TERR)

C чем может быть связано? Рекомендации по данному вопросу

P/S Подозреваю что файл в формате DBF 3

К сообщению приложен файл. Размер - 129Kb
24 июн 14, 09:12    [16209935]     Ответить | Цитировать Сообщить модератору
 Re: Import DBF -> SQL  [new]
it17
Member

Откуда:
Сообщений: 108
KIRCOMS,структура DBF?
24 июн 14, 10:32    [16210312]     Ответить | Цитировать Сообщить модератору
 Re: Import DBF -> SQL  [new]
KIRCOMS
Member

Откуда:
Сообщений: 74
CREATE TABLE [ReplySCD] (
[SNAME] varchar(80),
[FI] varchar(80),
[SI] varchar(80),
[BORNDT] date,
[SEX] smallint,
[VPOLIS] smallint,
[SCARD] varchar(32),
[NUMBLANK] varchar(40),
[SMO]  numeric(4),  --  Преобразую в   char(4),
[TERR] numeric(4),  --  Преобразую в   char(4),
[DVIZIT] date,
[DEND] date,
[ERR] varchar(40),
[ERRNAME] varchar(200)
)
24 июн 14, 13:43    [16211589]     Ответить | Цитировать Сообщить модератору
 Re: Import DBF -> SQL  [new]
DKasimov
Member

Откуда: Москва
Сообщений: 63
KIRCOMS,

А Ошибки или варминги кидает?
24 июн 14, 13:58    [16211677]     Ответить | Цитировать Сообщить модератору
 Re: Import DBF -> SQL  [new]
Konst_One
Member

Откуда:
Сообщений: 11600
[TERR] numeric(4), -- Преобразую в char(4),

а надо в varchar(4)
24 июн 14, 14:00    [16211684]     Ответить | Цитировать Сообщить модератору
 Re: Import DBF -> SQL  [new]
KIRCOMS
Member

Откуда:
Сообщений: 74
Konst_One,

А Ошибки или варминги кидает? том то и дело что не кидает насчет варсчара сейчас попробуем
24 июн 14, 14:15    [16211767]     Ответить | Цитировать Сообщить модератору
 Re: Import DBF -> SQL  [new]
KIRCOMS
Member

Откуда:
Сообщений: 74
varchar не помог Ж(
еще варианты ?
24 июн 14, 14:24    [16211807]     Ответить | Цитировать Сообщить модератору
 Re: Import DBF -> SQL  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
KIRCOMS,

оставить int и попробовать ?
24 июн 14, 14:25    [16211812]     Ответить | Цитировать Сообщить модератору
 Re: Import DBF -> SQL  [new]
KIRCOMS
Member

Откуда:
Сообщений: 74
значение поля SMO все равно теряется
24 июн 14, 14:37    [16211878]     Ответить | Цитировать Сообщить модератору
 Re: Import DBF -> SQL  [new]
DKasimov
Member

Откуда: Москва
Сообщений: 63
KIRCOMS,

А тип данных в DBF какой?
24 июн 14, 14:46    [16211934]     Ответить | Цитировать Сообщить модератору
 Re: Import DBF -> SQL  [new]
DKasimov
Member

Откуда: Москва
Сообщений: 63
KIRCOMS,

у меня все норм

К сообщению приложен файл. Размер - 81Kb
24 июн 14, 14:54    [16211986]     Ответить | Цитировать Сообщить модератору
 Re: Import DBF -> SQL  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8570
автор
Преобразую в char(4)

Значит неправильно это делаете.
24 июн 14, 16:52    [16212888]     Ответить | Цитировать Сообщить модератору
 Re: Import DBF -> SQL  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
а тупо openquery если наваять или линкед сервер - тоже самое при вычитке из таблицы происходит ?
24 июн 14, 16:56    [16212918]     Ответить | Цитировать Сообщить модератору
 Re: Import DBF -> SQL  [new]
KIRCOMS
Member

Откуда:
Сообщений: 74
А тут начинаются глючи

--Подключаем сервер.
EXEC sp_addlinkedserver
@server = N'DBFData',
@srvproduct=N'MicrosoftJet.OLEDB.4.0',
@provider=N'Microsoft.Jet.OLEDB.4.0',
@datasrc=N'C:\Sources\',
@provstr=N'dBase III'


select * from sys.servers
-- Тут региструется все 

EXEC sp_addlinkedsrvlogin 'DBFData', 'false', 'sa', 'admin', ''
go

--Перегоняем данные.
select * from DBFData...[ReplySCD]
 GO
--возникает  ошибка 
--Сообщение 7302, уровень 16, состояние 1, строка 3
--Не удалось создать экземпляр поставщика OLE DB "Microsoft.Jet.OLEDB.4.0" для связанного сервера "DBFData".


--Отключаем сервер.
EXEC sp_droplinkedsrvlogin 'DBFData', 'sa'
EXEC sp_dropserver 'DBFData'
go


еще варианты?
25 июн 14, 11:00    [16215626]     Ответить | Цитировать Сообщить модератору
 Re: Import DBF -> SQL  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
KIRCOMS,

а чего через Jet ??? DBF
25 июн 14, 11:04    [16215664]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить