Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.03.26;
Скачать: [xml.tar.bz2];

Вниз

Работа с базой данных на WinApi   Найти похожие ветки 

 
Arazel ©   (2006-03-06 08:03) [0]

Плиз помогите:
1) Создать таблицу (Базу данных) например Demo.db
2) Создать поля
3) Занести что небудь в эти поля
4) Создать ключ на одном из инеркментном поле
5) Что не будь вытащить с базы например значение поля
6) Отредактировать
7) Удалить запись (Навсегда)
8) Свизать сдругой таблицой

И все это надо на чистом API

Кому не сложно?


 
Ormada ©   (2006-03-06 08:17) [1]

сложно всем! да и время терять нефиг. а вот направление куда копать укажум! хочешь это сделать - работай напрямую с длл кот используется для обработки парадоксовых таблиц(какая понятия не имею, пл MS SQL,ORACLE могу рассказать какая). Посмотри как сделана библиотека ZeosLib http://zeosforum.net.ms/


 
sniknik ©   (2006-03-06 08:52) [2]

> работай напрямую с длл кот используется для обработки парадоксовых таблиц
это будет API BDE, а просили на "чистом" (?) WinApi. это значит только с помощью того что включает модуль windows... (CreateFile/ReadFile/WriteFile/CloseHandle/...)


 
Anatoly Podgoretsky ©   (2006-03-06 08:57) [3]

WinApi не поддерживает баз данных.


 
злыдень   (2006-03-06 09:25) [4]

"Свизать" ?!
йопть. молодой человек, вы откуда? )


 
Desdechado ©   (2006-03-06 12:25) [5]

это свой движок с нуля писать
ну-ну, новичкам только этим и стоит заниматься...
на полжизни хватит


 
Arazel ©   (2006-03-06 13:39) [6]

sniknik ©   (06.03.06 08:52) [2]
а просили на "чистом" (?) WinApi.
Не совсем...

Просто надо работатьс базой без использование компонентов...


 
Desdechado ©   (2006-03-06 13:42) [7]

что ж, уже лучше
у любой СУБД есть свой API - изучай


 
Алхимик ©   (2006-03-06 13:43) [8]


> Просто надо работатьс базой без использование компонентов...

Слышал что во время поста мясо нельзя и рыбу не желательно, но про компоненты вроде ничего не сказано. :)


 
sniknik ©   (2006-03-06 14:08) [9]

> Просто надо работатьс базой без использование компонентов...
x:\Program Files\Common Files\Borland Shared\BDE\BDE32.HLP
функции начинаются с DbiXxxxx... (DbiOpenDatabase/DbiOpenTable/....)


 
Arazel ©   (2006-03-06 15:23) [10]

sniknik ©   (06.03.06 14:08) [9]
Ладно про Хелп мы все знаем... ;) Только вот времени нет на неё...
Вот если бы ты мне помог с помощью этих ф-ций открыть
локальную то есть не зарегестрированую базу то лучше... :)
Чет я пробывал и не получается открыть...


 
sniknik ©   (2006-03-06 16:10) [11]

> Ладно про Хелп мы все знаем... ;) Только вот времени нет на неё...
а, ясно. "заскок" твой, а делать это ты хочеш переложить на плечи людей которые вообще не в этом смысла. (использовать "чистый" это фактически переписать то что борланд в компонентах реализовал... так он хоть за деньги...)

> Вот если бы ты мне помог с помощью этих ф-ций открыть
помог - это если ты чегото делаеш, неполучается, выкладываеш что неполучаются, все ищут глюки говорят что не так.
если же ктото пишет и после показывает как - это заказ на разработку (примера).

> локальную то есть не зарегестрированую базу то лучше... :)
"регистрация" и с использованием компонент не обязательна. (если конечно мы одно и тоже словом "регистрация" называем...)

