Re: [sqlite] Ideal way to check whether a table has a specific column
You could try to prepare a statement like "SELECT YourColumnName FROM YourTable;" If prepare returns an error, then likely the error message will say the column doesn't exist. If no error, it does exist. Such a simple query shouldn't take long to prepare. Probably less time then to grab the results of the pragma and test the strings therein. David --- On Tue, 11/3/09, Shaun Seckman (Firaxis)wrote: > From: Shaun Seckman (Firaxis) > Subject: [sqlite] Ideal way to check whether a table has a specific column > To: "General Discussion of SQLite Database" > Date: Tuesday, November 3, 2009, 4:25 PM > Hello all, > > I > just wanted to find out whether or not this is the > most ideal method for determining if a column exists in a > table. My > current technique is to do execute "pragma > table_info(tableName)" then > step through the results and perform a string comparison > against the > "name" column until I hit a match or I've finished stepping > through the > record set. > > > > Is there a better way? > > > > Shaun Seckman > > Firaxis Games > Programmer > > > > ___ > 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] Ideal way to check whether a table has a specific column
Hello all, I just wanted to find out whether or not this is the most ideal method for determining if a column exists in a table. My current technique is to do execute "pragma table_info(tableName)" then step through the results and perform a string comparison against the "name" column until I hit a match or I've finished stepping through the record set. Is there a better way? Shaun Seckman Firaxis Games Programmer ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] Ideal way to check whether a table has a specific column
Another way SELECT name, sql FROM sqlite_master WHERE type='table' and name ='yourtable name' the field sql will give you the full table structure as a string. Parse for your desired table name. No statements fail. On Tue, Nov 3, 2009 at 4:37 PM, Igor Tandetnikwrote: > Shaun Seckman (Firaxis) > wrote: > >I just wanted to find out whether or not this is the > > most ideal method for determining if a column exists in a table. My > > current technique is to do execute "pragma table_info(tableName)" then > > step through the results and perform a string comparison against the > > "name" column until I hit a match or I've finished stepping through > > the record set. > > > > Is there a better way? > > I guess you could just prepare a statement "select mycolumn from mytable;" > (you don't need to actually run it). If the column doesn't exist, prepare > will fail. > > Igor Tandetnik > > > ___ > sqlite-users mailing list > sqlite-users@sqlite.org > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users > -- VerifEye Technologies Inc. 905-948-0015x245 7100 Warden Ave, Unit 3 Markham ON, L3R 8B5 Canada ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] Ideal way to check whether a table has a specific column
Shaun Seckman (Firaxis)wrote: >I just wanted to find out whether or not this is the > most ideal method for determining if a column exists in a table. My > current technique is to do execute "pragma table_info(tableName)" then > step through the results and perform a string comparison against the > "name" column until I hit a match or I've finished stepping through > the record set. > > Is there a better way? I guess you could just prepare a statement "select mycolumn from mytable;" (you don't need to actually run it). If the column doesn't exist, prepare will fail. Igor Tandetnik ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users