Przekazanie wartości od użytkownika do bazy danych

0

Witam
Mam zagwozdkę jak przekazać dane pobrane od użytkownika do bazy SQLite. W c++ wystarczyłoby wstawić << zmienna << i dalsza czesc kodu bazy danych, niestety w C jeszcze nie wiem, podstawienie samej zmiennej nie działa, tak samo próba np. %d, jest to wykrywane nie jako odwołanie do jakiejś zmiennej tylko jako wpisana wartość.

    printf("Marka: ");
    scanf("%s",&mark);
    printf("Imie: ");
    scanf("%s",&name);

    sql = "INSERT INTO ORDERS (MARKA, IMIE) "  \
             "VALUES ('Aston Martin', 'Kamil'); " ;

Zamiast stalych wartości "Aston Martin, "Kamil" byly wartości podane przez użytkownika.
Z góry bardzo dziękuję.

0

Wywołujesz potem metode exec? Jeśli możesz to pokaż kod, zaraz wyłapiemy o co biega. ;)

0

Sprawdź ten przykład:

#include "stdio.h"
#include "string.h"

int main(){

	char mark[50];
	char name[50];
	char sql[100];

 	printf("Marka: ");
    scanf("%s",&mark);
    printf("Imie: ");
    scanf("%s",&name);
  
	strcpy(sql, "\"INSERT INTO ORDERS (MARKA, IMIE) \" \\ \n\"VALUES (\'");
	strcat(sql, mark);
	strcat(sql, "\', \'");
	strcat(sql, name);
	strcat(sql, "\');\" ") ;

    printf("SQL=%s",sql);
}
0
kiyo napisał(a):

Wywołujesz potem metode exec? Jeśli możesz to pokaż kod, zaraz wyłapiemy o co biega. ;)

Tutaj podesłałem kod: https://pastebin.com/Jj9NMTed

0
jawlo napisał(a):

Sprawdź ten przykład:

#include "stdio.h"
#include "string.h"

int main(){

	char mark[50];
	char name[50];
	char sql[100];

 	printf("Marka: ");
    scanf("%s",&mark);
    printf("Imie: ");
    scanf("%s",&name);
  
	strcpy(sql, "\"INSERT INTO ORDERS (MARKA, IMIE) \" \\ \n\"VALUES (\'");
	strcat(sql, mark);
	strcat(sql, "\', \'");
	strcat(sql, name);
	strcat(sql, "\');\" ") ;

    printf("SQL=%s",sql);
}

Działa, tylko, że muszę to wstawić do komend od baz danych, wypisanie nic mi nie da.

0

Tutaj masz przykłady:

http://zetcode.com/db/sqlitec/

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