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

Откуда:
Сообщений: 1574
есть файл...такой вид имеет

***************************************
*           DESCRIPTION
***************************************
Cus:      Ka
Bat:         000                                               
Quantity:      1500
Plug:        F
Batch_Desc:    
Card_Manf:     OR
Pro:       15V02
Art:       474
*
Transport_key: 001
*
Address1:	eL LLC.
Address2:	zev str.,
Address3:	ty, 480,
Address4:	an
Address5:	
*
***************************************
*           INPUT VARIABLES
***************************************
var_in_list:
PL:   204 25099
S:   7000
I:   235000
Ser_nb: 5000
***************************************
*          OUTPUT VARIABLES
***************************************
var_out:ICC-Id/IMI/Acces_Crol/P/P/PI2/PU/CodM/K/C
85000 400000 0001 1045 35076 2955 219089 263876 EE52995AA82 2124D1FA9
86000 400000 0001 1045 35076 2955 219089 263876 EE52995AA82 2124D1FA8
87000 400000 0001 1045 35076 2955 219089 263876 EE52995AA82 2124D1FA7
88000 400000 0001 1045 35076 2955 219089 263876 EE52995AA82 2124D1FA6
89000 400000 0001 1045 35076 2955 219089 263876 EE52995AA82 2124D1FA5




нужно его загрузить в таблицу
чтоб было так
поле1                 поле2
Pro:       15V02   85000 400000 0001 1045 35076 2955 219089 263876 EE52995AA82 2124D1FA9
15 авг 13, 15:41    [14713808]     Ответить | Цитировать Сообщить модератору
 Re: загрузка данных  [new]
Glory
Member

Откуда:
Сообщений: 104751
Пишите парсер, который
- откроет файл
- найдет в нем нужные данные
- вернет их
15 авг 13, 15:44    [14713828]     Ответить | Цитировать Сообщить модератору
 Re: загрузка данных  [new]
dimakz
Member

Откуда:
Сообщений: 1574
нашел примерный скрипт

create table #MyTempTable
(
  StringData varchar(255)
)

BULK INSERT #MyTempTable
FROM 'C:\MyFile.txt'
WITH(CODEPAGE = 'ACP',FIRSTROW = 2, ROWTERMINATOR='\n')

create table #MyWorkTable
(
  Num        int,
  VIPName    varchar(64),
  DateStart  datetime,
  DateDetect datetime,
  DateResult datetime,
  DateClose  datetime,
  Descr      varchar(255),
  Name       varchar(255)
)

