Вверх ↑
Этот топик читают: Гость
Ответов: 26
Рейтинг: 1
#1: 2010-11-22 00:40:43 ЛС | профиль | цитата
Есть база (к примеру basa.db), мне нужно получить получить из нее колонку с артикулами, но не могу понять как правильно составить запрос.

code_21557.txt
Пример базы:
Артикул;Наименование;Закупка;%;Стоимость;Наличие
92664;Авоська BUILT "Fishnet Market Tote MFN-BRY", Black Ruspberry;990;10;1089;»»»»
92665;Авоська BUILT "Fishnet Market Tote MFN-NLS", Nolita Stripe;990;10;1089;»»»
84723;Автомобильный FM-модулятор Digma "BFT-300" (питание 12В от прикуривателя);1144;10;1258.4;»»»»

Помогите разобраться где я накосячил.
карма: 0

0
файлы: 1code_21557.txt [1.6KB] [126]
Ответов: 3349
Рейтинг: 233
#2: 2010-11-22 05:27:38 ЛС | профиль | цитата
hajikov писал(а):
Есть база (к примеру basa.db), мне нужно получить получить из нее колонку с артикулами, но не могу понять как правильно составить запрос.

Это не база данных, а просто форматированные данные. Парсинг делается так.code_21559.txt
карма: 1

0
файлы: 1code_21559.txt [520B] [138]
Ответов: 758
Рейтинг: 112
#3: 2010-11-22 10:38:04 ЛС | профиль | цитата
Вот тебе твой пример. Разбирайся

Add(MainForm,11608388,329,189)
{
Width=154
Height=463
link(onCreate,9424075:doOpen,[])
}
Add(DS_SQLite,9424075,399,203)
{
Name="DB"
FileName="basa.db"
link(onOpen,5912652:doEvent1,[])
}
Add(DSC_Query,11759369,497,210)
{
SQL="SELECT Артикул \r\nFROM Tab\r\nWHERE Артикул>0 \r\nORDER BY Артикул "
DSManager="DB"
link(onQuery,14849691:doAdd,[])
link(onError,2835190:doWork2,[(541,230)(541,279)])
}
Add(ListBox,14849691,553,210)
{
Left=10
Top=10
Width=125
Height=410
}
Add(DSC_Exec,15225438,644,154)
{
SQL="CREATE TABLE [Tab] (\r\n [Артикул] TEXT,\r\n [Наименование] TEXT,\r\n [Закупка] TEXT,\r\n [Процент] TEXT,\r\n [Стоимость] TEXT,\r\n [Наличие] TEXT);\r\n \r\nINSERT INTO Tab ('Артикул', 'Наименование', 'Закупка', 'Процент', 'Стоимость','Наличие') VALUES ('92664','Авоська BUILT "Fishnet Market Tote MFN-BRY", Black Ruspberry','990','10','1089','»»»»');\r\nINSERT INTO Tab ('Артикул', 'Наименование', 'Закупка', 'Процент', 'Стоимость','Наличие') VALUES ('92665','Авоська BUILT "Fishnet Market Tote MFN-NLS", Nolita Stripe','990','10','1089','»»»');\r\nINSERT INTO Tab ('Артикул', 'Наименование', 'Закупка', 'Процент', 'Стоимость','Наличие') VALUES ('84723','Автомобильный FM-модулятор Digma "BFT-300" (питание 12В от прикуривателя)','1144','10','1258.4','»»»»'); "
DSManager="DB"
link(onError,2835190:doWork1,[(689,167)])
}
Add(Hub,5912652,448,203)
{
link(onEvent1,3805254:doWork,[(469,209)(469,160)])
link(onEvent2,11759369:doQuery,[])
}
Add(Check,3805254,483,154)
{
Check=1
Caption="Включи для создания БД"
link(onEvent,15225438:doExec,[])
}
Add(Message,3472248,721,273)
{
}
Add(HubEx,2835190,685,273)
{
link(onEvent,3472248:doMessage,[])
}
карма: 1

