Hi all:
I need to make an IP database. They will be stored like "unsigned long"
variables, so, their size will be 4 bytes.
The IP will be stored in the "domain" field.
The "field type" of domain is NUMERIC.
I save the data from a C program.
This is part of the code: (Note that DomainTxt is a correct domain like
"www.google.com" or similar)
...
struct hostent *hep;
...
hep=gethostbyname(DomainTxt);
...
strcpy(txtIP, inet_ntoa(*((struct in_addr *)hep->h_addr_list[i])));
ip = inet_addr(txtIP);
ip = ntohl(ip);
strcpy(sql,"INSERT into domains (domain) VALUES ('");
sprintf(nIP,"%u",ip);
strcat(sql,nIP);
strcat(sql, "')");
rc = sqlite3_exec(db, sql, callback, 0, &zErrMsg);
All goes fine: when i make a select sentence i can see that all the values
are correctly saved. But if i make this sentence:
SELECT avg(length(domain)) from domains;
The response is 10 and not 4.
¿Has had someone this problem before? ¿what i´m doing bad?
Thanks to all in advance.