insert into #MyWorkTable (Num, VIPName, DateStart, DateDetect, DateResult, DateClose, Descr, Name)
  select
    (select cast(StringData as int)      from (select row_number() over (order by (select 1)) as rn, StringData from #MyTempTable) t where rn = 1),
    (select      StringData              from (select row_number() over (order by (select 1)) as rn, StringData from #MyTempTable) t where rn = 3),
    (select cast(StringData as datetime) from (select row_number() over (order by (select 1)) as rn, StringData from #MyTempTable) t where rn = 5),
    (select cast(StringData as datetime) from (select row_number() over (order by (select 1)) as rn, StringData from #MyTempTable) t where rn = 7),
    (select cast(StringData as datetime) from (select row_number() over (order by (select 1)) as rn, StringData from #MyTempTable) t where rn = 9),
    (select cast(StringData as datetime) from (select row_number() over (order by (select 1)) as rn, StringData from #MyTempTable) t where rn = 11),
    (select      StringData              from (select row_number() over (order by (select 1)) as rn, StringData from #MyTempTable) t where rn = 13),
    (select      StringData              from (select row_number() over (order by (select 1)) as rn, StringData from #MyTempTable) t where rn = 15)

  drop table #MyTempTable
  select * from #MyWorkTable
  drop table #MyWorkTable


но че-то не загружается файл
BULK INSERT #MyTempTable
FROM 'C:\MyFile.txt'
15 авг 13, 15:45    [14713842]     Ответить | Цитировать Сообщить модератору
 Re: загрузка данных  [new]
Гость333
Member

Откуда:
Сообщений: 3683
dimakz
че-то не загружается файл

Это вы сейчас процитировали серверное сообщение об ошибке?
15 авг 13, 15:47    [14713861]     Ответить | Цитировать Сообщить модератору
 Re: загрузка данных  [new]
dimakz
Member

Откуда:
Сообщений: 1574
ошибься все загрузилось...
т.е. теперь в табл #MyTempTable
вся инфа из файла...
теперь как сделать чтоб
в новую табл загрузить данные

поле1                 поле2
Pro:       15V02   85000 400000 0001 1045 35076 2955 219089 263876 EE52995AA82 2124D1FA9


т.е. в первое поле грузим значение 9 строки Pro: 15V02
а во второе поле грузим все что после 31 строки
15 авг 13, 15:52    [14713914]     Ответить | Цитировать Сообщить модератору
 Re: загрузка данных  [new]
Glory
Member

Откуда:
Сообщений: 104751
dimakz
т.е. в первое поле грузим значение 9 строки Pro: 15V02
а во второе поле грузим все что после 31 строки

Добавить в таблицу поле с нумерацией ?
15 авг 13, 15:54    [14713925]     Ответить | Цитировать Сообщить модератору
 Re: загрузка данных  [new]
dimakz
Member

Откуда:
Сообщений: 1574
Добавить в таблицу поле с нумерацией ?

как понять?
15 авг 13, 15:55    [14713940]     Ответить | Цитировать Сообщить модератору
 Re: загрузка данных  [new]
Glory
Member

Откуда:
Сообщений: 104751
dimakz
как понять?

Что именно ?
Что такое поле ?
Что такое добавить в таблицу ?
Что такое нумерация ?
15 авг 13, 15:57    [14713954]     Ответить | Цитировать Сообщить модератору
 Re: загрузка данных  [new]
dimakz
Member

Откуда:
Сообщений: 1574
можно пример
16 авг 13, 07:16    [14716301]     Ответить | Цитировать Сообщить модератору
 Re: загрузка данных  [new]
dimakz
Member

Откуда:
Сообщений: 1574
покажите как сделать
16 авг 13, 07:18    [14716303]     Ответить | Цитировать Сообщить модератору
 Re: загрузка данных  [new]
Glory
Member

Откуда:
Сообщений: 104751
dimakz
покажите как сделать

Открываете хелп
Ищите статью CREATE TABLE
В ней читаете про то, как создавать поля в таблице
Рассматриваете примеры
Пишите свой код
16 авг 13, 09:57    [14716785]     Ответить | Цитировать Сообщить модератору
 Re: загрузка данных  [new]
Гость333
Member

Откуда:
Сообщений: 3683
dimakz
в новую табл загрузить данные

поле1                 поле2
Pro:       15V02   85000 400000 0001 1045 35076 2955 219089 263876 EE52995AA82 2124D1FA9


т.е. в первое поле грузим значение 9 строки Pro: 15V02
а во второе поле грузим все что после 31 строки

Не очень понятно, как у вас формируется новая таблица. Где в ней 32, 33, 34 и т.д. строки из файла?
16 авг 13, 11:00    [14717203]     Ответить | Цитировать Сообщить модератору
 Re: загрузка данных  [new]
dimakz
Member

Откуда:
Сообщений: 1574
в том то и дело что я не знаю фикс.кол-во полей
оно может быть 100 а может 200
20 авг 13, 14:19    [14730935]     Ответить | Цитировать Сообщить модератору
 Re: загрузка данных  [new]
Гость333
Member

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

Предположим, что файл из первого сообщения заканчивается на 33-й строке. Покажите таблицу, которая должна получиться в итоге.
20 авг 13, 14:33    [14731014]     Ответить | Цитировать Сообщить модератору
 Re: загрузка данных  [new]
Критик
Member

Откуда: Москва / Калуга
Сообщений: 35376
Блог
dimakz
оно может быть 100 а может 200


через SSIS: Script Component как источник данных

тут почти ваш пример:
http://www.rad.pasfu.com/index.php?/archives/38-Script-Component-as-Source-SSIS.html
21 авг 13, 00:45    [14733571]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить