functional_deps.err 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656
  1. <sql-statement>
  2. -- from http://www.depesz.com/index.php/2010/04/19/getting-unique-elements/
  3. CREATE TEMP TABLE articles (
  4. id int CONSTRAINT articles_pkey PRIMARY KEY,
  5. keywords text,
  6. title text UNIQUE NOT NULL,
  7. body text UNIQUE,
  8. created date
  9. );
  10. </sql-statement>
  11. <sql-statement>
  12. CREATE TEMP TABLE articles_in_category (
  13. article_id int,
  14. category_id int,
  15. changed date,
  16. PRIMARY KEY (article_id, category_id)
  17. );
  18. </sql-statement>
  19. <sql-statement>
  20. -- test functional dependencies based on primary keys/unique constraints
  21. -- base tables
  22. -- group by primary key (OK)
  23. SELECT id, keywords, title, body, created
  24. FROM articles
  25. GROUP BY id;
  26. </sql-statement>
  27. -stdin-:<main>: Error: Type annotation
  28. -stdin-:<main>:1:1: Error: At function: AssumeColumnOrder, At function: PgReplaceUnknown, At function: OrderedMap
  29. -- test functional dependencies based on primary keys/unique constraints
  30. ^
  31. -stdin-:<main>:1:1: Error: At function: AsStruct
  32. -- test functional dependencies based on primary keys/unique constraints
  33. ^
  34. -stdin-:<main>:4:12: Error: At function: Member
  35. SELECT id, keywords, title, body, created
  36. ^
  37. -stdin-:<main>:4:12: Error: Member not found: _alias_articles.keywords
  38. SELECT id, keywords, title, body, created
  39. ^
  40. -stdin-:<main>:4:22: Error: At function: Member
  41. SELECT id, keywords, title, body, created
  42. ^
  43. -stdin-:<main>:4:22: Error: Member not found: _alias_articles.title
  44. SELECT id, keywords, title, body, created
  45. ^
  46. -stdin-:<main>:4:29: Error: At function: Member
  47. SELECT id, keywords, title, body, created
  48. ^
  49. -stdin-:<main>:4:29: Error: Member not found: _alias_articles.body
  50. SELECT id, keywords, title, body, created
  51. ^
  52. -stdin-:<main>:4:35: Error: At function: Member
  53. SELECT id, keywords, title, body, created
  54. ^
  55. -stdin-:<main>:4:35: Error: Member not found: _alias_articles.created
  56. SELECT id, keywords, title, body, created
  57. ^
  58. <sql-statement>
  59. -- group by unique not null (fail/todo)
  60. SELECT id, keywords, title, body, created
  61. FROM articles
  62. GROUP BY title;
  63. </sql-statement>
  64. -stdin-:<main>: Error: Type annotation
  65. -stdin-:<main>:1:1: Error: At function: AssumeColumnOrder, At function: PgReplaceUnknown, At function: OrderedMap
  66. -- group by unique not null (fail/todo)
  67. ^
  68. -stdin-:<main>:1:1: Error: At function: AsStruct
  69. -- group by unique not null (fail/todo)
  70. ^
  71. -stdin-:<main>:2:8: Error: At function: Member
  72. SELECT id, keywords, title, body, created
  73. ^
  74. -stdin-:<main>:2:8: Error: Member not found: _alias_articles.id
  75. SELECT id, keywords, title, body, created
  76. ^
  77. -stdin-:<main>:2:12: Error: At function: Member
  78. SELECT id, keywords, title, body, created
  79. ^
  80. -stdin-:<main>:2:12: Error: Member not found: _alias_articles.keywords
  81. SELECT id, keywords, title, body, created
  82. ^
  83. -stdin-:<main>:2:29: Error: At function: Member
  84. SELECT id, keywords, title, body, created
  85. ^
  86. -stdin-:<main>:2:29: Error: Member not found: _alias_articles.body
  87. SELECT id, keywords, title, body, created
  88. ^
  89. -stdin-:<main>:2:35: Error: At function: Member
  90. SELECT id, keywords, title, body, created
  91. ^
  92. -stdin-:<main>:2:35: Error: Member not found: _alias_articles.created
  93. SELECT id, keywords, title, body, created
  94. ^
  95. <sql-statement>
  96. -- group by unique nullable (fail)
  97. SELECT id, keywords, title, body, created
  98. FROM articles
  99. GROUP BY body;
  100. </sql-statement>
  101. -stdin-:<main>: Error: Type annotation
  102. -stdin-:<main>:1:1: Error: At function: AssumeColumnOrder, At function: PgReplaceUnknown, At function: OrderedMap
  103. -- group by unique nullable (fail)
  104. ^
  105. -stdin-:<main>:1:1: Error: At function: AsStruct
  106. -- group by unique nullable (fail)
  107. ^
  108. -stdin-:<main>:2:8: Error: At function: Member
  109. SELECT id, keywords, title, body, created
  110. ^
  111. -stdin-:<main>:2:8: Error: Member not found: _alias_articles.id
  112. SELECT id, keywords, title, body, created
  113. ^
  114. -stdin-:<main>:2:12: Error: At function: Member
  115. SELECT id, keywords, title, body, created
  116. ^
  117. -stdin-:<main>:2:12: Error: Member not found: _alias_articles.keywords
  118. SELECT id, keywords, title, body, created
  119. ^
  120. -stdin-:<main>:2:22: Error: At function: Member
  121. SELECT id, keywords, title, body, created
  122. ^
  123. -stdin-:<main>:2:22: Error: Member not found: _alias_articles.title
  124. SELECT id, keywords, title, body, created
  125. ^
  126. -stdin-:<main>:2:35: Error: At function: Member
  127. SELECT id, keywords, title, body, created
  128. ^
  129. -stdin-:<main>:2:35: Error: Member not found: _alias_articles.created
  130. SELECT id, keywords, title, body, created
  131. ^
  132. <sql-statement>
  133. -- group by something else (fail)
  134. SELECT id, keywords, title, body, created
  135. FROM articles
  136. GROUP BY keywords;
  137. </sql-statement>
  138. -stdin-:<main>: Error: Type annotation
  139. -stdin-:<main>:1:1: Error: At function: AssumeColumnOrder, At function: PgReplaceUnknown, At function: OrderedMap
  140. -- group by something else (fail)
  141. ^
  142. -stdin-:<main>:1:1: Error: At function: AsStruct
  143. -- group by something else (fail)
  144. ^
  145. -stdin-:<main>:2:8: Error: At function: Member
  146. SELECT id, keywords, title, body, created
  147. ^
  148. -stdin-:<main>:2:8: Error: Member not found: _alias_articles.id
  149. SELECT id, keywords, title, body, created
  150. ^
  151. -stdin-:<main>:2:22: Error: At function: Member
  152. SELECT id, keywords, title, body, created
  153. ^
  154. -stdin-:<main>:2:22: Error: Member not found: _alias_articles.title
  155. SELECT id, keywords, title, body, created
  156. ^
  157. -stdin-:<main>:2:29: Error: At function: Member
  158. SELECT id, keywords, title, body, created
  159. ^
  160. -stdin-:<main>:2:29: Error: Member not found: _alias_articles.body
  161. SELECT id, keywords, title, body, created
  162. ^
  163. -stdin-:<main>:2:35: Error: At function: Member
  164. SELECT id, keywords, title, body, created
  165. ^
  166. -stdin-:<main>:2:35: Error: Member not found: _alias_articles.created
  167. SELECT id, keywords, title, body, created
  168. ^
  169. <sql-statement>
  170. -- multiple tables
  171. -- group by primary key (OK)
  172. SELECT a.id, a.keywords, a.title, a.body, a.created
  173. FROM articles AS a, articles_in_category AS aic
  174. WHERE a.id = aic.article_id AND aic.category_id in (14,62,70,53,138)
  175. GROUP BY a.id;
  176. </sql-statement>
  177. -stdin-:<main>: Error: Type annotation
  178. -stdin-:<main>:1:1: Error: At function: AssumeColumnOrder, At function: PgReplaceUnknown, At function: OrderedMap
  179. -- multiple tables
  180. ^
  181. -stdin-:<main>:1:1: Error: At function: AsStruct
  182. -- multiple tables
  183. ^
  184. -stdin-:<main>:3:14: Error: At function: Member
  185. SELECT a.id, a.keywords, a.title, a.body, a.created
  186. ^
  187. -stdin-:<main>:3:14: Error: Member not found: _alias_a.keywords
  188. SELECT a.id, a.keywords, a.title, a.body, a.created
  189. ^
  190. -stdin-:<main>:3:26: Error: At function: Member
  191. SELECT a.id, a.keywords, a.title, a.body, a.created
  192. ^
  193. -stdin-:<main>:3:26: Error: Member not found: _alias_a.title
  194. SELECT a.id, a.keywords, a.title, a.body, a.created
  195. ^
  196. -stdin-:<main>:3:35: Error: At function: Member
  197. SELECT a.id, a.keywords, a.title, a.body, a.created
  198. ^
  199. -stdin-:<main>:3:35: Error: Member not found: _alias_a.body
  200. SELECT a.id, a.keywords, a.title, a.body, a.created
  201. ^
  202. -stdin-:<main>:3:43: Error: At function: Member
  203. SELECT a.id, a.keywords, a.title, a.body, a.created
  204. ^
  205. -stdin-:<main>:3:43: Error: Member not found: _alias_a.created
  206. SELECT a.id, a.keywords, a.title, a.body, a.created
  207. ^
  208. <sql-statement>
  209. -- group by something else (fail)
  210. SELECT a.id, a.keywords, a.title, a.body, a.created
  211. FROM articles AS a, articles_in_category AS aic
  212. WHERE a.id = aic.article_id AND aic.category_id in (14,62,70,53,138)
  213. GROUP BY aic.article_id, aic.category_id;
  214. </sql-statement>
  215. -stdin-:<main>: Error: Type annotation
  216. -stdin-:<main>:1:1: Error: At function: AssumeColumnOrder, At function: PgReplaceUnknown, At function: OrderedMap
  217. -- group by something else (fail)
  218. ^
  219. -stdin-:<main>:1:1: Error: At function: AsStruct
  220. -- group by something else (fail)
  221. ^
  222. -stdin-:<main>:2:8: Error: At function: Member
  223. SELECT a.id, a.keywords, a.title, a.body, a.created
  224. ^
  225. -stdin-:<main>:2:8: Error: Member not found: _alias_a.id
  226. SELECT a.id, a.keywords, a.title, a.body, a.created
  227. ^
  228. -stdin-:<main>:2:14: Error: At function: Member
  229. SELECT a.id, a.keywords, a.title, a.body, a.created
  230. ^
  231. -stdin-:<main>:2:14: Error: Member not found: _alias_a.keywords
  232. SELECT a.id, a.keywords, a.title, a.body, a.created
  233. ^
  234. -stdin-:<main>:2:26: Error: At function: Member
  235. SELECT a.id, a.keywords, a.title, a.body, a.created
  236. ^
  237. -stdin-:<main>:2:26: Error: Member not found: _alias_a.title
  238. SELECT a.id, a.keywords, a.title, a.body, a.created
  239. ^
  240. -stdin-:<main>:2:35: Error: At function: Member
  241. SELECT a.id, a.keywords, a.title, a.body, a.created
  242. ^
  243. -stdin-:<main>:2:35: Error: Member not found: _alias_a.body
  244. SELECT a.id, a.keywords, a.title, a.body, a.created
  245. ^
  246. -stdin-:<main>:2:43: Error: At function: Member
  247. SELECT a.id, a.keywords, a.title, a.body, a.created
  248. ^
  249. -stdin-:<main>:2:43: Error: Member not found: _alias_a.created
  250. SELECT a.id, a.keywords, a.title, a.body, a.created
  251. ^
  252. <sql-statement>
  253. -- JOIN syntax
  254. -- group by left table's primary key (OK)
  255. SELECT a.id, a.keywords, a.title, a.body, a.created
  256. FROM articles AS a JOIN articles_in_category AS aic ON a.id = aic.article_id
  257. WHERE aic.category_id in (14,62,70,53,138)
  258. GROUP BY a.id;
  259. </sql-statement>
  260. -stdin-:<main>: Error: Type annotation
  261. -stdin-:<main>:1:1: Error: At function: AssumeColumnOrder, At function: PgReplaceUnknown, At function: OrderedMap
  262. -- JOIN syntax
  263. ^
  264. -stdin-:<main>:1:1: Error: At function: AsStruct
  265. -- JOIN syntax
  266. ^
  267. -stdin-:<main>:3:14: Error: At function: Member
  268. SELECT a.id, a.keywords, a.title, a.body, a.created
  269. ^
  270. -stdin-:<main>:3:14: Error: Member not found: _alias_a.keywords
  271. SELECT a.id, a.keywords, a.title, a.body, a.created
  272. ^
  273. -stdin-:<main>:3:26: Error: At function: Member
  274. SELECT a.id, a.keywords, a.title, a.body, a.created
  275. ^
  276. -stdin-:<main>:3:26: Error: Member not found: _alias_a.title
  277. SELECT a.id, a.keywords, a.title, a.body, a.created
  278. ^
  279. -stdin-:<main>:3:35: Error: At function: Member
  280. SELECT a.id, a.keywords, a.title, a.body, a.created
  281. ^
  282. -stdin-:<main>:3:35: Error: Member not found: _alias_a.body
  283. SELECT a.id, a.keywords, a.title, a.body, a.created
  284. ^
  285. -stdin-:<main>:3:43: Error: At function: Member
  286. SELECT a.id, a.keywords, a.title, a.body, a.created
  287. ^
  288. -stdin-:<main>:3:43: Error: Member not found: _alias_a.created
  289. SELECT a.id, a.keywords, a.title, a.body, a.created
  290. ^
  291. <sql-statement>
  292. -- group by something else (fail)
  293. SELECT a.id, a.keywords, a.title, a.body, a.created
  294. FROM articles AS a JOIN articles_in_category AS aic ON a.id = aic.article_id
  295. WHERE aic.category_id in (14,62,70,53,138)
  296. GROUP BY aic.article_id, aic.category_id;
  297. </sql-statement>
  298. -stdin-:<main>: Error: Type annotation
  299. -stdin-:<main>:1:1: Error: At function: AssumeColumnOrder, At function: PgReplaceUnknown, At function: OrderedMap
  300. -- group by something else (fail)
  301. ^
  302. -stdin-:<main>:1:1: Error: At function: AsStruct
  303. -- group by something else (fail)
  304. ^
  305. -stdin-:<main>:2:8: Error: At function: Member
  306. SELECT a.id, a.keywords, a.title, a.body, a.created
  307. ^
  308. -stdin-:<main>:2:8: Error: Member not found: _alias_a.id
  309. SELECT a.id, a.keywords, a.title, a.body, a.created
  310. ^
  311. -stdin-:<main>:2:14: Error: At function: Member
  312. SELECT a.id, a.keywords, a.title, a.body, a.created
  313. ^
  314. -stdin-:<main>:2:14: Error: Member not found: _alias_a.keywords
  315. SELECT a.id, a.keywords, a.title, a.body, a.created
  316. ^
  317. -stdin-:<main>:2:26: Error: At function: Member
  318. SELECT a.id, a.keywords, a.title, a.body, a.created
  319. ^
  320. -stdin-:<main>:2:26: Error: Member not found: _alias_a.title
  321. SELECT a.id, a.keywords, a.title, a.body, a.created
  322. ^
  323. -stdin-:<main>:2:35: Error: At function: Member
  324. SELECT a.id, a.keywords, a.title, a.body, a.created
  325. ^
  326. -stdin-:<main>:2:35: Error: Member not found: _alias_a.body
  327. SELECT a.id, a.keywords, a.title, a.body, a.created
  328. ^
  329. -stdin-:<main>:2:43: Error: At function: Member
  330. SELECT a.id, a.keywords, a.title, a.body, a.created
  331. ^
  332. -stdin-:<main>:2:43: Error: Member not found: _alias_a.created
  333. SELECT a.id, a.keywords, a.title, a.body, a.created
  334. ^
  335. <sql-statement>
  336. -- group by right table's (composite) primary key (OK)
  337. SELECT aic.changed
  338. FROM articles AS a JOIN articles_in_category AS aic ON a.id = aic.article_id
  339. WHERE aic.category_id in (14,62,70,53,138)
  340. GROUP BY aic.category_id, aic.article_id;
  341. </sql-statement>
  342. -stdin-:<main>: Error: Type annotation
  343. -stdin-:<main>:1:1: Error: At function: AssumeColumnOrder, At function: PgReplaceUnknown, At function: OrderedMap, At function: AsStruct
  344. -- group by right table's (composite) primary key (OK)
  345. ^
  346. -stdin-:<main>:2:8: Error: At function: Member
  347. SELECT aic.changed
  348. ^
  349. -stdin-:<main>:2:8: Error: Member not found: _alias_aic.changed
  350. SELECT aic.changed
  351. ^
  352. <sql-statement>
  353. -- group by right table's partial primary key (fail)
  354. SELECT aic.changed
  355. FROM articles AS a JOIN articles_in_category AS aic ON a.id = aic.article_id
  356. WHERE aic.category_id in (14,62,70,53,138)
  357. GROUP BY aic.article_id;
  358. </sql-statement>
  359. -stdin-:<main>: Error: Type annotation
  360. -stdin-:<main>:1:1: Error: At function: AssumeColumnOrder, At function: PgReplaceUnknown, At function: OrderedMap, At function: AsStruct
  361. -- group by right table's partial primary key (fail)
  362. ^
  363. -stdin-:<main>:2:8: Error: At function: Member
  364. SELECT aic.changed
  365. ^
  366. -stdin-:<main>:2:8: Error: Member not found: _alias_aic.changed
  367. SELECT aic.changed
  368. ^
  369. <sql-statement>
  370. -- example from documentation
  371. CREATE TEMP TABLE products (product_id int, name text, price numeric);
  372. </sql-statement>
  373. <sql-statement>
  374. CREATE TEMP TABLE sales (product_id int, units int);
  375. </sql-statement>
  376. <sql-statement>
  377. -- OK
  378. SELECT product_id, p.name, (sum(s.units) * p.price) AS sales
  379. FROM products p LEFT JOIN sales s USING (product_id)
  380. GROUP BY product_id, p.name, p.price;
  381. </sql-statement>
  382. -stdin-:<main>: Error: Type annotation
  383. -stdin-:<main>:1:1: Error: At function: AssumeColumnOrder, At function: PgReplaceUnknown, At function: OrderedMap, At function: UnionAll, At function: Aggregate, At function: OrderedMap, At function: OrderedMap, At function: FlattenMembers
  384. -- OK
  385. ^
  386. -stdin-:<main>:1:1: Error: Duplicated member: product_id
  387. -- OK
  388. ^
  389. <sql-statement>
  390. -- fail
  391. SELECT product_id, p.name, (sum(s.units) * p.price) AS sales
  392. FROM products p LEFT JOIN sales s USING (product_id)
  393. GROUP BY product_id;
  394. </sql-statement>
  395. -stdin-:<main>: Error: Type annotation
  396. -stdin-:<main>:1:1: Error: At function: AssumeColumnOrder, At function: PgReplaceUnknown, At function: OrderedMap, At function: UnionAll, At function: Aggregate, At function: OrderedMap, At function: OrderedMap, At function: FlattenMembers
  397. -- fail
  398. ^
  399. -stdin-:<main>:1:1: Error: Duplicated member: product_id
  400. -- fail
  401. ^
  402. <sql-statement>
  403. ALTER TABLE products ADD PRIMARY KEY (product_id);
  404. </sql-statement>
  405. -stdin-:<main>: Error: Parse Sql
  406. -stdin-:<main>:1:1: Error: alternative is not implemented yet : 245
  407. ALTER TABLE products ADD PRIMARY KEY (product_id);
  408. ^
  409. <sql-statement>
  410. -- OK now
  411. SELECT product_id, p.name, (sum(s.units) * p.price) AS sales
  412. FROM products p LEFT JOIN sales s USING (product_id)
  413. GROUP BY product_id;
  414. </sql-statement>
  415. -stdin-:<main>: Error: Type annotation
  416. -stdin-:<main>:1:1: Error: At function: AssumeColumnOrder, At function: PgReplaceUnknown, At function: OrderedMap, At function: UnionAll, At function: Aggregate, At function: OrderedMap, At function: OrderedMap, At function: FlattenMembers
  417. -- OK now
  418. ^
  419. -stdin-:<main>:1:1: Error: Duplicated member: product_id
  420. -- OK now
  421. ^
  422. <sql-statement>
  423. -- Drupal example, http://drupal.org/node/555530
  424. CREATE TEMP TABLE node (
  425. nid SERIAL,
  426. vid integer NOT NULL default '0',
  427. type varchar(32) NOT NULL default '',
  428. title varchar(128) NOT NULL default '',
  429. uid integer NOT NULL default '0',
  430. status integer NOT NULL default '1',
  431. created integer NOT NULL default '0',
  432. -- snip
  433. PRIMARY KEY (nid, vid)
  434. );
  435. </sql-statement>
  436. <sql-statement>
  437. CREATE TEMP TABLE users (
  438. uid integer NOT NULL default '0',
  439. name varchar(60) NOT NULL default '',
  440. pass varchar(32) NOT NULL default '',
  441. -- snip
  442. PRIMARY KEY (uid),
  443. UNIQUE (name)
  444. );
  445. </sql-statement>
  446. <sql-statement>
  447. -- OK
  448. SELECT u.uid, u.name FROM node n
  449. INNER JOIN users u ON u.uid = n.uid
  450. WHERE n.type = 'blog' AND n.status = 1
  451. GROUP BY u.uid, u.name;
  452. </sql-statement>
  453. <sql-statement>
  454. -- OK
  455. SELECT u.uid, u.name FROM node n
  456. INNER JOIN users u ON u.uid = n.uid
  457. WHERE n.type = 'blog' AND n.status = 1
  458. GROUP BY u.uid;
  459. </sql-statement>
  460. -stdin-:<main>: Error: Type annotation
  461. -stdin-:<main>:1:1: Error: At function: AssumeColumnOrder, At function: PgReplaceUnknown, At function: OrderedMap, At function: AsStruct
  462. -- OK
  463. ^
  464. -stdin-:<main>:2:15: Error: At function: Member
  465. SELECT u.uid, u.name FROM node n
  466. ^
  467. -stdin-:<main>:2:15: Error: Member not found: _alias_u.name
  468. SELECT u.uid, u.name FROM node n
  469. ^
  470. <sql-statement>
  471. -- Check views and dependencies
  472. -- fail
  473. CREATE TEMP VIEW fdv1 AS
  474. SELECT id, keywords, title, body, created
  475. FROM articles
  476. GROUP BY body;
  477. </sql-statement>
  478. -stdin-:<main>: Error: Parse Sql
  479. -stdin-:<main>:1:1: Error: expected at least one target column
  480. -- Check views and dependencies
  481. ^
  482. <sql-statement>
  483. -- OK
  484. CREATE TEMP VIEW fdv1 AS
  485. SELECT id, keywords, title, body, created
  486. FROM articles
  487. GROUP BY id;
  488. </sql-statement>
  489. -stdin-:<main>: Error: Parse Sql
  490. -stdin-:<main>:1:1: Error: expected at least one target column
  491. -- OK
  492. ^
  493. <sql-statement>
  494. -- fail
  495. ALTER TABLE articles DROP CONSTRAINT articles_pkey RESTRICT;
  496. </sql-statement>
  497. -stdin-:<main>: Error: Parse Sql
  498. -stdin-:<main>:1:1: Error: alternative is not implemented yet : 245
  499. -- fail
  500. ^
  501. <sql-statement>
  502. DROP VIEW fdv1;
  503. </sql-statement>
  504. -stdin-:<main>: Error: Parse Sql
  505. -stdin-:<main>:1:1: Error: View not found: 'fdv1'
  506. DROP VIEW fdv1;
  507. ^
  508. <sql-statement>
  509. -- multiple dependencies
  510. CREATE TEMP VIEW fdv2 AS
  511. SELECT a.id, a.keywords, a.title, aic.category_id, aic.changed
  512. FROM articles AS a JOIN articles_in_category AS aic ON a.id = aic.article_id
  513. WHERE aic.category_id in (14,62,70,53,138)
  514. GROUP BY a.id, aic.category_id, aic.article_id;
  515. </sql-statement>
  516. -stdin-:<main>: Error: Parse Sql
  517. -stdin-:<main>:1:1: Error: expected at least one target column
  518. -- multiple dependencies
  519. ^
  520. <sql-statement>
  521. ALTER TABLE articles DROP CONSTRAINT articles_pkey RESTRICT; -- fail
  522. </sql-statement>
  523. -stdin-:<main>: Error: Parse Sql
  524. -stdin-:<main>:1:1: Error: alternative is not implemented yet : 245
  525. ALTER TABLE articles DROP CONSTRAINT articles_pkey RESTRICT; -- fail
  526. ^
  527. <sql-statement>
  528. ALTER TABLE articles_in_category DROP CONSTRAINT articles_in_category_pkey RESTRICT; --fail
  529. </sql-statement>
  530. -stdin-:<main>: Error: Parse Sql
  531. -stdin-:<main>:1:1: Error: alternative is not implemented yet : 245
  532. ALTER TABLE articles_in_category DROP CONSTRAINT articles_in_category_pkey RESTRICT; --fail
  533. ^
  534. <sql-statement>
  535. DROP VIEW fdv2;
  536. </sql-statement>
  537. -stdin-:<main>: Error: Parse Sql
  538. -stdin-:<main>:1:1: Error: View not found: 'fdv2'
  539. DROP VIEW fdv2;
  540. ^
  541. <sql-statement>
  542. -- nested queries
  543. CREATE TEMP VIEW fdv3 AS
  544. SELECT id, keywords, title, body, created
  545. FROM articles
  546. GROUP BY id
  547. UNION
  548. SELECT id, keywords, title, body, created
  549. FROM articles
  550. GROUP BY id;
  551. </sql-statement>
  552. -stdin-:<main>: Error: Parse Sql
  553. -stdin-:<main>:1:1: Error: expected at least one target column
  554. -- nested queries
  555. ^
  556. <sql-statement>
  557. ALTER TABLE articles DROP CONSTRAINT articles_pkey RESTRICT; -- fail
  558. </sql-statement>
  559. -stdin-:<main>: Error: Parse Sql
  560. -stdin-:<main>:1:1: Error: alternative is not implemented yet : 245
  561. ALTER TABLE articles DROP CONSTRAINT articles_pkey RESTRICT; -- fail
  562. ^
  563. <sql-statement>
  564. DROP VIEW fdv3;
  565. </sql-statement>
  566. -stdin-:<main>: Error: Parse Sql
  567. -stdin-:<main>:1:1: Error: View not found: 'fdv3'
  568. DROP VIEW fdv3;
  569. ^
  570. <sql-statement>
  571. CREATE TEMP VIEW fdv4 AS
  572. SELECT * FROM articles WHERE title IN (SELECT title FROM articles GROUP BY id);
  573. </sql-statement>
  574. -stdin-:<main>: Error: Parse Sql
  575. -stdin-:<main>:1:1: Error: expected at least one target column
  576. CREATE TEMP VIEW fdv4 AS
  577. ^
  578. <sql-statement>
  579. ALTER TABLE articles DROP CONSTRAINT articles_pkey RESTRICT; -- fail
  580. </sql-statement>
  581. -stdin-:<main>: Error: Parse Sql
  582. -stdin-:<main>:1:1: Error: alternative is not implemented yet : 245
  583. ALTER TABLE articles DROP CONSTRAINT articles_pkey RESTRICT; -- fail
  584. ^
  585. <sql-statement>
  586. DROP VIEW fdv4;
  587. </sql-statement>
  588. -stdin-:<main>: Error: Parse Sql
  589. -stdin-:<main>:1:1: Error: View not found: 'fdv4'
  590. DROP VIEW fdv4;
  591. ^
  592. <sql-statement>
  593. -- prepared query plans: this results in failure on reuse
  594. PREPARE foo AS
  595. SELECT id, keywords, title, body, created
  596. FROM articles
  597. GROUP BY id;
  598. </sql-statement>
  599. -stdin-:<main>: Error: Parse Sql
  600. -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 301
  601. -- prepared query plans: this results in failure on reuse
  602. ^
  603. <sql-statement>
  604. EXECUTE foo;
  605. </sql-statement>
  606. -stdin-:<main>: Error: Parse Sql
  607. -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 302
  608. EXECUTE foo;
  609. ^
  610. <sql-statement>
  611. ALTER TABLE articles DROP CONSTRAINT articles_pkey RESTRICT;
  612. </sql-statement>
  613. -stdin-:<main>: Error: Parse Sql
  614. -stdin-:<main>:1:1: Error: alternative is not implemented yet : 245
  615. ALTER TABLE articles DROP CONSTRAINT articles_pkey RESTRICT;
  616. ^
  617. <sql-statement>
  618. EXECUTE foo; -- fail
  619. </sql-statement>
  620. -stdin-:<main>: Error: Parse Sql
  621. -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 302
  622. EXECUTE foo; -- fail
  623. ^