Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
 импорт/экспорт/Excel  [new]
/Anna/
Member

Откуда: Санк-Петербург
Сообщений: 69
Кто-нибудь помогите!!!
импорт/экспорт/Excel с чего вообще это начинается??? Надо данные из Excel закачать в базу. Мне бы хотя бы ссылочку на какое-нибудь чтиво
13 окт 06, 16:33    [3260266]     Ответить | Цитировать Сообщить модератору
 Re: импорт/экспорт/Excel  [new]
Lexa_V
Member

Откуда: Москва
Сообщений: 2554
Смотри DTS
13 окт 06, 16:34    [3260274]     Ответить | Цитировать Сообщить модератору
 Re: импорт/экспорт/Excel  [new]
madvet
Member

Откуда: Оттуда
Сообщений: 1125
Все задачи: "Import Data...", "Export Data..."
14 окт 06, 12:18    [3261881]     Ответить | Цитировать Сообщить модератору
 Re: импорт/экспорт/Excel  [new]
Benetton
Member

Откуда: Taganrog
Сообщений: 531
DECLARE @name_file VARCHAR(255);
set @name_file = '43711'

declare @dynamic_query              varchar(8000)
set @dynamic_query = '
select *
from OPENROWSET(''MSDASQL'',
                ''Driver={Microsoft Excel Driver (*.xls)};
                 DefaultDir=D:\Boris\R' + @name_file + '_03.xls'',
                 ''SELECT * FROM [R43711_03$]'')
'
exec (@dynamic_query)

"Поднимает" файл Exel как набор строк. Это если не хотите разбираться с DTS (2000) или SSIS (2005 Server).
14 окт 06, 22:26    [3262520]     Ответить | Цитировать Сообщить модератору
 Re: импорт/экспорт/Excel  [new]
dron747
Member

Откуда:
Сообщений: 257
Сохрани из Excel в текстовый файл с разделителями, а потом с помощью bcp загрузи в базу
15 окт 06, 09:15    [3262883]     Ответить | Цитировать Сообщить модератору
 Re: импорт/экспорт/Excel  [new]
/Anna/
Member

Откуда: Санк-Петербург
Сообщений: 69
Мне для понимания было бы проще использовать средствама t-sql, конструкции типа openrowset. То что Benetton подсказал.
17 окт 06, 10:08    [3269057]     Ответить | Цитировать Сообщить модератору
 Re: импорт/экспорт/Excel  [new]
/Anna/
Member

Откуда: Санк-Петербург
Сообщений: 69
Хотелось бы поподробнее где-нибудь почитать про подобные запросы))
17 окт 06, 10:10    [3269068]     Ответить | Цитировать Сообщить модератору
 Re: импорт/экспорт/Excel  [new]
Glory
Member

Откуда:
Сообщений: 104760
/Anna/
Хотелось бы поподробнее где-нибудь почитать про подобные запросы))

в BOL, например
17 окт 06, 10:27    [3269164]     Ответить | Цитировать Сообщить модератору
 Re: импорт/экспорт/Excel  [new]
wiranata
Member

Откуда: Москва
Сообщений: 45
С моей точки зрения если вы не профессиональный DBA то для подобных целей лучше освоить DTS, остальное уже изыски творчества.
17 окт 06, 11:47    [3269742]     Ответить | Цитировать Сообщить модератору
 Re: импорт/экспорт/Excel  [new]
/Anna/
Member

Откуда: Санк-Петербург
Сообщений: 69
на это
SELECT * FROM
OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;IMEX=1; Database=C:\User\test\2.xls', sheet1$)
он мне отвечает
Ad hoc access to OLE DB provider 'Microsoft.Jet.OLEDB.4.0' has been denied.
You must access this provider through a linked server.
???
17 окт 06, 13:28    [3270540]     Ответить | Цитировать Сообщить модератору
 Re: импорт/экспорт/Excel  [new]
Glory
Member

Откуда:
Сообщений: 104760
/Anna/
на это
SELECT * FROM
OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;IMEX=1; Database=C:\User\test\2.xls', sheet1$)
он мне отвечает
Ad hoc access to OLE DB provider 'Microsoft.Jet.OLEDB.4.0' has been denied.
You must access this provider through a linked server.
???

Учимся использовать поиск https://www.sql.ru/forum/actualtopics.aspx?search=Ad+hoc+access+to+OLE+DB+provider&bid=1
17 окт 06, 13:37    [3270615]     Ответить | Цитировать Сообщить модератору
 Re: импорт/экспорт/Excel  [new]
KOLCHOZ_POSTEVENT
Guest
Аннушка,вы меня простите,что предыдущие отзывы не читал,ибо,самолично это делал и довольно просто.
Открываете ексельный файл,выбираете из меню команду SAVE AS,а теперь внимательно:появляется окно захоронения файла.
Там есть список(ну под полем для имени файла)форматов для захоронения,выберете text,tab delimited,хороните файл.
Excel немного порыгается-не впечетляйтесь.
Он ляжет на диск с суфиксом .txt.
Затем,берём исходный Excel файл и хрясь его делитом,а этот новый с суфиксом .txt тихонечко переименовываем в .xls.
Никто не догадается,что это текстовый файл,табом поделённый.
Excel его откроет,как своего,а в DTS и в bcp его спокойно можно подавать,как текстовый файл,в DTS для него уже картинки заготовлены.
17 окт 06, 14:28    [3271000]     Ответить | Цитировать Сообщить модератору
 Re: импорт/экспорт/Excel  [new]
/Anna/
Member

Откуда: Санк-Петербург
Сообщений: 69
Благодарю)
Очень смутно себе все это представляю, но попробую разобраться с DTS и bcp
17 окт 06, 15:19    [3271393]     Ответить | Цитировать Сообщить модератору
 Re: импорт/экспорт/Excel  [new]
/Anna/
Member

Откуда: Санк-Петербург
Сообщений: 69
Это и есть причина :)
А решение - в данной ссылке

Сообщений: 33691 SP3 поставили ???
http://support.microsoft.com/default.aspx?scid=kb;en-us;327969&Product=sql
а данная ссылка у меня не открывается((
17 окт 06, 15:39    [3271576]     Ответить | Цитировать Сообщить модератору
 Re: импорт/экспорт/Excel  [new]
DtTimon
Member

Откуда:
Сообщений: 10
все это можно провернуть через макросы VBA (ADODB.Connection)
17 окт 06, 16:18    [3271885]     Ответить | Цитировать Сообщить модератору
 Re: импорт/экспорт/Excel  [new]
mimoza
Guest
я делаю так:
делаю импорт в Access из Excel, а потом экспорт из Access в SQL Server
17 окт 06, 16:22    [3271915]     Ответить | Цитировать Сообщить модератору
 Re: импорт/экспорт/Excel  [new]
DtTimon
Member

Откуда:
Сообщений: 10
/Anna/
Кто-нибудь помогите!!!
импорт/экспорт/Excel с чего вообще это начинается??? Надо данные из Excel закачать в базу. Мне бы хотя бы ссылочку на какое-нибудь чтиво

Вот к примеру:
sub PutDataToDB 'Запись значений в бд
dim cn as ADODB.Connection
set cn=new ADODB.Connection
cn.connectionstring = "DATABASE=ИмяБазы;DRIVER=SQL Server;SERVER=ИмяКомпаSQL;UID=логин;PWD=пароль"
cn.open
for i=1 to 10
cn.execute "insert into ИмяТаблицы values (" & cells(i,1).value & ")"
next i
cn.close
set cnothing
end sub

sub GetDataFromDB 'Извлечение записей из бд
dim cn as ADODB.Recordset
set cn=new ADODB.Recordset
cn.open "ИмяТаблицы", "DATABASE=ИмяБазы;DRIVER=SQL Server;SERVER=ИмяКомпаSQL;UID=логин;PWD=пароль"
for i=1 to 10
cn.AddNew
cn.fields(0).value= cells(i,1).value
cn.update
next i
cn.close
set cnothing
end sub
17 окт 06, 16:34    [3272024]     Ответить | Цитировать Сообщить модератору
 Re: импорт/экспорт/Excel  [new]
/Anna/
Member

Откуда: Санк-Петербург
Сообщений: 69
ПОЖАЛСТА Мне один вариант объясните до конца, а то мозг уже свело. Желательно используя OPENROWSET. ссылки на support.microsoft.com/ у меня забанены. Так что не посылайте меня туда.
17 окт 06, 16:56    [3272292]     Ответить | Цитировать Сообщить модератору
 Re: импорт/экспорт/Excel  [new]
Lexa_V
Member

Откуда: Москва
Сообщений: 2554
/Anna/
ПОЖАЛСТА Мне один вариант объясните до конца, а то мозг уже свело. Желательно используя OPENROWSET. ссылки на support.microsoft.com/ у меня забанены. Так что не посылайте меня туда.

Используй
opendatasource
только коннекшн делай под сиквельным логином;)
17 окт 06, 17:41    [3272711]     Ответить | Цитировать Сообщить модератору
 Re: импорт/экспорт/Excel  [new]
/Anna/
Member

Откуда: Санк-Петербург
Сообщений: 69
ЭЭЭЭ окей
только коннекшн делай под сиквельным логином;). Простите а это что значит??
Просто я недавно программист, да еще и + ко всему девушка, сами понимаете сложновато приходится))
17 окт 06, 18:06    [3272976]     Ответить | Цитировать Сообщить модератору
 Re: импорт/экспорт/Excel  [new]
