Yuriy, On Sat, Dec 29, 2012 at 8:49 PM, Yuriy Kaminskiy <yum...@gmail.com> wrote: > Igor Korot wrote: >> Hi, ALL, >> >> sqlite> CREATE TABLE leagueplayers(id integer, playerid integer, value >> integer, >> currvalue double, foreign key(id) references leagues(id), foreign >> key(playerid) >> references players(playerid)); >> sqlite> INSERT INTO leagueplayers VALUES(1,(SELECT playerid,value,currvalue >> FROM >> players)); >> Error: table leagueplayers has 4 columns but 2 values were supplied >> >> AFAICT, I am trying to insert 4 values in the table. > > No, you > 1) insert *two* values: 1 and (SELECT) expression; > 2) improperly use (SELECT) expression: > There are no array type in sqlite. Only single column results is allowed for > (SELECT) expression, e.g.: > sqlite> SELECT (SELECT 1,2); > Error: only a single result allowed for a SELECT that is part of an expression > > Just only first discovered error can be returned (and in this case it was > inconsistent number of columns for insert). > >> Does anybody have an idea what is wrong? > > Correct: > > INSERT INTO leagueplayers (id, playerid, value, currvalue) > SELECT 1, playerid,value,currvalue FROM players;
That worked. Thank you. > > _______________________________________________ > 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