Tworzenie tabeli, insertów / biblioteka libpq [C]

0

Cześć,

Piszę program w C na zajęcia, który ma za zadanie stworzenie tabeli w bazie danych wykorzystując plik csv.
Dane wejściowe: plik .csv formatu np.

imie;nazwisko;ulica;numer;
Jan;Kowalski;ul. Nowa;1a;11-234;
Jerzy;Nowak;ul. Konopnicka;13a/3;

Pomysł mam taki, że najpierw plik csv wrzucam do tablicy dwuwymiarowej, a nastepnie korzystając PQexec tworzę i dodaję do tabeli odpowiedznie wartościnp.
'
char *buf[256];
sprintf( buf, "CREATE TABLE naz("ip SERIAL PRIMARY KEY, %s VARCHAR(100), %s VARCHAR(100), %s VARCHAR(100), %s VARCHAR(100)",tab[0][0], tab[0][1], tab[0][2], tab[0][3] );
result = PQexec(conn, buf);
'
Powyższa komenda działa, jednak nie wiem jak sobie poradzić, gdy dodam w pliku csv kolejną kolumne. Program powinien automatycznie dostosować się do nowej kolumny.

0

Dobra, już dostałem olśnienia. Za każdym razem musze sprawdzać przy pomocy funkcji PQnfields ilość kolumn, jeśli w bazie jest już tablela o podanej nazwie to sprawdzam czy nie ma więcej kolumn. Jeśli ma więcej to przy pomocy ALTER TABLE dodaje nowe kolumny.

0

Jeszcze tylko małe pytanko z jakiej funckji korzystać, żeby z pliku csv odczytać wyraz do momentu napotkania ' ; '?

1 użytkowników online, w tym zalogowanych: 0, gości: 1