1
Голосовали:hajikov
Ответов: 26
Рейтинг: 1
#4: 2010-11-23 23:23:07 ЛС | профиль | цитата
Спасибо.
карма: 0

0
Ответов: 1891
Рейтинг: 110
#5: 2010-11-25 00:40:11 ЛС | профиль | цитата
Ivann писал(а):
Это не база данных, а просто форматированные данные


Позволю с Вами не согласиться, т.к. приведенный пример базы - это ничто иное как файл csv, с которым можно работать как с базой данных через Microsoft.Jet.OLEDB.4.0 либо через Microsoft Text Driver (*.txt; *.csv).

hajikov писал(а):
Есть база (к примеру basa.db), мне нужно получить получить из нее колонку с артикулами, но не могу понять как правильно составить запрос.


hajikov, вот держи пример

карма: 0
%time%
1
Голосовали:Tad
Ответов: 16884
Рейтинг: 1239
#6: 2010-11-25 11:26:56 ЛС | профиль | цитата
Alexbootch, Ivann - Опытный, но не в БД.
hajikov, вроде так просил.(Alexbootch, взял твоё за основу)

project20_1.rar

карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
файлы: 1project20_1.rar [779B] [114]
Ответов: 1891
Рейтинг: 110
#7: 2010-11-25 12:02:40 ЛС | профиль | цитата
Tad, просто выше я не сохранил проект и скинул не доделанную схему. Вот что я хотел выложить
карма: 0
%time%
1
Голосовали:pardon
Ответов: 3349
Рейтинг: 233
#8: 2010-11-25 13:28:31 ЛС | профиль | цитата
Tad писал(а):
Alexbootch, Ivann - Опытный, но не в БД.

Чего за меня краснеть то?, да я в базах не шарю. Но зачем юзать базы ели можно просто отпарсить?
карма: 1

0
Ответов: 1379
Рейтинг: 86
#9: 2010-11-25 16:52:18 ЛС | профиль | цитата
Ivann, а зачем изобретать велосипед, когда можно использовать базы?
карма: 0

0
Ответов: 3349
Рейтинг: 233
#10: 2010-11-25 17:42:49 ЛС | профиль | цитата
petrocan, Что еще можно назвать велосипедом. Думаю моя схема будет работать быстрее.
карма: 1

0
Разработчик
Ответов: 26305
Рейтинг: 2146
#11: 2010-11-25 18:29:31 ЛС | профиль | цитата
Тут и семь пядей во лбу не надо иметь, чтобвы понять, что csv файл легче парсить, как строку, чем использовать ODBC драйвер
карма: 22

1
Голосовали:Ivann
Ответов: 3349
Рейтинг: 233
#12: 2010-11-25 18:37:20 ЛС | профиль | цитата
nesco, Я про это и говорю. Мой пример по такому принципу.
карма: 1

0
Ответов: 16884
Рейтинг: 1239
#13: 2010-11-25 20:35:36 ЛС | профиль | цитата
nesco, Ivann, смотря с какой стороны смотреть
alexbootch.rar

------------ Дoбавленo в 21.06:
nesco, как у тебя работает форум - у меня тормозит безбожо
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
1
файлы: 1alexbootch.rar [882B] [109]
Голосовали:foksov
Ответов: 3349
Рейтинг: 233
#14: 2010-11-25 21:27:59 ЛС | профиль | цитата
Tad, Задача была
hajikov писал(а):
получить из нее колонку с артикулами
Что делал мой пример, для этой цели парсинг -- лучшее решение.
карма: 1

0
Гость
Ответов: 17029
Рейтинг: 0
#15: 2010-11-25 21:38:29 правка | ЛС | профиль | цитата


Редактировалось 2 раз(а), последний 2025-01-11 03:35:11
карма: 0

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)