Hello All,
Recently, I have installed sqlite3 and trying to get a very simple database application working with it. My application is in C++. I am trying to use sqllite3_exec and sqlite3_get_table etc to insert records into my database. I have already created a table and database pointer is already pointing to the opened database. Now I have following query to execute: my query string is: insert into sdb (id,resclass,type,manufacturer,method,ownership,precision,minrange,maxrange,capacity) values (43,'HARDWARE','MONITOR','GE','NA','XYZ',0,0,4,2) Same string on commandline works just fine. I think it might be related to string variables and escape charasters. So I tried using the following: sqlite3_exec(db,query, NULL, 0, &zErrMsg); I was getting unrecognized token: "" I also tried doing this: this char* tpquery; tpquery = sqlite3_mprintf("%q",query); Now I get SQL error near "HARDWARE": syntax error Can someone please give me some hint. Regards, --Sameer. On Tue, 28 Dec 2004, D.W. wrote: > Thank you very much to all who replied to me. I misunderstood the vacuum > function. > I had problems with my output routine because of the empty spaces. I thought > to solve the problem that way. > I have just solved the problem by using another output routine. > Regards Daniel > > > > > I have deleted some objects in my database. Now I have objects at id > > > (INTEGER PRIMARY KEY) =1,3,4,5,7,8,9,16,17,20.... . > > > id=2,6,10,.. are empty. I want to defrag the database so that I have > > objects > > > continuously at id=1,2,3,4,5,6,7,... > > > > The first question I'd have to ask is why you want to do that? If those > > primary keys are referred to by foreign keys in child tables, you'd have > to > > change all those values as well. With a large number of child tables, > this > > seems like more work than it's work. Any mistakes and you destroy your > > database's referential integrity. > > > > > Is the vacuum function not the right function? > > > > I don't believe so. I think your only recourse is to define another table > > with the same structure, then select all the records from the old one into > > the new one, delete the old one, then do the same back again to the old > > name. Unless there's some pragma or something that allows one to rename a > > table. > > > >