⌈⌋ branch:  freshcode


Hex Artifact Content

Artifact 4fd6adc7ef449746a836365410dc35e071378b1e:

  • File db.sql — part of check-in [3e849fb034] at 2015-04-14 12:05:57 on branch trunk — Add `summary` table field (oneliner, to be used in rss/search/twitter, and somewhen later frontpage listings). (user: mario size: 2092)

0000: 2d 2d 23 20 74 69 74 6c 65 3a 20 66 72 65 73 68  --# title: fresh
0010: 63 6f 64 65 20 64 61 74 61 62 61 73 65 20 73 63  code database sc
0020: 68 65 6d 61 0a 2d 2d 23 20 76 65 72 73 69 6f 6e  hema.--# version
0030: 3a 20 30 2e 37 0a 0a 43 52 45 41 54 45 20 54 41  : 0.7..CREATE TA
0040: 42 4c 45 20 5b 72 65 6c 65 61 73 65 5d 20 28 20  BLE [release] ( 
0050: 0a 20 20 20 20 6e 61 6d 65 20 20 20 20 20 20 20  .    name       
0060: 20 20 20 20 20 20 20 56 41 52 43 48 41 52 28 20         VARCHAR( 
0070: 31 30 30 20 29 20 20 20 20 20 4e 4f 54 20 4e 55  100 )     NOT NU
0080: 4c 4c 2c 0a 20 20 20 20 74 69 74 6c 65 20 20 20  LL,.    title   
0090: 20 20 20 20 20 20 20 20 20 20 54 45 58 54 20 20            TEXT  
00a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 4e 4f 54               NOT
00b0: 20 4e 55 4c 4c 2c 0a 20 20 20 20 68 6f 6d 65 70   NULL,.    homep
00c0: 61 67 65 20 20 20 20 20 20 20 20 20 20 54 45 58  age          TEX
00d0: 54 2c 0a 20 20 20 20 73 75 6d 6d 61 72 79 20 20  T,.    summary  
00e0: 20 20 20 20 20 20 20 20 20 56 41 52 43 48 41 52           VARCHAR
00f0: 28 20 32 30 30 20 29 2c 0a 20 20 20 20 64 65 73  ( 200 ),.    des
0100: 63 72 69 70 74 69 6f 6e 20 20 20 20 20 20 20 54  cription       T
0110: 45 58 54 20 20 20 20 20 20 20 20 20 20 20 20 20  EXT             
0120: 20 20 4e 4f 54 20 4e 55 4c 4c 2c 0a 20 20 20 20    NOT NULL,.    
0130: 6c 69 63 65 6e 73 65 20 20 20 20 20 20 20 20 20  license         
0140: 20 20 56 41 52 43 48 41 52 28 20 31 30 30 20 29    VARCHAR( 100 )
0150: 2c 0a 20 20 20 20 74 61 67 73 20 20 20 20 20 20  ,.    tags      
0160: 20 20 20 20 20 20 20 20 56 41 52 43 48 41 52 28          VARCHAR(
0170: 20 32 30 30 20 29 2c 0a 20 20 20 20 76 65 72 73   200 ),.    vers
0180: 69 6f 6e 20 20 20 20 20 20 20 20 20 20 20 56 41  ion           VA
0190: 52 43 48 41 52 28 20 31 30 30 20 29 20 20 20 20  RCHAR( 100 )    
01a0: 20 4e 4f 54 20 4e 55 4c 4c 2c 0a 20 20 20 20 73   NOT NULL,.    s
01b0: 74 61 74 65 20 20 20 20 20 20 20 20 20 20 20 20  tate            
01c0: 20 56 41 52 43 48 41 52 28 20 32 30 20 29 2c 0a   VARCHAR( 20 ),.
01d0: 20 20 20 20 73 63 6f 70 65 20 20 20 20 20 20 20      scope       
01e0: 20 20 20 20 20 20 56 41 52 43 48 41 52 28 20 32        VARCHAR( 2
01f0: 30 20 29 2c 0a 20 20 20 20 63 68 61 6e 67 65 73  0 ),.    changes
0200: 20 20 20 20 20 20 20 20 20 20 20 54 45 58 54 2c             TEXT,
0210: 0a 20 20 20 20 64 6f 77 6e 6c 6f 61 64 20 20 20  .    download   
0220: 20 20 20 20 20 20 20 54 45 58 54 2c 0a 20 20 20         TEXT,.   
0230: 20 75 72 6c 73 20 20 20 20 20 20 20 20 20 20 20   urls           
0240: 20 20 20 54 45 58 54 2c 0a 20 20 20 20 61 75 74     TEXT,.    aut
0250: 6f 75 70 64 61 74 65 5f 6d 6f 64 75 6c 65 20 56  oupdate_module V
0260: 41 52 43 48 41 52 28 20 32 30 20 29 2c 0a 20 20  ARCHAR( 20 ),.  
0270: 20 20 61 75 74 6f 75 70 64 61 74 65 5f 75 72 6c    autoupdate_url
0280: 20 20 20 20 54 45 58 54 2c 0a 20 20 20 20 61 75      TEXT,.    au
0290: 74 6f 75 70 64 61 74 65 5f 72 65 67 65 78 20 20  toupdate_regex  
02a0: 54 45 58 54 2c 0a 20 20 20 20 74 5f 70 75 62 6c  TEXT,.    t_publ
02b0: 69 73 68 65 64 20 20 20 20 20 20 20 49 4e 54 2c  ished       INT,
02c0: 0a 20 20 20 20 74 5f 63 68 61 6e 67 65 64 20 20  .    t_changed  
02d0: 20 20 20 20 20 20 20 49 4e 54 2c 0a 20 20 20 20         INT,.    
02e0: 66 6c 61 67 20 20 20 20 20 20 20 20 20 20 20 20  flag            
02f0: 20 20 49 4e 54 20 20 20 20 20 20 20 20 20 20 20    INT           
0300: 20 20 20 20 20 44 45 46 41 55 4c 54 20 28 20 30       DEFAULT ( 0
0310: 20 29 2c 0a 20 20 20 20 64 65 6c 65 74 65 64 20   ),.    deleted 
0320: 20 20 20 20 20 20 20 20 20 20 42 4f 4f 4c 45 41            BOOLEA
0330: 4e 20 20 20 20 20 20 20 20 20 20 20 20 44 45 46  N            DEF
0340: 41 55 4c 54 20 28 20 30 20 29 2c 0a 20 20 20 20  AULT ( 0 ),.    
0350: 73 75 62 6d 69 74 74 65 72 5f 6f 70 65 6e 69 64  submitter_openid
0360: 20 20 54 45 58 54 2c 0a 20 20 20 20 73 75 62 6d    TEXT,.    subm
0370: 69 74 74 65 72 20 20 20 20 20 20 20 20 20 56 41  itter         VA
0380: 52 43 48 41 52 28 20 30 2c 20 31 30 30 20 29 2c  RCHAR( 0, 100 ),
0390: 0a 20 20 20 20 6c 6f 63 6b 20 20 20 20 20 20 20  .    lock       
03a0: 20 20 20 20 20 20 20 54 45 58 54 2c 0a 20 20 20         TEXT,.   
03b0: 20 68 69 64 64 65 6e 20 20 20 20 20 20 20 20 20   hidden         
03c0: 20 20 20 42 4f 4f 4c 45 41 4e 20 20 20 20 20 20     BOOLEAN      
03d0: 20 20 20 20 20 20 44 45 46 41 55 4c 54 20 28 20        DEFAULT ( 
03e0: 30 20 29 2c 0a 20 20 20 20 69 6d 61 67 65 20 20  0 ),.    image  
03f0: 20 20 20 20 20 20 20 20 20 20 20 54 45 58 54 2c             TEXT,
0400: 0a 20 20 20 20 73 6f 63 69 61 6c 5f 6c 69 6e 6b  .    social_link
0410: 73 20 20 20 20 20 20 49 4e 54 20 20 20 20 20 20  s      INT      
0420: 20 20 20 20 20 20 20 20 20 20 44 45 46 41 55 4c            DEFAUL
0430: 54 20 28 20 30 20 29 2c 0a 20 20 20 20 73 75 62  T ( 0 ),.    sub
0440: 6d 69 74 74 65 72 5f 69 6d 61 67 65 20 20 20 56  mitter_image   V
0450: 41 52 43 48 41 52 28 20 32 30 30 20 29 2c 0a 20  ARCHAR( 200 ),. 
0460: 20 20 20 76 69 61 20 20 20 20 20 20 20 20 20 20     via          
0470: 20 20 20 20 20 56 41 52 43 48 41 52 28 20 31 36       VARCHAR( 16
0480: 20 29 2c 0a 20 20 20 20 65 64 69 74 6f 72 5f 6e   ),.    editor_n
0490: 6f 74 65 20 20 20 20 20 20 20 54 45 58 54 2c 0a  ote       TEXT,.
04a0: 20 20 20 20 61 75 74 6f 75 70 64 61 74 65 5f 64      autoupdate_d
04b0: 65 6c 61 79 20 20 52 45 41 4c 2c 0a 20 20 20 20  elay  REAL,.    
04c0: 43 4f 4e 53 54 52 41 49 4e 54 20 27 72 65 6c 65  CONSTRAINT 'rele
04d0: 61 73 65 5f 72 65 76 69 73 69 6f 6e 73 27 20 55  ase_revisions' U
04e0: 4e 49 51 55 45 20 28 20 6e 61 6d 65 2c 20 76 65  NIQUE ( name, ve
04f0: 72 73 69 6f 6e 20 43 4f 4c 4c 41 54 45 20 27 4e  rsion COLLATE 'N
0500: 4f 43 41 53 45 27 2c 20 74 5f 70 75 62 6c 69 73  OCASE', t_publis
0510: 68 65 64 2c 20 74 5f 63 68 61 6e 67 65 64 20 29  hed, t_changed )
0520: 20 0a 29 3b 0a 0a 43 52 45 41 54 45 20 54 41 42   .);..CREATE TAB
0530: 4c 45 20 66 6c 61 67 73 20 28 20 0a 20 20 20 20  LE flags ( .    
0540: 6e 61 6d 65 20 20 20 20 20 20 20 20 20 20 20 20  name            
0550: 20 54 45 58 54 2c 0a 20 20 20 20 72 65 61 73 6f   TEXT,.    reaso
0560: 6e 20 20 20 20 20 20 20 20 20 20 20 54 45 58 54  n           TEXT
0570: 2c 0a 20 20 20 20 6e 6f 74 65 20 20 20 20 20 20  ,.    note      
0580: 20 20 20 20 20 20 20 54 45 58 54 2c 0a 20 20 20         TEXT,.   
0590: 20 73 75 62 6d 69 74 74 65 72 5f 6f 70 65 6e 69   submitter_openi
05a0: 64 20 54 45 58 54 2c 0a 20 20 20 20 73 75 62 6d  d TEXT,.    subm
05b0: 69 74 74 65 72 5f 69 70 20 20 20 20 20 54 45 58  itter_ip     TEX
05c0: 54 20 0a 29 3b 0a 0a 43 52 45 41 54 45 20 54 41  T .);..CREATE TA
05d0: 42 4c 45 20 74 61 67 73 20 28 20 0a 20 20 20 20  BLE tags ( .    
05e0: 6e 61 6d 65 20 56 41 52 43 48 41 52 28 20 31 2c  name VARCHAR( 1,
05f0: 20 33 33 20 29 2c 0a 20 20 20 20 74 61 67 20 20   33 ),.    tag  
0600: 56 41 52 43 48 41 52 28 20 31 2c 20 33 33 20 29  VARCHAR( 1, 33 )
0610: 20 0a 29 3b 0a 0a 43 52 45 41 54 45 20 49 4e 44   .);..CREATE IND
0620: 45 58 20 69 64 78 5f 72 65 6c 65 61 73 65 20 4f  EX idx_release O
0630: 4e 20 5b 72 65 6c 65 61 73 65 5d 20 28 20 0a 20  N [release] ( . 
0640: 20 20 20 6e 61 6d 65 2c 0a 20 20 20 20 74 5f 63     name,.    t_c
0650: 68 61 6e 67 65 64 20 20 20 20 20 20 20 20 20 20  hanged          
0660: 20 20 20 20 20 20 20 20 44 45 53 43 2c 0a 20 20          DESC,.  
0670: 20 20 74 5f 70 75 62 6c 69 73 68 65 64 20 20 20    t_published   
0680: 20 20 20 20 20 20 20 20 20 20 20 20 20 44 45 53               DES
0690: 43 2c 0a 20 20 20 20 76 65 72 73 69 6f 6e 20 20  C,.    version  
06a0: 20 20 20 43 4f 4c 4c 41 54 45 20 4e 4f 43 41 53     COLLATE NOCAS
06b0: 45 20 0a 29 3b 0a 0a 0a 43 52 45 41 54 45 20 56  E .);...CREATE V
06c0: 49 45 57 20 72 65 6c 65 61 73 65 5f 6f 72 64 65  IEW release_orde
06d0: 72 65 64 20 41 53 0a 20 20 20 20 20 20 20 53 45  red AS.       SE
06e0: 4c 45 43 54 20 2a 0a 20 20 20 20 20 20 20 20 20  LECT *.         
06f0: 46 52 4f 4d 20 5b 72 65 6c 65 61 73 65 5d 0a 20  FROM [release]. 
0700: 20 20 20 20 20 20 20 4f 52 44 45 52 20 42 59 20         ORDER BY 
0710: 74 5f 70 75 62 6c 69 73 68 65 64 20 44 45 53 43  t_published DESC
0720: 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ,.              
0730: 20 20 20 20 74 5f 63 68 61 6e 67 65 64 20 44 45      t_changed DE
0740: 53 43 3b 0a 0a 43 52 45 41 54 45 20 56 49 45 57  SC;..CREATE VIEW
0750: 20 72 65 6c 65 61 73 65 5f 76 65 72 73 69 6f 6e   release_version
0760: 73 20 41 53 0a 20 20 20 20 20 20 20 53 45 4c 45  s AS.       SELE
0770: 43 54 20 2a 2c 0a 20 20 20 20 20 20 20 20 20 20  CT *,.          
0780: 20 20 20 20 4d 41 58 28 20 74 5f 63 68 61 6e 67      MAX( t_chang
0790: 65 64 20 29 20 41 53 20 5f 6f 72 64 65 72 0a 20  ed ) AS _order. 
07a0: 20 20 20 20 20 20 20 20 46 52 4f 4d 20 72 65 6c          FROM rel
07b0: 65 61 73 65 5f 6f 72 64 65 72 65 64 0a 20 20 20  ease_ordered.   
07c0: 20 20 20 20 20 57 48 45 52 45 20 4e 4f 54 20 64       WHERE NOT d
07d0: 65 6c 65 74 65 64 0a 20 20 20 20 20 20 20 20 47  eleted.        G
07e0: 52 4f 55 50 20 42 59 20 6e 61 6d 65 2c 0a 20 20  ROUP BY name,.  
07f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76                 v
0800: 65 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 4f  ersion.        O
0810: 52 44 45 52 20 42 59 20 74 5f 70 75 62 6c 69 73  RDER BY t_publis
0820: 68 65 64 20 44 45 53 43 3b 0a 0a 0a              hed DESC;...