Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / перенос текстового файла в IB / 13 сообщений из 13, страница 1 из 1
21.11.2003, 14:35
    #32331518
vovik_t
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенос текстового файла в IB
Мастера! Помогите. только начинаю изучать SQL.
Проблема в следующем: необходимо запихнуть текстовый файл в базу.
Создаю временную таблицу связанную с файлом EXTERNAL FILE "c:\....
Потом из нее копирую в нужную мне базу INSERT INTO .... .
Но проблема в том что нужно внести и поле типа DATE, cast() не срабатывает по той причине, что числа идут без разделителей
файл вида
7422741 27155440 031026 00000010
7420602 21218011 031025 23140480
7422533 3712643883 031026 00040020
7428051 371108772903102600090010
как быть?
...
Рейтинг: 0 / 0
21.11.2003, 14:47
    #32331543
Могун
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенос текстового файла в IB
Можно чуть внятнее?
...
Рейтинг: 0 / 0
21.11.2003, 14:52
    #32331557
vovik_t
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенос текстового файла в IB
необходимо как то преобразовать 031026 в 26 октября 2003 года или 26/10/03
...
Рейтинг: 0 / 0
21.11.2003, 14:57
    #32331564
Dnico
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенос текстового файла в IB
Посмотри стандартную UDF, там есть функции работы со строками. Формируй из 031026 строку 26/10/03. И все получится.

Best regards,
Dnico.
...
Рейтинг: 0 / 0
21.11.2003, 14:57
    #32331565
Могун
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенос текстового файла в IB
А по каким признакам вы выделяете даты из строк?
...
Рейтинг: 0 / 0
21.11.2003, 14:59
    #32331567
Могун
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенос текстового файла в IB
И на чем пишите? (Delphi, C)
...
Рейтинг: 0 / 0
21.11.2003, 15:02
    #32331575
vovik_t
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенос текстового файла в IB
Честно говоря я имею довольно смутное представление о том, что такое UDF и где его смотреть, если можно чуть чуть поподробнее.
А на счет того как я определяю порядок даты, то я этого и не делаю, я просто создаю временную таблицу с нужными мне полями и их длинной char(6) и он строчит все подряд в нужном мне порядке
...
Рейтинг: 0 / 0
21.11.2003, 15:04
    #32331579
Могун
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенос текстового файла в IB
И всё равно (лично мне) не понятно, попытайтесь сформулировать по-другому
...
Рейтинг: 0 / 0
21.11.2003, 15:07
    #32331585
vovik_t
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенос текстового файла в IB
Пишу на дельфи и впринципе это удавалось добалением в нужныж местах / и последующего преобразования из string в date но обработка занимает слишеом много времени поэтому решил поробовать сделать это на SQL может поможет? Хотя честно говоря до понедельника я занал о нем ничего.
Учусь я только
...
Рейтинг: 0 / 0
21.11.2003, 15:22
    #32331612
vovik_t
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенос текстового файла в IB
Короче говоря суть вопроса в том как в таблицу типа
CREATE TABLE Peregov (
ATC CHAR(2),
TELA CHAR(5),
KODG CHAR(13),
TELB CHAR(5),
DATA TIMESTAMP,
VREM CHAR(4),
PROD CHAR(4),
)

Запичнуть содержимое файла с такой структурой
7422741 2715544003102600000010
7420602 2121801103102523140480
Где 74 - ATC
22741 - tela
271 - kodg
55440- telb
031026 - DATA
0000- vrem
0010 - prod
...
Рейтинг: 0 / 0
21.11.2003, 15:27
    #32331623
Могун
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенос текстового файла в IB
А почему нельзя сделать так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
CREATE TABLE Peregov ( 
ATC CHAR( 2 ), 
TELA CHAR( 5 ), 
KODG CHAR( 13 ), 
TELB CHAR( 5 ), 
DATA CHAR( 6 ), 
VREM CHAR( 4 ), 
PROD CHAR( 4 ), 
) 
...
Рейтинг: 0 / 0
21.11.2003, 15:36
    #32331646
Gold
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенос текстового файла в IB
Если строка строго определённой длины, то смотри функцию SUBSTRING.
Например:

INSERT INTO CREATE TABLE Peregov (ATC,TELA,KODG,TELB,DATA,VREM,PROD)
VALUES(SUBSTRING(:VAL FROM 1 FOR 2),SUBSTRING(:VAL FROM 3 FOR 6),...);

Для даты будет SUBSTRING(:VAL ...)||'.'||SUBSTRING(:VAL ...)||'.'||SUBSTRING(:VAL ...)
...
Рейтинг: 0 / 0
21.11.2003, 15:49
    #32331672
KiLLun
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перенос текстового файла в IB
Сервер???
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / перенос текстового файла в IB / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]