> Чет я пробывал и не получается открыть...
вот с того чем тут закончил надо начинать. - "пробовал .... так, неполучается ... это" (как всегда в точках все самое интересное)


 
Arazel ©   (2006-03-06 21:05) [12]

Ладно. А как с помощью IDAPI добавить запись
можно универсальную ф-цию для всех типов данных...


 
аматор ©   (2006-03-06 21:43) [13]

Привет...
может с адо, ведь оно для win родное. И зачем API, ведь есть множество компонентов работающие напрямую с многими базами. Просто, кажись, так легче будет (используя компонент).


 
sniknik ©   (2006-03-06 21:56) [14]

в хелп то всетаки глянь, раз знаеш про него...

ну модуль DBTables посмотри где за тебя борландом уже все сделано ...

> А как с помощью IDAPI добавить запись
DbiAppendRecord
DbiInsertRecord

> можно универсальную ф-цию для всех типов данных...
"запись" это не поле, это совокупность полей (строчка), у нее не может быть типа.

p.s. теорию подучи.
аматор ©   (06.03.06 21:43) [13]
ты тоже... чегонибудь почитай. ;)


 
аматор ©   (2006-03-06 22:58) [15]

чего именно? подскажите. мож и прочту, если стоит... а если ошибку увидели: УКАЖИТЕ, а не намекайте. А чего нибудь и я могу сказать, толку только не очень...
Тока ошибки то и нет, ответа я не давал, просто сказанул мыслю и всё (и вообще зачем велосипед придумывать, не, мож и надо, тока хлопотно это).


 
sniknik ©   (2006-03-07 02:03) [16]

аматор ©   (06.03.06 22:58) [15]
про "велосипед" это правильно, лучше в одиночку против компании не сделаеш. не, есть конечно отдельные моменты, чтото возможно улучшить... ведь есть же случаи когда код частных программистов брался борландом на "вооружение" (недавно даже поздравляли таких по этому поводу в потрепаться). но в общем, все, лучше не переделаеш (и уж тем более не с таким уровнем как у автора. ему бы с изучения того что есть начать, а не замахиваться на переделку и поный игнор готового...).
к тому же этот код "вылизывался" уже довольно долго.

> чего именно?
не заметил? речь про парадокс (Demo.db) парадокс даже ADO (вернее один из движков под него Jet) открывает через BDE. (роднее? ;о), дополнительный "крюк" встраивать)
можеш сказать черт с ним с Jet-ом! есть же ODBC драйвера парадокса, подключимся через ADO к ним. (???)
но. с некоторых пор, эти драйвера работают перенаправляя команды тому же Jet-у (оппа! еще один "крюк" добавили). в хелпах я этого не читал, но некоторые личные наблюдения позволяют делать подобные выводы (в ODBC стало работать то, что присуще только Jet-у, + возвращаемые ошибки от его "имени", ...)
и потом как можно вообще говорить, что чтото для win "роднее"? ADO это "сборище" ActivX-ых обьектов которые умеют общатся со своими базами, а ODBC аналогично "сборище" dll которые также передают команды своим базам... и кто "роднее"? dll старше, и "глубже" в системе. но оба части винды... скажи вот тебе что "роднее" рука или нога?
если конечно твое "win"  означало винду, если же WinApi... то как было сказано оно не поддерживает баз данных. т.к. это основа, все написано с его помощью, также и API BDE (IDAPI), и ADO (и все OLEDB-ые провайдеры) и много чего, все API работы с базами. т.е. общее в названии (application programming interfaces) вовсе не означает одно и тоже. интефейс нижнего уровня и програмный с базой не равны. (а ты их сравниваеш. дом с доской ;)
...
не получается хорошо обьяснить... ну, если коротко, то не нравится мне вот эта твоя фраза "может с адо, ведь оно для win родное.". и ADO не к месту, и сравнение неудачное.


 
Arazel ©   (2006-03-07 05:40) [17]

sniknik ©   (06.03.06 21:56) [14]
"запись" это не поле, это совокупность полей (строчка), у нее не может быть типа.
Причем тут поле!

Добовлять у меня получается но! Некоторые данные непрвельно добовляются
например Строка(PChar/String) и Числа
иногда строка непрвельно добовляется.


 
sniknik ©   (2006-03-07 08:43) [18]

> Причем тут поле!

Arazel ©   (06.03.06 21:05) [12]
> Ладно. А как с помощью IDAPI добавить запись
> можно универсальную ф-цию для всех типов данных...

говориш надо добавить запись, а после об "универсальном" для него типе данных. вот при том тут поле. тип есть у него, у записи типа нет.
т.е. типа - надо купить телегу, не обязательно гнедой масти, подойдет любая.

> Добовлять у меня получается но! Некоторые данные непрвельно добовляются
a!!!! вот тут я точно могу сказать в чем дело! - ошибка в 17й строке! ... классика ;)

p.s. вот зачем и придуманы книги (один из смыслов), в них есть толкования разных терминов (общепринятые!), можно конечно самому им значения придумать... но тогда получится "моя твоя не понимай".
p.p.s. заканчиваю на этом. вижу смысла моей "деятельности" в этой ветке нет никакого.


 
аматор ©   (2006-03-07 22:03) [19]

Про  ADO понял сразу: "классс" (и начал искать шото более интересное: без довесок, обновлений и т.д.), то что оно ребёнок ODBC знаю. Ляпнул ADO, согласен.

Свой ответ распишу более понятливее: использовать "дрова" ADO оно для винды роднее. А то что дитя малое, ну это ADO проблемы. Если правильно понял это чудо тока с ацесс работает нормально (ну может и ошибаюсь, давненько было, прогресс эт великое дело как и реклама, но для меня этот зверь вообще мельком пролетел и надеюсь с ним работать не буду, да и НЕ ХОЧУ). Отсюда и вывод...
А за "парадокс" (пардон не досмотрел), ADO его "любит", знаю раньше, только на просмотр записи выдавал.
О ADO тема, плиз, закрыта (на эту тему точно краше книгу почитать (пару раз))

Но всё это ля-ля, пардон, пример иль ссылку на книжечку, только плиз, толковую и желательно которую я еще не читал. Не мне просто вот это понравилось: "ты тоже... чегонибудь почитай. ;)" . И доводы конечно правильные, понимаю ответил тупо, но для меня сам вопрос использования API для базы не понятен (зачем издеваться без выгоды, надеюсь, (эт писать скока надо) и при этом валяется куча халявных компонентов), можна понять сишников, но здеся, кажись, дельфинисты. (Хотя, если за это "зверство" пару тыс. зелени отвалят, мона и подумать).

Да, вспомнил одну маленькую подробность: лазил по ссылкам свызаные с "джедаями" и когда-то вырыл странную баблиотеку для работы с API. Там, кажись и с базой работать через API можно, я глубоко не рыл, и, возможно, ошибаюсь. (и, если моя память не подводит, там зверели именно через ODBC. Точно не помню).

ADO у всех на языке и многим понять мона, а ODBC нет.

Надеюсь в API Вы лезете только из интереса, а не по поводу уменьшения размера (если дело в размере, то краше KOL).



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.03.26;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.52 MB
Время: 0.047 c
1-1140352984
Pit
2006-02-19 15:43
2006.03.26
Как определить полное имя exe


15-1140594075
ANB
2006-02-22 10:41
2006.03.26
Социализм vs Демократия ???


15-1141110036
Курдль
2006-02-28 10:00
2006.03.26
Критерии выбора мобильника.


3-1138777413
BBCHa
2006-02-01 10:03
2006.03.26
Запрос в несколько проходов


3-1138801962
DelphiFan
2006-02-01 16:52
2006.03.26
Фильтрация в TTable по полю ftDateTime





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский