Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > Импорт csv файла в Oracle XE или MySql 5.0.19


Автор: Berliner 17.4.2006, 10:17
Здраствуйте нужна помощь в импортировании csv файла в SQL сервер(MYSQL,Oracle). Задача такая: приходят счета(в файле) на оплату в формате csv нужно потом делать выборки и групировки(работать с данными). Решил загнать csv файл в sql сервер и сделать так чтобы потом уже опреровать с данными на сервере(записями в таблицах). Клиента буду писать на делфи. Мне нужно чтобы помогли написать хранимую процедуру которая втягивает csv файл в сервер. И посянили какой структуры таблицу создавать. если можно продублировать тему в разделе базы данных Oracle- буду очень благодарен. Этот проект не есть коммерческий, а  учебно-вспомогательный. 
 

Автор: LSD 17.4.2006, 10:46
Цитата(Berliner @  17.4.2006,  11:17 Найти цитируемый пост)
Клиента буду писать на делфи. Мне нужно чтобы помогли написать хранимую процедуру которая втягивает csv файл в сервер.

Где ты планируешь парсить файл, в клиенте на Delphi или на сервере?

Цитата(Berliner @  17.4.2006,  11:17 Найти цитируемый пост)
И посянили какой структуры таблицу создавать.

Все зависит от того какие данные тебе приходят, именно они и будут определять структуру таблиц.

Цитата(Berliner @  17.4.2006,  11:17 Найти цитируемый пост)
если можно продублировать тему в разделе базы данных Oracle- буду очень благодарен

Не стоит, если надо будет то просто переместим туда топик. 

Автор: Berliner 17.4.2006, 11:00
Цитата

Где ты планируешь парсить файл, в клиенте на Delphi или на сервере?


думаю сервером- проще будет(типа хранимая процедура, а вызывать хариную процедуру клиентом) 

Цитата

Все зависит от того какие данные тебе приходят, именно они и будут определять структуру таблиц.


а могу я например выбрать не все данные, только те которіе мне надо?
Вот мне нужен кто то чтобы этот csv посмотрел. 

Автор: LSD 17.4.2006, 12:08
Цитата(Berliner @  17.4.2006,  12:00 Найти цитируемый пост)
думаю сервером- проще будет(типа хранимая процедура, а вызывать хариную процедуру клиентом) 

А как ты планируешь передавать данные для этой процедуры? VARCHAR2 - это всего лишь 4000 символов. Конечно хранимка может читать данные и из файла, но этот файл должен лежать на сервере.
Хранимая процедура удобна тем, что от клиента требуется только передать данные и все. Плюс она может иметь доступ к тем таблицам, к которым доступ у самого пользователя отсутсвует. А клиент удобен тем, что снижается нагрузка на сервер, плюс если ты будешь импортировать только часть данных, меньше данных будет гоняться по сети.

Цитата(Berliner @  17.4.2006,  12:00 Найти цитируемый пост)
а могу я например выбрать не все данные, только те которіе мне надо?

Можешь.

Цитата(Berliner @  17.4.2006,  12:00 Найти цитируемый пост)
Вот мне нужен кто то чтобы этот csv посмотрел.

Выкладывай. 

Автор: Berliner 17.4.2006, 12:20

спасиб.
Цитата

А как ты планируешь передавать данные для этой процедуры? VARCHAR2 - это всего лишь 4000 символов. Конечно хранимка может читать данные и из файла, но этот файл должен лежать на сервере.
Хранимая процедура удобна тем, что от клиента требуется только передать данные и все. Плюс она может иметь доступ к тем таблицам, к которым доступ у самого пользователя отсутсвует. А клиент удобен тем, что снижается нагрузка на сервер, плюс если ты будешь импортировать только часть данных, меньше данных будет гоняться по сети.


подскажите как тогда попроще - чтобы я справился с заданием(тут супер воротить на надо. Это только небольшая автоматизация) А можно попытаться и так и так сделать. 2 варианта лучше  smile 

 
Цитата

Выкладывай.


могу віслать в личку - меня на работе будут за этот файл ругать(если выложу) инфа конфединциальна 

Автор: LSD 17.4.2006, 22:22
Только что заметил что надо использовать Oracle XE. Писать разбор CSV на PL/SQL это удовольствие для очень стойких индейцев, я к таковым не отношусь. А в Oracle XE хранимки на Java писать нельзя, так что остается только разбор на клиенте. Если будешь писать клиента на Java, то ту я возможно смогу тебе чем-то помочь, но Delphi...


Цитата(Berliner @  17.4.2006,  13:20 Найти цитируемый пост)
могу віслать в личку - меня на работе будут за этот файл ругать(если выложу) инфа конфединциальна 

Высылай, только объясни что именно ты хочешь. Сам понимаешь определить нужность или не нужность полей я не могу, я не знаю всей задачи.  

Автор: Albinos_x 18.4.2006, 06:53
http://forum.vingrad.ru/index.php?showtopic=69749&hl=csv
http://forum.vingrad.ru/index.php?act=Search&CODE=show&searchid=c06bbec4c71b68e111e089266c84834c&search_in=posts&result_type=topics&flag=search&debug=&highlite=oracle&skipped= 

Автор: Berliner 18.4.2006, 09:27
Спасиб за советы буду разбираться 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)