sql.go 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. // Code generated by go generate; DO NOT EDIT.
  2. // 2017-12-02 16:12:47.256865279 -0800 PST m=+0.002374595
  3. package sql
  4. var SqlMap = map[string]string{
  5. "schema_version_1": `create table schema_version (
  6. version text not null
  7. );
  8. create table users (
  9. id serial not null,
  10. username text not null unique,
  11. password text,
  12. is_admin bool default 'f',
  13. language text default 'en_US',
  14. timezone text default 'UTC',
  15. theme text default 'default',
  16. last_login_at timestamp with time zone,
  17. primary key (id)
  18. );
  19. create table sessions (
  20. id serial not null,
  21. user_id int not null,
  22. token text not null unique,
  23. created_at timestamp with time zone default now(),
  24. user_agent text,
  25. ip text,
  26. primary key (id),
  27. unique (user_id, token),
  28. foreign key (user_id) references users(id) on delete cascade
  29. );
  30. create table categories (
  31. id serial not null,
  32. user_id int not null,
  33. title text not null,
  34. primary key (id),
  35. unique (user_id, title),
  36. foreign key (user_id) references users(id) on delete cascade
  37. );
  38. create table feeds (
  39. id bigserial not null,
  40. user_id int not null,
  41. category_id int not null,
  42. title text not null,
  43. feed_url text not null,
  44. site_url text not null,
  45. checked_at timestamp with time zone default now(),
  46. etag_header text,
  47. last_modified_header text,
  48. parsing_error_msg text default '',
  49. parsing_error_count int default 0,
  50. primary key (id),
  51. unique (user_id, feed_url),
  52. foreign key (user_id) references users(id) on delete cascade,
  53. foreign key (category_id) references categories(id) on delete cascade
  54. );
  55. create type entry_status as enum('unread', 'read', 'removed');
  56. create table entries (
  57. id bigserial not null,
  58. user_id int not null,
  59. feed_id bigint not null,
  60. hash text not null,
  61. published_at timestamp with time zone not null,
  62. title text not null,
  63. url text not null,
  64. author text,
  65. content text,
  66. status entry_status default 'unread',
  67. primary key (id),
  68. unique (feed_id, hash),
  69. foreign key (user_id) references users(id) on delete cascade,
  70. foreign key (feed_id) references feeds(id) on delete cascade
  71. );
  72. create index entries_feed_idx on entries using btree(feed_id);
  73. create table enclosures (
  74. id bigserial not null,
  75. user_id int not null,
  76. entry_id bigint not null,
  77. url text not null,
  78. size int default 0,
  79. mime_type text default '',
  80. primary key (id),
  81. foreign key (user_id) references users(id) on delete cascade,
  82. foreign key (entry_id) references entries(id) on delete cascade
  83. );
  84. create table icons (
  85. id bigserial not null,
  86. hash text not null unique,
  87. mime_type text not null,
  88. content bytea not null,
  89. primary key (id)
  90. );
  91. create table feed_icons (
  92. feed_id bigint not null,
  93. icon_id bigint not null,
  94. primary key(feed_id, icon_id),
  95. foreign key (feed_id) references feeds(id) on delete cascade,
  96. foreign key (icon_id) references icons(id) on delete cascade
  97. );
  98. `,
  99. "schema_version_2": `create extension if not exists hstore;
  100. alter table users add column extra hstore;
  101. create index users_extra_idx on users using gin(extra);
  102. `,
  103. "schema_version_3": `create table tokens (
  104. id text not null,
  105. value text not null,
  106. created_at timestamp with time zone not null default now(),
  107. primary key(id, value)
  108. );`,
  109. "schema_version_4": `create type entry_sorting_direction as enum('asc', 'desc');
  110. alter table users add column entry_direction entry_sorting_direction default 'asc';
  111. `,
  112. }
  113. var SqlMapChecksums = map[string]string{
  114. "schema_version_1": "7be580fc8a93db5da54b2f6e87019803c33b0b0c28482c7af80cef873bdac4e2",
  115. "schema_version_2": "e8e9ff32478df04fcddad10a34cba2e8bb1e67e7977b5bd6cdc4c31ec94282b4",
  116. "schema_version_3": "a54745dbc1c51c000f74d4e5068f1e2f43e83309f023415b1749a47d5c1e0f12",
  117. "schema_version_4": "216ea3a7d3e1704e40c797b5dc47456517c27dbb6ca98bf88812f4f63d74b5d9",
  118. }