easy-edgedb icon indicating copy to clipboard operation
easy-edgedb copied to clipboard

Chapter 9: Errors that didn't occur, and a missing assert_single

Open stevechen opened this issue 1 year ago • 0 comments

  1. this code
for character_name in {'John Seward', 'Quincey Morris', 'Arthur Holmwood'}
select character_name ++ ' is great';

was suppose to generate error according to the description, but it worked…

  1. this code didn't work:
for character_name in {'John Seward', 'Quincey Morris', 'Arthur Holmwood'}
union (
  insert NPC {
    name := character_name,
    places_visited := (select City filter .name = 'London'),
    lover := (select Person filter .name = 'Lucy Westenra'),
  }
);

It needs a assert_single on lover:

for character_name in {'John Seward', 'Quincey Morris', 'Arthur Holmwood'}
union (
  insert NPC {
    name := character_name,
    places_visited := (select City filter .name = 'London'),
    lover := assert_single((select Person filter .name = 'Lucy Westenra')),
  }
);

stevechen avatar Jul 25 '24 15:07 stevechen