Re: [sqlite] FTS3 - operator
Thanks Dan, didn't realize that NOT completely replaced -, thought you could use them side by side. All OK now Mike > -Original Message- > From: sqlite-users-boun...@sqlite.org [mailto:sqlite-users- > boun...@sqlite.org] On Behalf Of Dan > Sent: 21 January 2009 17:14 > To: General Discussion of SQLite Database > Subject: Re: [sqlite] FTS3 - operator > > > On Jan 21, 2009, at 11:43 PM, Mike Marshall wrote: > > > Hi all > > > > > > > > Quick question > > > > > > > > Should the - operator work in FTS in conjunction with the phrase > > operator > > > > > > > > i.e. router -"ip address" > > sqlite3_step returns SQLITE_ERROR which leads me to believe its > > invalid but > > the question is should it be invalid, it seems a perfectly valid use > > of the > > syntax to me. > > Hi, > > I don't think that has ever worked. The documentation has: > >A token that is not part of a quoted phrase may be preceded by a '-' >character, which indicates that matching rows must not contain the >specified term. > > See here for more: > >http://www.sqlite.org/cvstrac/fileview?f=sqlite/ext/fts3/ > README.syntax > > Also, new versions of Fts3 support two different syntaxes. The legacy > syntax that is enabled by default and the enhanced syntax that is > enabled by defining SQLITE_ENABLE_FTS3_PARENTHESIS at compile time. > > The enhanced syntax does not support the '-' operator at all. Instead, > it uses the binary operator NOT. When using the enhanced syntax, you > can do: > > MATCH 'router NOT "ip address"' > > and things will work as expected. > > Dan. > > > > > > > > > > > > > > My code is > > > > > > > > sqlite3_stmt* pStatement; > > > > char* acSQLQuery = sqlite3_mprintf("SELECT * FROM data WHERE story > > MATCH > > '%q'",acQuery); > > > > nRet = sqlite3_prepare_v2(pDB,acSQLQuery,-1,,0); > > > > nRet = sqlite3_step(pStatement); > > > > > > > > Thanks for any help or pointers, or even just letting me know it's a > > bug so > > I can raise a ticket. > > > > > > > > Mike > > > > > > > > > > > > ___ > > sqlite-users mailing list > > sqlite-users@sqlite.org > > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users > > ___ > sqlite-users mailing list > sqlite-users@sqlite.org > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
[sqlite] Problems with FTS NEAR operator
Hi all I'm having problems with using the FTS NEAR/n operator and I'm really not sure why. Code below, any help gratefully received, the 'product NEAR announcement' produces a hit but 'product NEAR/20 announcement ' doesn't. Using 3.6.2 Thanks in advance Mike sqlite3* pHandle; sqlite3_open(":memory:",); char* acErrorMsg; int nError; char* acSQL = sqlite3_mprintf("CREATE virtual TABLE fulltext_test USING fts3 (contents)"); nError = sqlite3_exec(pHandle,acSQL,NULL,NULL,); sqlite3_free(acSQL); sqlite3_free(acErrorMsg); char* acText = "This is the text,product should be within a few words of announcement. We'll just see if it works shall we!"; acSQL = sqlite3_mprintf("INSERT INTO fulltext_test (contents) VALUES ('%q')",acText); nError = sqlite3_exec(pHandle,acSQL,NULL,NULL,); sqlite3_free(acSQL); sqlite3_free(acErrorMsg); char* acQuery = sqlite3_mprintf("SELECT * FROM fulltext_test WHERE contents MATCH 'product NEAR announcement'"); sqlite3_stmt* pStatement; nError = sqlite3_prepare_v2(pHandle,acQuery,-1,,NULL); if (sqlite3_step(pStatement) == SQLITE_ROW) { printf("Hit\n"); } sqlite3_finalize(pStatement); sqlite3_free(acQuery); acQuery = sqlite3_mprintf("SELECT * FROM fulltext_test WHERE contents MATCH 'product NEAR/20 announcement'"); nError = sqlite3_prepare_v2(pHandle,acQuery,-1,,NULL); if (sqlite3_step(pStatement) == SQLITE_ROW) { printf("Hit\n"); } sqlite3_finalize(pStatement); sqlite3_free(acQuery); sqlite3_close(pHandle); ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] SQLite under c++
Do something like this sqlite3_stmt* pStatement; vector vResults; int nError = sqlite3_prepare_v2(pHandle,"SELECT col1 FROM table",-1,,NULL); while (sqlite3_step(pStatement) == SQLITE_ROW) { vResults.push_back((char*)sqlite3_column_text(pStatement, 0)); } sqlite3_finalize(pStatement); -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Juzbrig Sent: 23 July 2008 13:31 To: sqlite-users@sqlite.org Subject: [sqlite] SQLite under c++ Hi. I am new in sqlite (before I have mysql + php experience). I have a question If my DB is alredy open sqlite3* handle; const char* baza = "cols.db3" ; char *zErrMsg = 0; sqlite3_open(test_baza,); How can I get the results of SQL "SELECT * FROM" into a string table or any c++ structure ? sqlite3_exec() doesn't seem to return any strings/chars. If anyone could write me that in code I would be grateful. -- View this message in context: http://www.nabble.com/SQLite-under-c%2B%2B-tp18609682p18609682.html Sent from the SQLite mailing list archive at Nabble.com. ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] FTS3 Question
Thanks for the help Scott, you've confirmed what I had concluded. Thanks again M -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Scott Hess Sent: 20 May 2008 17:00 To: General Discussion of SQLite Database Subject: Re: [sqlite] FTS3 Question I think you're going to have to run some code to generate the string to match against. The problem is that you need to take all of the 'query' fields from 'category' and combine them into a string like 'query1 OR query2 OR query3 OR ...'. I'm not aware of a way to do this with straight SQL. You could perhaps build an aggregate function which took strings and combined them, then it might be something like: SELECT guid FROM data WHERE text MATCH (SELECT string_join(query, ' OR ') FROM category); Otherwise, just do the join in your application code and feed it back to the match. -scott [BTW, 'query' and 'text' are probably not strong column names, being part of SQL syntax already.] On Mon, May 19, 2008 at 11:36 PM, Mike Marshall <[EMAIL PROTECTED]> wrote: > What I'm trying to do is get the query strings that are stored in category > executed against the text stored in data. Category is essentially a fixed > set of content, whilst data changes. I could just step through category and > execute each query individually, but I was looking for a way to do it in a > single operation. > > Basically ' which contain _any_ of the 'query' items from 'category'? ' > > > > -Original Message- > On Behalf Of Scott Hess > > Should the 'data' table be joinable with the 'category' table in some > way? Are you trying to match rows in 'data' which contain _all_ of > the 'query' items from 'category', or which contain _any_ of the > 'query' items from 'category'? Do you mean to have a WHERE clause or > anything on what you're pulling in from 'category'? > > As presented, you've got "I do this, it doesn't work", which I can > agree with. But I can't quite figure out what your intention for > "works" is :-). > > -scott > > > > On Sat, May 17, 2008 at 12:49 AM, Mike Marshall > <[EMAIL PROTECTED]> wrote: >> I have an FTS3 table created as follows >> >> >> >> CREATE VIRTUAL TABLE data USING fts3(guid, text) >> >> >> >> And a standard table created thus >> >> >> >> CREATE TABLE category (label, query) >> >> >> >> >> >> What I would like to be able to do is an SQL query of the form >> >> >> >> SELECT guid FROM data WHERE text MATCH SELECT query FROM category >> >> >> >> But I can't seem to get it to work. >> >> >> >> Should it work? And if it should can someone point out what I am doing >> wrong. >> >> >> >> Thanks >> >> >> >> Mike >> >> ___ >> sqlite-users mailing list >> sqlite-users@sqlite.org >> http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users >> > ___ > sqlite-users mailing list > sqlite-users@sqlite.org > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users > > ___ > sqlite-users mailing list > sqlite-users@sqlite.org > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users > ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] FTS3 Question
What I'm trying to do is get the query strings that are stored in category executed against the text stored in data. Category is essentially a fixed set of content, whilst data changes. I could just step through category and execute each query individually, but I was looking for a way to do it in a single operation. Basically ' which contain _any_ of the 'query' items from 'category'? ' -Original Message- On Behalf Of Scott Hess Should the 'data' table be joinable with the 'category' table in some way? Are you trying to match rows in 'data' which contain _all_ of the 'query' items from 'category', or which contain _any_ of the 'query' items from 'category'? Do you mean to have a WHERE clause or anything on what you're pulling in from 'category'? As presented, you've got "I do this, it doesn't work", which I can agree with. But I can't quite figure out what your intention for "works" is :-). -scott On Sat, May 17, 2008 at 12:49 AM, Mike Marshall <[EMAIL PROTECTED]> wrote: > I have an FTS3 table created as follows > > > > CREATE VIRTUAL TABLE data USING fts3(guid, text) > > > > And a standard table created thus > > > > CREATE TABLE category (label, query) > > > > > > What I would like to be able to do is an SQL query of the form > > > > SELECT guid FROM data WHERE text MATCH SELECT query FROM category > > > > But I can't seem to get it to work. > > > > Should it work? And if it should can someone point out what I am doing > wrong. > > > > Thanks > > > > Mike > > ___ > sqlite-users mailing list > sqlite-users@sqlite.org > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users > ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
[sqlite] FTS3 Question
I have an FTS3 table created as follows CREATE VIRTUAL TABLE data USING fts3(guid, text) And a standard table created thus CREATE TABLE category (label, query) What I would like to be able to do is an SQL query of the form SELECT guid FROM data WHERE text MATCH SELECT query FROM category But I can't seem to get it to work. Should it work? And if it should can someone point out what I am doing wrong. Thanks Mike ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] Param Binding Problem
Thanks to Dan and Dennis for the heads up, all works great now Mike -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Dennis Cote Sent: 12 March 2008 17:12 To: General Discussion of SQLite Database Subject: Re: [sqlite] Param Binding Problem Mike Marshall wrote: > > acQuery = sqlite3_mprintf("SELECT rowid FROM fulltext_%s WHERE contents > MATCH '? '",sTempTableRoot.c_str()); You need to remove he quotes around the ? following MATCH. With the quotes it is a literal string containing a question mark. Without them it is a parameter inthe query that you can bind some string value to later. > > nError from the prepare is SQLITE_OK but from the bind its SQLITE_RANGE > This is because you don't have any parameters to be bound. HTH Dennis Cote ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
[sqlite] Param Binding Problem
Hi all I'm trying to get param binding working and I'm obviously doing something wrong My code is acQuery = sqlite3_mprintf("SELECT rowid FROM fulltext_%s WHERE contents MATCH '? '",sTempTableRoot.c_str()); nError = sqlite3_prepare_v2(m_pHandle,acQuery,-1,,NULL); nError = sqlite3_bind_text(pStatement,1,m_sQuery.c_str(),-1,SQLITE_TRANSIENT); nError from the prepare is SQLITE_OK but from the bind its SQLITE_RANGE Anyone got any ideas where I'm going wrong, or is it the fact that I'm trying to do a bind on a MATCH (fts) that is giving me the problem. Any and all help gratefully received Mike ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
RE: [sqlite] Should the next release be 3.5.4 or 3.6.0?
Seems like a 3.5.4 to me Mike - To unsubscribe, send email to [EMAIL PROTECTED] -
RE: [sqlite] Is this a valid use of attach?
Thanks, that solved the issue, of course if I had checked the error message I would have solved it myself :( Mike -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Sent: 05 December 2007 16:27 To: sqlite-users@sqlite.org Subject: Re: [sqlite] Is this a valid use of attach? "Mike Marshall" <[EMAIL PROTECTED]> wrote: > Possibly a stupid question but I'm trying to do an attach and then query via > a single sqlite3_exec() statement. > > > > Is the following a valid use? It is if the name of your database file is literally "dbpath". But from context, I suspect you are thinking that dbpath is some kind of variable that holds the database file name. That is incorrect. Substitute the name of your file (appropriately quoted) in place of where you have written "dbpath". > > > > sqlite3_exec(pDB,"ATTACH dbpath as universe;select * from othertable where > identifier IN (select identifier from > universe.identifierlist)",cbfn,NULL,NULL); > > > > Thanks in advance > > > > Mike - To unsubscribe, send email to [EMAIL PROTECTED] - - To unsubscribe, send email to [EMAIL PROTECTED] -
[sqlite] Is this a valid use of attach?
Possibly a stupid question but I'm trying to do an attach and then query via a single sqlite3_exec() statement. Is the following a valid use? sqlite3_exec(pDB,"ATTACH dbpath as universe;select * from othertable where identifier IN (select identifier from universe.identifierlist)",cbfn,NULL,NULL); Thanks in advance Mike
RE: [sqlite] Single row insert speeds
What platform are you running on? Most of these sorts of issues that have come up before relate to the fact that SQLite is committing the data to the disc with each insert and has to ensure that the buffer has been written before it can process the next insert. IIRC there is a PRAGMA to switch this behavior off, but of course you then lose your ACID compliance which may or may not be a big deal to you. This page http://www.sqlite.org/cvstrac/wiki?p=SpeedComparison might also be useful to you. M -Original Message- From: Mark Riehl [mailto:[EMAIL PROTECTED] Sent: 03 December 2007 16:58 To: sqlite-users@sqlite.org Subject: [sqlite] Single row insert speeds I've got an application that logs real-time data. Some of the data is periodic (every few secs), other data comes more frequently. Basically, I'm not dealing with bulk inserts, so, I can't queue things up and insert all at once. I'm noticing that my insert times are pretty slow (~5-50 ms on a Intel Core 2) for a single record of ~100 bytes. Any suggestions for speeding up single row inserts? I saw some of the other threads on using transactions, but, not sure if that applied to single inserts. Here is a simple app I wrote to test the timing: int rc = sqlite3_open("mydb.db", ); for (i = 0; i < 10; i++) { printf("Executing %s\n", insertStatement); gettimeofday(, 0); rc = sqlite3_exec(db, insertStatement, NULL, NULL, ); gettimeofday(, 0); if (rc != SQLITE_OK) { ... } } printf("Before %d %d\n", before.tv_sec, before.tv_usec); printf("After %d %d\n", after.tv_sec, after.tv_usec); sleep(1); } sqlite3_close(db); Thanks for the help, Mark - To unsubscribe, send email to [EMAIL PROTECTED] - - To unsubscribe, send email to [EMAIL PROTECTED] -
RE: [sqlite] Adding additional operators to FTS3
Thanks for the quick response, much appreciated. Guess I better go and look at the query parser. Thanks again Mike -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Sent: 14 September 2007 19:22 To: sqlite-users@sqlite.org Subject: Re: [sqlite] Adding additional operators to FTS3 "Mike Marshall" <[EMAIL PROTECTED]> wrote: > > 1) We need to be able to index items such as AT, this seems like > it's a case of replacing the default tokeniser with our own implementation Correct. > > 2) A NEAR query operator so we can do things like 'foo NEAR10 bar' > which will bring back all documents that have bar within 10 words of foo > (either direction). This is the one that I'm really not sure on and having > looked at the code don't really have a clue where to start. > A NEAR operator is just a generalization of a phrase search. A phrase search is when you put two keywords in doublequotes: '"foo bar"' FTS looks for documents that contain the words foo and bar such that bar occurs immediately after foo. FTS records the index of each word in each document, so what phrase search is really doing is looking for instances of foo and bar where the index of bar is exactly one more than the index of foo. To implement NEAR10 you just have to look for instances of bar with an index that is not more than 10 different from the index on foo. Not such a big change, really. The hard part will be parsing out the NEAR10 operator. -- D. Richard Hipp <[EMAIL PROTECTED]> - To unsubscribe, send email to [EMAIL PROTECTED] - - To unsubscribe, send email to [EMAIL PROTECTED] -
[sqlite] Adding additional operators to FTS3
Hi all Currently we use SQLite in several of our products (feel free to add us to the companies page, Lexalytics - www.lexalytics.com) and are now looking at replacing the fulltext engine in one of those projects with FTS. We've done some testing etc (on fts2) and are pretty sure that it can handle the data volumes but there are a couple of issues that are preventing us from making the switch. The first one I think is solvable, the second I'm less sure on and I'm looking for some guidance / hints. 1) We need to be able to index items such as AT, this seems like it's a case of replacing the default tokeniser with our own implementation 2) A NEAR query operator so we can do things like 'foo NEAR10 bar' which will bring back all documents that have bar within 10 words of foo (either direction). This is the one that I'm really not sure on and having looked at the code don't really have a clue where to start. Precedence operators would also be nice but at the moment we can live without them J Any help or pointers greatly received. Any code that we write on this will be donated back to the project, its been a great help to us over the past year, only fair to give something back. Mike
RE: [sqlite] Skype client using SQLite?
The same file appears on the windows version -Original Message- From: Jeremy Hinegardner [mailto:[EMAIL PROTECTED] Sent: 28 August 2007 17:05 To: sqlite-users@sqlite.org Subject: Re: [sqlite] Skype client using SQLite? On Tue, Aug 28, 2007 at 03:13:47PM +, [EMAIL PROTECTED] wrote: > In reference to > >http://www.sqlite.org/cvstrac/tktview?tn=2592 > > This is the first public indication we have had that > Skype is using SQLite in their windows clients. However, > the person who wrote the ticket seems to be a bit confused. > Can any able hackers in the SQLite community confirm that > the Skype windows client is using SQLite? It would be > nice to add them to the page of high-profile users. I can confirm that there is a sqlite db in my Skype on Mac OSX In the file $HOME/Library/Application\ Support/Skype//dyncontent/bundle.dat % echo .schema | sqlite3 bundle.dat CREATE TABLE bupdate (uri text, type text, meta text, prio integer,id integer, body blob, terms blob); CREATE TABLE events (id intenger, event integer, event_time integer); CREATE TABLE install (uri text, type text, meta text, prio integer,id integer, body blob, terms blob); CREATE TABLE itemkeys (id integer, keys text); CREATE TABLE reported (id integer, exposed_cnt integer, exposed_time integer, exec_cnt integer, close_cnt integer); CREATE TABLE stats (id integer, exposed_cnt integer,exposed_time integer, exec_cnt integer, close_cnt integer,last_expose_start integer, exposing_now integer); CREATE INDEX bupdate_id on bupdate (id); CREATE INDEX bupdate_uri on bupdate (uri); CREATE INDEX events_id on events (id); CREATE INDEX install_id on install (id); CREATE INDEX install_uri on install (uri); CREATE INDEX itemkeys_id on itemkeys (id); CREATE INDEX reported_id on reported(id); CREATE INDEX stats_id on stats (id); % od -c -N 16 bundle.dat 000S Q L i t e f o r m a t 3 \0 Although in mycase, all the tables are empty. enjoy, -jeremy -- Jeremy Hinegardner [EMAIL PROTECTED] - To unsubscribe, send email to [EMAIL PROTECTED] - - To unsubscribe, send email to [EMAIL PROTECTED] -
RE: [sqlite] Trying to compile under VC.NET
Just switch off the Using Precompiled Headers directive in the project you are compiling Project -> Properties -> C/C++ -> Precompiled Headers And everything will be AOK Mike M -Original Message- From: Henning Folger [mailto:[EMAIL PROTECTED] Sent: 13 December 2005 08:08 To: sqlite-users@sqlite.org Subject: [sqlite] Trying to compile under VC.NET Hello, I am happy to find sqlite. This backend fully matches my need regarding to a projekt of mine. But i have to make some changes to fit into my project. So i tried to recompile the sources under VC.NET. On the web page i found a howto to do it, but i have no luck with it. I always get the error C1010, unexpected end of file while looking for precompiled headers. Is there anyone out who can help me or can send me an an howto or maybe a dsw-File? Thanks for your help Henning
Re: [sqlite] Errors on release mode during link
I'm guessing you have a mismatch on the code generation for the sqlite lib and the server component. Thats what normally causes that sort of error in VC. Mike M - Original Message - From: "Vanessa V. Nihues" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Wednesday, March 17, 2004 8:03 PM Subject: [sqlite] Errors on release mode during link > Hi, > > I have a client/server aplication. I compiled sqlite into a lib and > linked it in the client aplication with success. When I linked the > server side, errors happened. In the debug mode I solved the problem but > in the release mode I made the same changes from debug but the errors > persist. > The first errors were: > > Configuration: MTCPAcessorioS - Win32 Release > MinDependency > Linking... > libc.lib(atox.obj) : error LNK2005: _atol already defined in > msvcrt.lib(MSVCRT.dll) > libc.lib(crt0dat.obj) : error LNK2005: _exit already defined in > msvcrt.lib(MSVCRT.dll) > libc.lib(crt0dat.obj) : error LNK2005: __exit already defined in > msvcrt.lib(MSVCRT.dll) > libc.lib(crt0init.obj) : error LNK2005: ___xc_z already defined in > msvcrt.lib(cinitexe.obj) > libc.lib(crt0init.obj) : error LNK2005: ___xc_a already defined in > msvcrt.lib(cinitexe.obj) > libc.lib(crt0init.obj) : error LNK2005: ___xi_z already defined in > msvcrt.lib(cinitexe.obj) > libc.lib(crt0init.obj) : error LNK2005: ___xi_a already defined in > msvcrt.lib(cinitexe.obj) > LINK : warning LNK4098: defaultlib "msvcrt.lib" conflicts with use of > other libs; use /NODEFAULTLIB:library > msvcrt.lib(cinitexe.obj) : warning LNK4098: defaultlib "libc.lib" > conflicts with use of other libs; use /NODEFAULTLIB:library > libc.lib(crt0.obj) : error LNK2001: unresolved external symbol _main > \Release\CP\MTCPAcessorioS\MTCPAcessorioS.exe : fatal error LNK1120: 1 > unresolved externals > Error executing link.exe. > > MTCPAcessorioS.exe - 9 error(s), 2 warning(s) > > > I changed project settings, in the link tab, to ignore msvcrt.lib. In > the debug mode it solved the problem. But in the release mode I had the > following problems: > > Configuration: MTCPAcessorioS - Win32 Release > MinDependency > Linking... > LINK : warning LNK4049: locally defined symbol "_strncpy" imported > LINK : warning LNK4049: locally defined symbol "_atol" imported > LINK : warning LNK4049: locally defined symbol "_free" imported > LINK : warning LNK4049: locally defined symbol "_malloc" imported > LINK : warning LNK4049: locally defined symbol "_realloc" imported > ADOModule.obj : error LNK2001: unresolved external symbol __imp___mbscmp > \Release\CP\MTCPAcessorioS\MTCPAcessorioS.exe : fatal error LNK1120: 1 > unresolved externals > Error executing link.exe. > > MTCPAcessorioS.exe - 2 error(s), 5 warning(s) > > > What can I do to solve this problem? I am compiling in Microsoft Visual > C++ 6.0 and the project options are: > > /nologo /MD /W3 /GR /GX /O1 /D "NDEBUG" /D "_MBCS" /D > "_ATL_STATIC_REGISTRY" /D "_ATL_MIN_CRT" /D "_GXDLL" /D "WIN32" /D > "_WINDOWS" /D "_AFXDLL" > /Fp"\Release\CP\MTCPAcessorioS\MTCPAcessorioS.pch" /Yu"stdafx.h" > /Fo"\Release\CP\MTCPAcessorioS\\" /Fd"\Release\CP\MTCPAcessorioS\\" /FD > > > Thanks in advance, > Vanessa > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]