madvet
Member

Откуда: Оттуда
Сообщений: 1125
/Anna/
Просто я недавно программист, да еще и + ко всему девушка
:)

У меня вот как работает:
SELECT * FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0','Excel 8.0;IMEX=1; Database=E:\test.xls', sheet1$)
17 окт 06, 18:46    [3273225]     Ответить | Цитировать Сообщить модератору
 Re: импорт/экспорт/Excel  [new]
Lexa_V
Member

Откуда: Москва
Сообщений: 2554
/Anna/
ЭЭЭЭ окей
только коннекшн делай под сиквельным логином;). Простите а это что значит??
Просто я недавно программист, да еще и + ко всему девушка, сами понимаете сложновато приходится))

SELECT * 
FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
  'Data Source="c:\Finance\account.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...xactions
В MS SQL Server допускается подключение к базе двух видов:
1. Трастовое, т.е. от имени виндовой учетки из ActiveDirectory (логин пароль как при входе в виндозу)
2. Сиквельное, когда на серевре SQL заводится учетная запись (логин, пароль)
Если у тебя Excel файл находится непосредственно на серваке и ты объявлешь:
Data Source="c:\Finance\account.xls";
То не важно под каким логином ты сделала коннект.
Если ты обращаешься к файлу по сетевому имени машины, типа:
Data Source="\\Finance\My_files\account.xls";
То он у тя отработает, если ты будешь запускать от имени сиквельного пользователя.
18 окт 06, 09:25    [3274437]     Ответить | Цитировать Сообщить модератору
 Re: импорт/экспорт/Excel  [new]
Lexa_V
Member

Откуда: Москва
Сообщений: 2554
/Anna/
Кто-нибудь помогите!!!
импорт/экспорт/Excel с чего вообще это начинается??? Надо данные из Excel закачать в базу. Мне бы хотя бы ссылочку на какое-нибудь чтиво

Кстати, тебе надо программно данные загрузить? Просто самый легкий способ, это зайти в Enterprise Manager. Там есть Data Transformation Services (DTS). Выбираешь Import Data. В качестве источника данных (from where) выбираешь свой excel файл. В качестве приемника табличку из бд SQL Server. И стартуешь. Короче, попробуй визардом все сделать!!! Надеюсь поможет
18 окт 06, 09:44    [3274511]     Ответить | Цитировать Сообщить модератору
 Re: импорт/экспорт/Excel  [new]
Ubaron
Member

Откуда:
Сообщений: 6
Добавлю к вопросу...
Стандартный способ "Импорт/экспорт" берем файл экселя экспортируем - все нормально. при установке на новый компьютер экселевский импорт ругается на драйвер... причем только экселевский.. текстовые идут на ура... в чем может быть загвоздка...
18 окт 06, 12:00    [3275667]     Ответить | Цитировать Сообщить модератору
 Re: импорт/экспорт/Excel  [new]
Lexa_V
Member

Откуда: Москва
Сообщений: 2554
Ubaron
Стандартный способ "Импорт/экспорт" берем файл экселя экспортируем - все нормально. при установке на новый компьютер экселевский импорт ругается на драйвер... причем только экселевский.. текстовые идут на ура... в чем может быть загвоздка...

А текст ошибки какой?
18 окт 06, 12:10    [3275758]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить