Нужно накатать реляционную базу данных. Скорее всего, буду писать с использованием вложенного SQL, подскажите библиотечки под С, в которых реализуется SQL-интерфейс. Заранее благодарен.
Та ни. "Реляционная база данных" - это просто некая обобщённая форма связи данных. SQL - это язык работы со стандартной реляционной базой. Фсякие там MySQL и MS SQL - это конкретные реализации сервера баз данных, предоставляющие интерфейс для ИНТЕРАКТИВНОГО обращения посредством SQL. А мне нуна спроектировать вполне определённую не стевую базу с ограниченными возможностями. Это можно сделать, используя "вложенный" SQL, для этого мне нуна интерфейс между SQL и C, т.е. собственно, библиотеку. Я, конечно, могу сам накатать нужный формат данных и API к нему, но нафига изобретать велосипед?
Я таки боюсь предположить, кто такой этот "Ембеддед". Я имел в виду библиотеку, которая обеспечивает создание неких Сущностей и последующее их управление в соответсвии со стандартами SQL посредством языка C. Неуж-та никто ничего подобного не видел? Все только MySQL знают?
ты это имеешь в виду?
/скажем/
#include <stdio.h>
EXEC SQL INCLUDE SQLCA;
void showDomains(){
EXEC SQL CONNECT TO Biblio user stud using stud;
EXEC SQL BEGIN DECLARE SECTION;
short dom_id;
char dom_vardas[25];
EXEC SQL END DECLARE SECTION;
EXEC SQL DECLARE dom_curs CURSOR FOR SELECT Id, Vardas
FROM vipo3816.Domenas;
EXEC SQL OPEN dom_curs;
printf ("Id Domenas\n");
printf ("--------------\n");
while (1){
EXEC SQL FETCH dom_curs INTO :dom_id, :dom_vardas;
if (SQLCODE==100){
break;
}
printf ("%d %s\n", dom_id, dom_vardas);
}
EXEC SQL CLOSE dom_curs;
EXEC SQL CONNECT RESET;
}
Я пока что плохо себе представляю, что именно я имею в виду, именно пожтому я задаю вопросы.
Я знаю, шо такой интерфейс должон быть, вот и вопрошаю.
>EXEC SQL INCLUDE SQLCA;
Как понимать эту строчку? Чего-то я не вкурю.
Если ты пояснишь, что именно написано в приведённом тобой примере (с интимными подробностями), я буду тебе очень благодарен.
Не, ну если ты чего-то конкретно можешь сказать что лучше, я буду очень рад, ибо с этим никогда не связывался и сейчас пытаюсь выбрать оптимальное решение. Ага-ага.
Так ты что, хочешь... саму СУБД написать? Нда... возникает тогда вопросец: в каком формате саму БД хранить-то будешь?
А фсякие там оберточки (wrappers) и апишки существуют в большинстве своем под С для какой угодно СУБД. А коли сам писать интерпретатор языка SQL решил, то покопайся в учебниках по написанию компиляторов и интерпретаторов... :)
> Не, ну если ты чего-то конкретно можешь сказать что лучше, я буду очень рад, ибо с этим никогда не связывался и сейчас пытаюсь выбрать оптимальное решение. Ага-ага
Если ищешь оптимальное решение, то забудь про C. Возьми любой скриптовый язык и работай с базой через него.