drh | 326a67d | 2011-03-26 15:05:27 +0000 | [diff] [blame] | 1 | # 2011 March 25 |
| 2 | # |
| 3 | # The author disclaims copyright to this source code. In place of |
| 4 | # a legal notice, here is a blessing: |
| 5 | # |
| 6 | # May you do good and not evil. |
| 7 | # May you find forgiveness for yourself and forgive others. |
| 8 | # May you share freely, never taking more than you give. |
| 9 | # |
| 10 | #*********************************************************************** |
| 11 | # This file implements regression tests for TCL interface to the |
| 12 | # SQLite library. |
| 13 | # |
| 14 | # The focus of the tests is the word-fuzzer virtual table. |
| 15 | # |
| 16 | |
| 17 | set testdir [file dirname $argv0] |
| 18 | source $testdir/tester.tcl |
| 19 | |
| 20 | ifcapable !vtab { |
| 21 | finish_test |
| 22 | return |
| 23 | } |
| 24 | |
dan | 766348f | 2012-02-21 10:36:27 +0000 | [diff] [blame] | 25 | set ::testprefix fuzzer1 |
| 26 | |
drh | e50db1c | 2013-04-25 14:31:46 +0000 | [diff] [blame] | 27 | load_static_extension db fuzzer |
dan | a8ab692 | 2012-02-20 20:03:48 +0000 | [diff] [blame] | 28 | |
dan | a8ab692 | 2012-02-20 20:03:48 +0000 | [diff] [blame] | 29 | # Check configuration errors. |
| 30 | # |
| 31 | do_catchsql_test fuzzer1-1.1 { |
| 32 | CREATE VIRTUAL TABLE f USING fuzzer; |
| 33 | } {1 {fuzzer: wrong number of CREATE VIRTUAL TABLE arguments}} |
| 34 | |
| 35 | do_catchsql_test fuzzer1-1.2 { |
| 36 | CREATE VIRTUAL TABLE f USING fuzzer(one, two); |
| 37 | } {1 {fuzzer: wrong number of CREATE VIRTUAL TABLE arguments}} |
| 38 | |
| 39 | do_catchsql_test fuzzer1-1.3 { |
| 40 | CREATE VIRTUAL TABLE f USING fuzzer(nosuchtable); |
| 41 | } {1 {fuzzer: no such table: main.nosuchtable}} |
| 42 | |
| 43 | do_catchsql_test fuzzer1-1.4 { |
| 44 | CREATE TEMP TABLE nosuchtable(a, b, c, d); |
| 45 | CREATE VIRTUAL TABLE f USING fuzzer(nosuchtable); |
| 46 | } {1 {fuzzer: no such table: main.nosuchtable}} |
| 47 | |
| 48 | do_catchsql_test fuzzer1-1.5 { |
| 49 | DROP TABLE temp.nosuchtable; |
| 50 | CREATE TABLE nosuchtable(a, b, c, d); |
| 51 | CREATE VIRTUAL TABLE temp.f USING fuzzer(nosuchtable); |
| 52 | } {1 {fuzzer: no such table: temp.nosuchtable}} |
| 53 | |
| 54 | do_catchsql_test fuzzer1-1.6 { |
| 55 | DROP TABLE IF EXISTS f_rules; |
| 56 | CREATE TABLE f_rules(a, b, c); |
| 57 | CREATE VIRTUAL TABLE f USING fuzzer(f_rules); |
| 58 | } {1 {fuzzer: f_rules has 3 columns, expected 4}} |
| 59 | |
| 60 | do_catchsql_test fuzzer1-1.7 { |
| 61 | DROP TABLE IF EXISTS f_rules; |
| 62 | CREATE TABLE f_rules(a, b, c, d, e); |
| 63 | CREATE VIRTUAL TABLE f USING fuzzer(f_rules); |
| 64 | } {1 {fuzzer: f_rules has 5 columns, expected 4}} |
| 65 | |
| 66 | |
| 67 | do_execsql_test fuzzer1-2.1 { |
| 68 | CREATE TABLE f1_rules(ruleset DEFAULT 0, cfrom, cto, cost); |
| 69 | INSERT INTO f1_rules(cfrom, cto, cost) VALUES('e','a',1); |
| 70 | INSERT INTO f1_rules(cfrom, cto, cost) VALUES('a','e',10); |
| 71 | INSERT INTO f1_rules(cfrom, cto, cost) VALUES('e','o',100); |
| 72 | |
| 73 | CREATE VIRTUAL TABLE f1 USING fuzzer(f1_rules); |
drh | 9416956 | 2011-03-26 19:04:47 +0000 | [diff] [blame] | 74 | } {} |
| 75 | |
dan | a8ab692 | 2012-02-20 20:03:48 +0000 | [diff] [blame] | 76 | do_execsql_test fuzzer1-2.1 { |
drh | 9416956 | 2011-03-26 19:04:47 +0000 | [diff] [blame] | 77 | SELECT word, distance FROM f1 WHERE word MATCH 'abcde' |
dan | a8ab692 | 2012-02-20 20:03:48 +0000 | [diff] [blame] | 78 | } { |
| 79 | abcde 0 abcda 1 ebcde 10 |
| 80 | ebcda 11 abcdo 100 ebcdo 110 |
| 81 | obcde 110 obcda 111 obcdo 210 |
| 82 | } |
drh | 326a67d | 2011-03-26 15:05:27 +0000 | [diff] [blame] | 83 | |
dan | a8ab692 | 2012-02-20 20:03:48 +0000 | [diff] [blame] | 84 | do_execsql_test fuzzer1-2.4 { |
| 85 | INSERT INTO f1_rules(ruleset, cfrom, cto, cost) VALUES(1,'b','x',1); |
| 86 | INSERT INTO f1_rules(ruleset, cfrom, cto, cost) VALUES(1,'d','y',10); |
| 87 | INSERT INTO f1_rules(ruleset, cfrom, cto, cost) VALUES(1,'y','z',100); |
| 88 | |
| 89 | DROP TABLE f1; |
| 90 | CREATE VIRTUAL TABLE f1 USING fuzzer(f1_rules); |
drh | 5beafd6 | 2012-02-14 15:34:50 +0000 | [diff] [blame] | 91 | } {} |
dan | a8ab692 | 2012-02-20 20:03:48 +0000 | [diff] [blame] | 92 | |
| 93 | do_execsql_test fuzzer1-2.5 { |
| 94 | SELECT word, distance FROM f1 WHERE word MATCH 'abcde' |
| 95 | } { |
| 96 | abcde 0 abcda 1 ebcde 10 |
| 97 | ebcda 11 abcdo 100 ebcdo 110 |
| 98 | obcde 110 obcda 111 obcdo 210 |
| 99 | } |
| 100 | |
| 101 | do_execsql_test fuzzer1-2.6 { |
| 102 | SELECT word, distance FROM f1 WHERE word MATCH 'abcde' AND ruleset=0 |
| 103 | } { |
| 104 | abcde 0 abcda 1 ebcde 10 |
| 105 | ebcda 11 abcdo 100 ebcdo 110 |
| 106 | obcde 110 obcda 111 obcdo 210 |
| 107 | } |
| 108 | |
| 109 | do_execsql_test fuzzer1-2.7 { |
| 110 | SELECT word, distance FROM f1 WHERE word MATCH 'abcde' AND ruleset=1 |
| 111 | } { |
| 112 | abcde 0 axcde 1 abcye 10 |
| 113 | axcye 11 abcze 110 axcze 111 |
| 114 | } |
| 115 | |
drh | 5beafd6 | 2012-02-14 15:34:50 +0000 | [diff] [blame] | 116 | do_test fuzzer1-1.8 { |
| 117 | db eval { |
| 118 | SELECT word, distance FROM f1 WHERE word MATCH 'abcde' AND distance<100 |
| 119 | } |
| 120 | } {abcde 0 abcda 1 ebcde 10 ebcda 11} |
| 121 | do_test fuzzer1-1.9 { |
| 122 | db eval { |
| 123 | SELECT word, distance FROM f1 WHERE word MATCH 'abcde' AND distance<=100 |
| 124 | } |
| 125 | } {abcde 0 abcda 1 ebcde 10 ebcda 11 abcdo 100} |
| 126 | do_test fuzzer1-1.10 { |
| 127 | db eval { |
| 128 | SELECT word, distance FROM f1 |
| 129 | WHERE word MATCH 'abcde' AND distance<100 AND ruleset=0 |
| 130 | } |
| 131 | } {abcde 0 abcda 1 ebcde 10 ebcda 11} |
| 132 | do_test fuzzer1-1.11 { |
| 133 | db eval { |
| 134 | SELECT word, distance FROM f1 |
| 135 | WHERE word MATCH 'abcde' AND distance<=100 AND ruleset=0 |
| 136 | } |
| 137 | } {abcde 0 abcda 1 ebcde 10 ebcda 11 abcdo 100} |
| 138 | do_test fuzzer1-1.12 { |
| 139 | db eval { |
| 140 | SELECT word, distance FROM f1 |
dan | 75f8f75 | 2012-02-20 19:36:09 +0000 | [diff] [blame] | 141 | WHERE word MATCH 'abcde' AND distance<11 AND ruleset=1 |
drh | 5beafd6 | 2012-02-14 15:34:50 +0000 | [diff] [blame] | 142 | } |
dan | 75f8f75 | 2012-02-20 19:36:09 +0000 | [diff] [blame] | 143 | } {abcde 0 axcde 1 abcye 10} |
drh | 5beafd6 | 2012-02-14 15:34:50 +0000 | [diff] [blame] | 144 | do_test fuzzer1-1.13 { |
| 145 | db eval { |
| 146 | SELECT word, distance FROM f1 |
dan | 75f8f75 | 2012-02-20 19:36:09 +0000 | [diff] [blame] | 147 | WHERE word MATCH 'abcde' AND distance<=11 AND ruleset=1 |
drh | 5beafd6 | 2012-02-14 15:34:50 +0000 | [diff] [blame] | 148 | } |
dan | 75f8f75 | 2012-02-20 19:36:09 +0000 | [diff] [blame] | 149 | } {abcde 0 axcde 1 abcye 10 axcye 11} |
drh | 5577671 | 2012-02-20 22:44:12 +0000 | [diff] [blame] | 150 | do_test fuzzer1-1.14 { |
| 151 | catchsql {INSERT INTO f1 VALUES(1)} |
| 152 | } {1 {table f1 may not be modified}} |
| 153 | do_test fuzzer1-1.15 { |
| 154 | catchsql {DELETE FROM f1} |
| 155 | } {1 {table f1 may not be modified}} |
| 156 | do_test fuzzer1-1.16 { |
| 157 | catchsql {UPDATE f1 SET rowid=rowid+10000} |
| 158 | } {1 {table f1 may not be modified}} |
| 159 | |
drh | 5beafd6 | 2012-02-14 15:34:50 +0000 | [diff] [blame] | 160 | |
drh | 1b05c42 | 2011-04-01 20:28:31 +0000 | [diff] [blame] | 161 | do_test fuzzer1-2.0 { |
| 162 | execsql { |
drh | 1b05c42 | 2011-04-01 20:28:31 +0000 | [diff] [blame] | 163 | -- costs based on English letter frequencies |
drh | 5577671 | 2012-02-20 22:44:12 +0000 | [diff] [blame] | 164 | CREATE TEMP TABLE f2_rules(ruleset DEFAULT 0, cFrom, cTo, cost); |
dan | a8ab692 | 2012-02-20 20:03:48 +0000 | [diff] [blame] | 165 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('a','e',24); |
| 166 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('a','o',47); |
| 167 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('a','u',50); |
| 168 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('e','a',23); |
| 169 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('e','i',33); |
| 170 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('e','o',37); |
| 171 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('i','e',33); |
| 172 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('i','y',33); |
| 173 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('o','a',41); |
| 174 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('o','e',46); |
| 175 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('o','u',57); |
| 176 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('u','o',58); |
| 177 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('y','i',33); |
drh | 1b05c42 | 2011-04-01 20:28:31 +0000 | [diff] [blame] | 178 | |
dan | a8ab692 | 2012-02-20 20:03:48 +0000 | [diff] [blame] | 179 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('t','th',70); |
| 180 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('th','t',66); |
drh | 1b05c42 | 2011-04-01 20:28:31 +0000 | [diff] [blame] | 181 | |
dan | a8ab692 | 2012-02-20 20:03:48 +0000 | [diff] [blame] | 182 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('a','',84); |
| 183 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','b',106); |
| 184 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('b','',106); |
| 185 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','c',94); |
| 186 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('c','',94); |
| 187 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','d',89); |
| 188 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('d','',89); |
| 189 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','e',83); |
| 190 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('e','',83); |
| 191 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','f',97); |
| 192 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('f','',97); |
| 193 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','g',99); |
| 194 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('g','',99); |
| 195 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','h',86); |
| 196 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('h','',86); |
| 197 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','i',85); |
| 198 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('i','',85); |
| 199 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','j',120); |
| 200 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('j','',120); |
| 201 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','k',120); |
| 202 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('k','',120); |
| 203 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','l',89); |
| 204 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('l','',89); |
| 205 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','m',96); |
| 206 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('m','',96); |
| 207 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','n',85); |
| 208 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('n','',85); |
| 209 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','o',85); |
| 210 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('o','',85); |
| 211 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','p',100); |
| 212 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('p','',100); |
| 213 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','q',120); |
| 214 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('q','',120); |
| 215 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','r',86); |
| 216 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('r','',86); |
| 217 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','s',86); |
| 218 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('s','',86); |
| 219 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','t',84); |
| 220 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('t','',84); |
| 221 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','u',94); |
| 222 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('u','',94); |
| 223 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','v',120); |
| 224 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('v','',120); |
| 225 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','w',96); |
| 226 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('w','',96); |
| 227 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','x',120); |
| 228 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('x','',120); |
| 229 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','y',100); |
| 230 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('y','',100); |
| 231 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('','z',120); |
| 232 | INSERT INTO f2_rules(cFrom,cTo,cost) VALUES('z','',120); |
drh | 5577671 | 2012-02-20 22:44:12 +0000 | [diff] [blame] | 233 | INSERT INTO f2_rules(ruleset,cFrom,cTo,cost) |
| 234 | SELECT 1, cFrom, cTo, 100 FROM f2_rules WHERE ruleset=0; |
| 235 | INSERT INTO f2_rules(ruleset,cFrom,cTo,cost) |
| 236 | SELECT 2, cFrom, cTo, 200-cost FROM f2_rules WHERE ruleset=0; |
| 237 | INSERT INTO f2_rules(ruleset,cFrom,cTo,cost) |
| 238 | SELECT 3, cFrom, cTo, cost FROM f2_rules WHERE ruleset=0; |
| 239 | INSERT INTO f2_rules(ruleset,cFrom,cTo,cost) |
| 240 | VALUES(3, 'mallard','duck',50), |
| 241 | (3, 'duck', 'mallard', 50), |
| 242 | (3, 'rock', 'stone', 50), |
| 243 | (3, 'stone', 'rock', 50); |
| 244 | |
dan | a8ab692 | 2012-02-20 20:03:48 +0000 | [diff] [blame] | 245 | |
| 246 | CREATE VIRTUAL TABLE temp.f2 USING fuzzer(f2_rules); |
drh | 1b05c42 | 2011-04-01 20:28:31 +0000 | [diff] [blame] | 247 | |
| 248 | -- Street names for the 28269 ZIPCODE. |
| 249 | -- |
| 250 | CREATE TEMP TABLE streetname(n TEXT UNIQUE); |
| 251 | INSERT INTO streetname VALUES('abbotsinch'); |
| 252 | INSERT INTO streetname VALUES('abbottsgate'); |
| 253 | INSERT INTO streetname VALUES('abbywood'); |
| 254 | INSERT INTO streetname VALUES('abner'); |
| 255 | INSERT INTO streetname VALUES('acacia ridge'); |
| 256 | INSERT INTO streetname VALUES('acorn creek'); |
| 257 | INSERT INTO streetname VALUES('acorn forest'); |
| 258 | INSERT INTO streetname VALUES('adel'); |
| 259 | INSERT INTO streetname VALUES('ainslie'); |
| 260 | INSERT INTO streetname VALUES('airways'); |
| 261 | INSERT INTO streetname VALUES('alabaster'); |
| 262 | INSERT INTO streetname VALUES('alba'); |
| 263 | INSERT INTO streetname VALUES('albertine'); |
| 264 | INSERT INTO streetname VALUES('alden glen'); |
| 265 | INSERT INTO streetname VALUES('alderson'); |
| 266 | INSERT INTO streetname VALUES('allen'); |
| 267 | INSERT INTO streetname VALUES('allen a brown'); |
| 268 | INSERT INTO streetname VALUES('allness glen'); |
| 269 | INSERT INTO streetname VALUES('aloysia'); |
| 270 | INSERT INTO streetname VALUES('alpine'); |
| 271 | INSERT INTO streetname VALUES('alwyn'); |
| 272 | INSERT INTO streetname VALUES('amaranthus'); |
| 273 | INSERT INTO streetname VALUES('amber glen'); |
| 274 | INSERT INTO streetname VALUES('amber leigh way'); |
| 275 | INSERT INTO streetname VALUES('amber meadows'); |
| 276 | INSERT INTO streetname VALUES('amberway'); |
| 277 | INSERT INTO streetname VALUES('ame'); |
| 278 | INSERT INTO streetname VALUES('amesbury hill'); |
| 279 | INSERT INTO streetname VALUES('anderson'); |
| 280 | INSERT INTO streetname VALUES('andrew thomas'); |
| 281 | INSERT INTO streetname VALUES('anduin falls'); |
| 282 | INSERT INTO streetname VALUES('ankeny'); |
| 283 | INSERT INTO streetname VALUES('annandale'); |
| 284 | INSERT INTO streetname VALUES('annbick'); |
| 285 | INSERT INTO streetname VALUES('antelope'); |
| 286 | INSERT INTO streetname VALUES('anzack'); |
| 287 | INSERT INTO streetname VALUES('apple glen'); |
| 288 | INSERT INTO streetname VALUES('applevalley'); |
| 289 | INSERT INTO streetname VALUES('appley mead'); |
| 290 | INSERT INTO streetname VALUES('aragorn'); |
| 291 | INSERT INTO streetname VALUES('arbor creek'); |
| 292 | INSERT INTO streetname VALUES('arbor day'); |
| 293 | INSERT INTO streetname VALUES('arbor meadows'); |
| 294 | INSERT INTO streetname VALUES('arbor spring'); |
| 295 | INSERT INTO streetname VALUES('arborview'); |
| 296 | INSERT INTO streetname VALUES('arklow'); |
| 297 | INSERT INTO streetname VALUES('armitage'); |
| 298 | INSERT INTO streetname VALUES('arvin'); |
| 299 | INSERT INTO streetname VALUES('ash cove'); |
| 300 | INSERT INTO streetname VALUES('ashford leigh'); |
| 301 | INSERT INTO streetname VALUES('ashmont'); |
| 302 | INSERT INTO streetname VALUES('atlas'); |
| 303 | INSERT INTO streetname VALUES('atwater'); |
| 304 | INSERT INTO streetname VALUES('auburn hill'); |
| 305 | INSERT INTO streetname VALUES('aulton link'); |
| 306 | INSERT INTO streetname VALUES('austin dekota'); |
| 307 | INSERT INTO streetname VALUES('austin knoll'); |
| 308 | INSERT INTO streetname VALUES('auten'); |
| 309 | INSERT INTO streetname VALUES('autumn harvest'); |
| 310 | INSERT INTO streetname VALUES('autumn oak'); |
| 311 | INSERT INTO streetname VALUES('autumn ridge'); |
| 312 | INSERT INTO streetname VALUES('avalon forest'); |
| 313 | INSERT INTO streetname VALUES('avalon loop'); |
| 314 | INSERT INTO streetname VALUES('avon farm'); |
| 315 | INSERT INTO streetname VALUES('avonhurst'); |
| 316 | INSERT INTO streetname VALUES('avonlea'); |
| 317 | INSERT INTO streetname VALUES('aynrand'); |
| 318 | INSERT INTO streetname VALUES('azure valley'); |
| 319 | INSERT INTO streetname VALUES('baberton'); |
| 320 | INSERT INTO streetname VALUES('baffin'); |
| 321 | INSERT INTO streetname VALUES('baggins'); |
| 322 | INSERT INTO streetname VALUES('balata'); |
| 323 | INSERT INTO streetname VALUES('ballantray'); |
| 324 | INSERT INTO streetname VALUES('ballston'); |
| 325 | INSERT INTO streetname VALUES('balsam tree'); |
| 326 | INSERT INTO streetname VALUES('bambi'); |
| 327 | INSERT INTO streetname VALUES('banwell'); |
| 328 | INSERT INTO streetname VALUES('barbee'); |
| 329 | INSERT INTO streetname VALUES('barefoot forest'); |
| 330 | INSERT INTO streetname VALUES('barnview'); |
| 331 | INSERT INTO streetname VALUES('baroda'); |
| 332 | INSERT INTO streetname VALUES('barson'); |
| 333 | INSERT INTO streetname VALUES('baskerville'); |
| 334 | INSERT INTO streetname VALUES('battle creek'); |
| 335 | INSERT INTO streetname VALUES('baucom'); |
| 336 | INSERT INTO streetname VALUES('bay pines'); |
| 337 | INSERT INTO streetname VALUES('beaker'); |
| 338 | INSERT INTO streetname VALUES('beard'); |
| 339 | INSERT INTO streetname VALUES('beardsley'); |
| 340 | INSERT INTO streetname VALUES('bearoak'); |
| 341 | INSERT INTO streetname VALUES('beauvista'); |
| 342 | INSERT INTO streetname VALUES('beaver creek'); |
| 343 | INSERT INTO streetname VALUES('beaver hollow'); |
| 344 | INSERT INTO streetname VALUES('bedlington'); |
| 345 | INSERT INTO streetname VALUES('beech cove'); |
| 346 | INSERT INTO streetname VALUES('beech crest'); |
| 347 | INSERT INTO streetname VALUES('beith'); |
| 348 | INSERT INTO streetname VALUES('bell glen'); |
| 349 | INSERT INTO streetname VALUES('bellmore'); |
| 350 | INSERT INTO streetname VALUES('bells mill'); |
| 351 | INSERT INTO streetname VALUES('bellville'); |
| 352 | INSERT INTO streetname VALUES('belmar place'); |
| 353 | INSERT INTO streetname VALUES('bembridge'); |
| 354 | INSERT INTO streetname VALUES('bennett neely'); |
| 355 | INSERT INTO streetname VALUES('bentgrass run'); |
| 356 | INSERT INTO streetname VALUES('benthaven'); |
| 357 | INSERT INTO streetname VALUES('bernardy'); |
| 358 | INSERT INTO streetname VALUES('bernbrook shadow'); |
| 359 | INSERT INTO streetname VALUES('berrybrook'); |
| 360 | INSERT INTO streetname VALUES('berrybush'); |
| 361 | INSERT INTO streetname VALUES('berwick'); |
| 362 | INSERT INTO streetname VALUES('betterton'); |
| 363 | INSERT INTO streetname VALUES('bickham'); |
| 364 | INSERT INTO streetname VALUES('billingham'); |
| 365 | INSERT INTO streetname VALUES('birchcroft'); |
| 366 | INSERT INTO streetname VALUES('birchstone'); |
| 367 | INSERT INTO streetname VALUES('birdwell'); |
| 368 | INSERT INTO streetname VALUES('bisaner'); |
| 369 | INSERT INTO streetname VALUES('bitterbush'); |
| 370 | INSERT INTO streetname VALUES('bitterroot'); |
| 371 | INSERT INTO streetname VALUES('black fox'); |
| 372 | INSERT INTO streetname VALUES('black maple'); |
| 373 | INSERT INTO streetname VALUES('black trail'); |
| 374 | INSERT INTO streetname VALUES('blackbird'); |
| 375 | INSERT INTO streetname VALUES('blake a dare'); |
| 376 | INSERT INTO streetname VALUES('blasdell'); |
| 377 | INSERT INTO streetname VALUES('blue aster'); |
| 378 | INSERT INTO streetname VALUES('blue finch'); |
| 379 | INSERT INTO streetname VALUES('blue lilac'); |
| 380 | INSERT INTO streetname VALUES('blue sky'); |
| 381 | INSERT INTO streetname VALUES('blue tick'); |
| 382 | INSERT INTO streetname VALUES('bob beatty'); |
| 383 | INSERT INTO streetname VALUES('bobcat'); |
| 384 | INSERT INTO streetname VALUES('bolton'); |
| 385 | INSERT INTO streetname VALUES('boomerang'); |
| 386 | INSERT INTO streetname VALUES('boulder'); |
| 387 | INSERT INTO streetname VALUES('boxer'); |
| 388 | INSERT INTO streetname VALUES('boxmeer'); |
| 389 | INSERT INTO streetname VALUES('brachnell view'); |
| 390 | INSERT INTO streetname VALUES('bradford lake'); |
| 391 | INSERT INTO streetname VALUES('bradwell'); |
| 392 | INSERT INTO streetname VALUES('brady'); |
| 393 | INSERT INTO streetname VALUES('braids bend'); |
| 394 | INSERT INTO streetname VALUES('bralers'); |
| 395 | INSERT INTO streetname VALUES('brandie glen'); |
| 396 | INSERT INTO streetname VALUES('brandy ridge'); |
| 397 | INSERT INTO streetname VALUES('brandybuck'); |
| 398 | INSERT INTO streetname VALUES('branthurst'); |
| 399 | INSERT INTO streetname VALUES('brassy creek'); |
| 400 | INSERT INTO streetname VALUES('brathay'); |
| 401 | INSERT INTO streetname VALUES('brawer farm'); |
| 402 | INSERT INTO streetname VALUES('breezy morn'); |
| 403 | INSERT INTO streetname VALUES('brenda'); |
| 404 | INSERT INTO streetname VALUES('brenly'); |
| 405 | INSERT INTO streetname VALUES('brenock'); |
| 406 | INSERT INTO streetname VALUES('brianwood'); |
| 407 | INSERT INTO streetname VALUES('briar rose'); |
| 408 | INSERT INTO streetname VALUES('briarcrest'); |
| 409 | INSERT INTO streetname VALUES('briarthorne'); |
| 410 | INSERT INTO streetname VALUES('brick dust'); |
| 411 | INSERT INTO streetname VALUES('bridgepath'); |
| 412 | INSERT INTO streetname VALUES('bridle ridge'); |
| 413 | INSERT INTO streetname VALUES('briggs'); |
| 414 | INSERT INTO streetname VALUES('brightleaf'); |
| 415 | INSERT INTO streetname VALUES('brigstock'); |
| 416 | INSERT INTO streetname VALUES('broad ridge'); |
| 417 | INSERT INTO streetname VALUES('brock'); |
| 418 | INSERT INTO streetname VALUES('brockhampton'); |
| 419 | INSERT INTO streetname VALUES('broken pine'); |
| 420 | INSERT INTO streetname VALUES('brompton'); |
| 421 | INSERT INTO streetname VALUES('brook falls'); |
| 422 | INSERT INTO streetname VALUES('brookings'); |
| 423 | INSERT INTO streetname VALUES('browne'); |
| 424 | INSERT INTO streetname VALUES('brownes creek'); |
| 425 | INSERT INTO streetname VALUES('brownes ferry'); |
| 426 | INSERT INTO streetname VALUES('brownestone view'); |
| 427 | INSERT INTO streetname VALUES('brumit'); |
| 428 | INSERT INTO streetname VALUES('bryn athyn'); |
| 429 | INSERT INTO streetname VALUES('buck'); |
| 430 | INSERT INTO streetname VALUES('bucklebury'); |
| 431 | INSERT INTO streetname VALUES('buckminister'); |
| 432 | INSERT INTO streetname VALUES('buckspring'); |
| 433 | INSERT INTO streetname VALUES('burch'); |
| 434 | INSERT INTO streetname VALUES('burch shire'); |
| 435 | INSERT INTO streetname VALUES('burkston'); |
| 436 | INSERT INTO streetname VALUES('burmith'); |
| 437 | INSERT INTO streetname VALUES('burnaby'); |
| 438 | INSERT INTO streetname VALUES('butterfly'); |
| 439 | INSERT INTO streetname VALUES('cabin creek'); |
| 440 | INSERT INTO streetname VALUES('cairns mill'); |
| 441 | INSERT INTO streetname VALUES('callender'); |
| 442 | INSERT INTO streetname VALUES('cambellton'); |
| 443 | INSERT INTO streetname VALUES('cambridge bay'); |
| 444 | INSERT INTO streetname VALUES('canary'); |
| 445 | INSERT INTO streetname VALUES('canbury'); |
| 446 | INSERT INTO streetname VALUES('candle leaf'); |
| 447 | INSERT INTO streetname VALUES('canipe'); |
| 448 | INSERT INTO streetname VALUES('canipe farm'); |
| 449 | INSERT INTO streetname VALUES('cannon'); |
| 450 | INSERT INTO streetname VALUES('canopy'); |
| 451 | INSERT INTO streetname VALUES('canso'); |
| 452 | INSERT INTO streetname VALUES('canterbrook'); |
| 453 | INSERT INTO streetname VALUES('cardinal glen'); |
| 454 | INSERT INTO streetname VALUES('cardinal point'); |
| 455 | INSERT INTO streetname VALUES('cardinals nest'); |
| 456 | INSERT INTO streetname VALUES('carlota'); |
| 457 | INSERT INTO streetname VALUES('carmathen'); |
| 458 | INSERT INTO streetname VALUES('carver'); |
| 459 | INSERT INTO streetname VALUES('carver pond'); |
| 460 | INSERT INTO streetname VALUES('casa loma'); |
| 461 | INSERT INTO streetname VALUES('caselton'); |
| 462 | INSERT INTO streetname VALUES('castello'); |
| 463 | INSERT INTO streetname VALUES('castle ridge'); |
| 464 | INSERT INTO streetname VALUES('castleglen'); |
| 465 | INSERT INTO streetname VALUES('castlemaine'); |
| 466 | INSERT INTO streetname VALUES('cavett'); |
| 467 | INSERT INTO streetname VALUES('caymus'); |
| 468 | INSERT INTO streetname VALUES('cedardale ridge'); |
| 469 | INSERT INTO streetname VALUES('cedarhurst'); |
| 470 | INSERT INTO streetname VALUES('cemkey way'); |
| 471 | INSERT INTO streetname VALUES('cerise'); |
| 472 | INSERT INTO streetname VALUES('chaceview'); |
| 473 | INSERT INTO streetname VALUES('chadsworth'); |
| 474 | INSERT INTO streetname VALUES('chadwell'); |
| 475 | INSERT INTO streetname VALUES('champions crest'); |
| 476 | INSERT INTO streetname VALUES('chandler haven'); |
| 477 | INSERT INTO streetname VALUES('chapel crossing'); |
| 478 | INSERT INTO streetname VALUES('chapel ridge'); |
| 479 | INSERT INTO streetname VALUES('charles crawford'); |
| 480 | INSERT INTO streetname VALUES('charminster'); |
| 481 | INSERT INTO streetname VALUES('chasewind'); |
| 482 | INSERT INTO streetname VALUES('chavel'); |
| 483 | INSERT INTO streetname VALUES('chelsea jade'); |
| 484 | INSERT INTO streetname VALUES('chestnut knoll'); |
| 485 | INSERT INTO streetname VALUES('cheviot'); |
| 486 | INSERT INTO streetname VALUES('chickadee'); |
| 487 | INSERT INTO streetname VALUES('chidley'); |
| 488 | INSERT INTO streetname VALUES('chimney ridge'); |
| 489 | INSERT INTO streetname VALUES('chimney springs'); |
| 490 | INSERT INTO streetname VALUES('chinaberry'); |
| 491 | INSERT INTO streetname VALUES('chinemist'); |
| 492 | INSERT INTO streetname VALUES('chinquapin'); |
| 493 | INSERT INTO streetname VALUES('chiswell'); |
| 494 | INSERT INTO streetname VALUES('christenbury'); |
| 495 | INSERT INTO streetname VALUES('christenbury hills'); |
| 496 | INSERT INTO streetname VALUES('churchill'); |
| 497 | INSERT INTO streetname VALUES('cindy'); |
| 498 | INSERT INTO streetname VALUES('cinnamon teal'); |
| 499 | INSERT INTO streetname VALUES('citadel'); |
| 500 | INSERT INTO streetname VALUES('clare olivia'); |
| 501 | INSERT INTO streetname VALUES('clarke creek'); |
| 502 | INSERT INTO streetname VALUES('clarke ridge'); |
| 503 | INSERT INTO streetname VALUES('clear day'); |
| 504 | INSERT INTO streetname VALUES('clear stream'); |
| 505 | INSERT INTO streetname VALUES('cleve brown'); |
| 506 | INSERT INTO streetname VALUES('cliff cameron'); |
| 507 | INSERT INTO streetname VALUES('cliffvale'); |
| 508 | INSERT INTO streetname VALUES('cloverside'); |
| 509 | INSERT INTO streetname VALUES('clymer'); |
| 510 | INSERT INTO streetname VALUES('coatbridge'); |
| 511 | INSERT INTO streetname VALUES('cobble glen'); |
| 512 | INSERT INTO streetname VALUES('cochran farm'); |
| 513 | INSERT INTO streetname VALUES('cochrane'); |
| 514 | INSERT INTO streetname VALUES('coleridge'); |
| 515 | INSERT INTO streetname VALUES('coleshire'); |
| 516 | INSERT INTO streetname VALUES('collins'); |
| 517 | INSERT INTO streetname VALUES('colvard'); |
| 518 | INSERT INTO streetname VALUES('colvard park'); |
| 519 | INSERT INTO streetname VALUES('condor'); |
| 520 | INSERT INTO streetname VALUES('conner ridge'); |
| 521 | INSERT INTO streetname VALUES('connery'); |
| 522 | INSERT INTO streetname VALUES('cooper run'); |
| 523 | INSERT INTO streetname VALUES('coopers ridge'); |
| 524 | INSERT INTO streetname VALUES('copper hill'); |
| 525 | INSERT INTO streetname VALUES('coppermine'); |
| 526 | INSERT INTO streetname VALUES('cornelia'); |
| 527 | INSERT INTO streetname VALUES('corner'); |
| 528 | INSERT INTO streetname VALUES('cornerstone'); |
| 529 | INSERT INTO streetname VALUES('cottage oaks'); |
| 530 | INSERT INTO streetname VALUES('cougar'); |
| 531 | INSERT INTO streetname VALUES('coves end'); |
| 532 | INSERT INTO streetname VALUES('cragland'); |
| 533 | INSERT INTO streetname VALUES('crail'); |
| 534 | INSERT INTO streetname VALUES('cranberry nook'); |
| 535 | INSERT INTO streetname VALUES('crawford brook'); |
| 536 | INSERT INTO streetname VALUES('crayton'); |
| 537 | INSERT INTO streetname VALUES('creek breeze'); |
| 538 | INSERT INTO streetname VALUES('crescent ridge'); |
| 539 | INSERT INTO streetname VALUES('crescent view'); |
| 540 | INSERT INTO streetname VALUES('cresta'); |
| 541 | INSERT INTO streetname VALUES('crestfield'); |
| 542 | INSERT INTO streetname VALUES('crestland'); |
| 543 | INSERT INTO streetname VALUES('crestwick'); |
| 544 | INSERT INTO streetname VALUES('crisfield'); |
| 545 | INSERT INTO streetname VALUES('crisp wood'); |
| 546 | INSERT INTO streetname VALUES('croft haven'); |
| 547 | INSERT INTO streetname VALUES('crofton springs'); |
| 548 | INSERT INTO streetname VALUES('cross'); |
| 549 | INSERT INTO streetname VALUES('crosspoint center'); |
| 550 | INSERT INTO streetname VALUES('crownvista'); |
| 551 | INSERT INTO streetname VALUES('crystal arms'); |
| 552 | INSERT INTO streetname VALUES('crystal crest'); |
| 553 | INSERT INTO streetname VALUES('crystal leaf'); |
| 554 | INSERT INTO streetname VALUES('cunningham park'); |
| 555 | INSERT INTO streetname VALUES('cypress pond'); |
| 556 | INSERT INTO streetname VALUES('daffodil'); |
| 557 | INSERT INTO streetname VALUES('daisyfield'); |
| 558 | INSERT INTO streetname VALUES('dalecrest'); |
| 559 | INSERT INTO streetname VALUES('dannelly park'); |
| 560 | INSERT INTO streetname VALUES('daphne'); |
| 561 | INSERT INTO streetname VALUES('daria'); |
| 562 | INSERT INTO streetname VALUES('dartmouth'); |
| 563 | INSERT INTO streetname VALUES('datha'); |
| 564 | INSERT INTO streetname VALUES('david cox'); |
| 565 | INSERT INTO streetname VALUES('davis'); |
| 566 | INSERT INTO streetname VALUES('davis crossing'); |
| 567 | INSERT INTO streetname VALUES('davis lake'); |
| 568 | INSERT INTO streetname VALUES('davis ridge'); |
| 569 | INSERT INTO streetname VALUES('dawnmist'); |
| 570 | INSERT INTO streetname VALUES('daybreak'); |
| 571 | INSERT INTO streetname VALUES('dearmon'); |
| 572 | INSERT INTO streetname VALUES('dearview'); |
| 573 | INSERT INTO streetname VALUES('deaton hill'); |
| 574 | INSERT INTO streetname VALUES('deer cross'); |
| 575 | INSERT INTO streetname VALUES('deerton'); |
| 576 | INSERT INTO streetname VALUES('degrasse'); |
| 577 | INSERT INTO streetname VALUES('delamere'); |
| 578 | INSERT INTO streetname VALUES('dellfield'); |
| 579 | INSERT INTO streetname VALUES('dellinger'); |
| 580 | INSERT INTO streetname VALUES('demington'); |
| 581 | INSERT INTO streetname VALUES('denmeade'); |
| 582 | INSERT INTO streetname VALUES('derita'); |
| 583 | INSERT INTO streetname VALUES('derita woods'); |
| 584 | INSERT INTO streetname VALUES('deruyter'); |
| 585 | INSERT INTO streetname VALUES('dervish'); |
| 586 | INSERT INTO streetname VALUES('devas'); |
| 587 | INSERT INTO streetname VALUES('devon croft'); |
| 588 | INSERT INTO streetname VALUES('devonbridge'); |
| 589 | INSERT INTO streetname VALUES('devongate'); |
| 590 | INSERT INTO streetname VALUES('devonhill'); |
| 591 | INSERT INTO streetname VALUES('dewmorn'); |
| 592 | INSERT INTO streetname VALUES('distribution center'); |
| 593 | INSERT INTO streetname VALUES('dominion crest'); |
| 594 | INSERT INTO streetname VALUES('dominion green'); |
| 595 | INSERT INTO streetname VALUES('dominion village'); |
| 596 | INSERT INTO streetname VALUES('dorshire'); |
| 597 | INSERT INTO streetname VALUES('double creek crossing'); |
| 598 | INSERT INTO streetname VALUES('dow'); |
| 599 | INSERT INTO streetname VALUES('downfield wood'); |
| 600 | INSERT INTO streetname VALUES('downing creek'); |
| 601 | INSERT INTO streetname VALUES('driscol'); |
| 602 | INSERT INTO streetname VALUES('driwood'); |
| 603 | INSERT INTO streetname VALUES('dry brook'); |
| 604 | INSERT INTO streetname VALUES('dumont'); |
| 605 | INSERT INTO streetname VALUES('dunblane'); |
| 606 | INSERT INTO streetname VALUES('dunfield'); |
| 607 | INSERT INTO streetname VALUES('dunoon'); |
| 608 | INSERT INTO streetname VALUES('dunslow'); |
| 609 | INSERT INTO streetname VALUES('dunstaff'); |
| 610 | INSERT INTO streetname VALUES('durham'); |
| 611 | INSERT INTO streetname VALUES('durston'); |
| 612 | INSERT INTO streetname VALUES('dusty cedar'); |
| 613 | INSERT INTO streetname VALUES('dusty trail'); |
| 614 | INSERT INTO streetname VALUES('dutchess'); |
| 615 | INSERT INTO streetname VALUES('duxford'); |
| 616 | INSERT INTO streetname VALUES('eagle creek'); |
| 617 | INSERT INTO streetname VALUES('eagles field'); |
| 618 | INSERT INTO streetname VALUES('eargle'); |
| 619 | INSERT INTO streetname VALUES('earlswood'); |
| 620 | INSERT INTO streetname VALUES('early mist'); |
| 621 | INSERT INTO streetname VALUES('earthenware'); |
| 622 | INSERT INTO streetname VALUES('eastfield park'); |
| 623 | INSERT INTO streetname VALUES('eastfield village'); |
| 624 | INSERT INTO streetname VALUES('easy'); |
| 625 | INSERT INTO streetname VALUES('eben'); |
| 626 | INSERT INTO streetname VALUES('edgepine'); |
| 627 | INSERT INTO streetname VALUES('edgewier'); |
| 628 | INSERT INTO streetname VALUES('edinburgh'); |
| 629 | INSERT INTO streetname VALUES('edinmeadow'); |
| 630 | INSERT INTO streetname VALUES('edmonton'); |
| 631 | INSERT INTO streetname VALUES('edwin jones'); |
| 632 | INSERT INTO streetname VALUES('elberon'); |
| 633 | INSERT INTO streetname VALUES('elderslie'); |
| 634 | INSERT INTO streetname VALUES('elementary view'); |
| 635 | INSERT INTO streetname VALUES('elendil'); |
| 636 | INSERT INTO streetname VALUES('elizabeth'); |
| 637 | INSERT INTO streetname VALUES('elm cove'); |
| 638 | INSERT INTO streetname VALUES('elrond'); |
| 639 | INSERT INTO streetname VALUES('elsenham'); |
| 640 | INSERT INTO streetname VALUES('elven'); |
| 641 | INSERT INTO streetname VALUES('emma lynn'); |
| 642 | INSERT INTO streetname VALUES('english setter'); |
| 643 | INSERT INTO streetname VALUES('enoch'); |
| 644 | INSERT INTO streetname VALUES('equipment'); |
| 645 | INSERT INTO streetname VALUES('ernest russell'); |
| 646 | INSERT INTO streetname VALUES('ernie'); |
| 647 | INSERT INTO streetname VALUES('esmeralda'); |
| 648 | INSERT INTO streetname VALUES('evergreen hollow'); |
| 649 | INSERT INTO streetname VALUES('eversfield'); |
| 650 | INSERT INTO streetname VALUES('ewen'); |
| 651 | INSERT INTO streetname VALUES('ewert cut'); |
| 652 | INSERT INTO streetname VALUES('exbury'); |
| 653 | INSERT INTO streetname VALUES('fair grounds park'); |
| 654 | INSERT INTO streetname VALUES('fairbourne'); |
| 655 | INSERT INTO streetname VALUES('fairchase'); |
| 656 | INSERT INTO streetname VALUES('faircreek'); |
| 657 | INSERT INTO streetname VALUES('fairglen'); |
| 658 | INSERT INTO streetname VALUES('fairlea'); |
| 659 | INSERT INTO streetname VALUES('fairmead'); |
| 660 | INSERT INTO streetname VALUES('fairmeadows'); |
| 661 | INSERT INTO streetname VALUES('fairstone'); |
| 662 | INSERT INTO streetname VALUES('fairvista'); |
| 663 | INSERT INTO streetname VALUES('fairway point'); |
| 664 | INSERT INTO streetname VALUES('falconcrest'); |
| 665 | INSERT INTO streetname VALUES('falls ridge'); |
| 666 | INSERT INTO streetname VALUES('falmouth'); |
| 667 | INSERT INTO streetname VALUES('far west'); |
| 668 | INSERT INTO streetname VALUES('farlow'); |
| 669 | INSERT INTO streetname VALUES('farris wheel'); |
| 670 | INSERT INTO streetname VALUES('fawndale'); |
| 671 | INSERT INTO streetname VALUES('feather bend'); |
| 672 | INSERT INTO streetname VALUES('fernledge'); |
| 673 | INSERT INTO streetname VALUES('fernmoss'); |
| 674 | INSERT INTO streetname VALUES('ferrell commons'); |
| 675 | INSERT INTO streetname VALUES('fieldstone'); |
| 676 | INSERT INTO streetname VALUES('fillian'); |
| 677 | INSERT INTO streetname VALUES('fincher'); |
| 678 | INSERT INTO streetname VALUES('foggy meadow'); |
| 679 | INSERT INTO streetname VALUES('fordyce'); |
| 680 | INSERT INTO streetname VALUES('forest grove'); |
| 681 | INSERT INTO streetname VALUES('forest path'); |
| 682 | INSERT INTO streetname VALUES('forestridge commons'); |
| 683 | INSERT INTO streetname VALUES('forestrock'); |
| 684 | INSERT INTO streetname VALUES('fortunes ridge'); |
| 685 | INSERT INTO streetname VALUES('founders club'); |
| 686 | INSERT INTO streetname VALUES('fountaingrass'); |
| 687 | INSERT INTO streetname VALUES('fox chase'); |
| 688 | INSERT INTO streetname VALUES('fox glen'); |
| 689 | INSERT INTO streetname VALUES('fox hill'); |
| 690 | INSERT INTO streetname VALUES('fox point'); |
| 691 | INSERT INTO streetname VALUES('fox trot'); |
| 692 | INSERT INTO streetname VALUES('foxbriar'); |
| 693 | INSERT INTO streetname VALUES('frank little'); |
| 694 | INSERT INTO streetname VALUES('franzia'); |
| 695 | INSERT INTO streetname VALUES('french woods'); |
| 696 | INSERT INTO streetname VALUES('frostmoor'); |
| 697 | INSERT INTO streetname VALUES('frye'); |
| 698 | INSERT INTO streetname VALUES('furlong'); |
| 699 | INSERT INTO streetname VALUES('galena view'); |
| 700 | INSERT INTO streetname VALUES('gallery pointe'); |
| 701 | INSERT INTO streetname VALUES('gammon'); |
| 702 | INSERT INTO streetname VALUES('garden grove'); |
| 703 | INSERT INTO streetname VALUES('gardendale'); |
| 704 | INSERT INTO streetname VALUES('garganey'); |
| 705 | INSERT INTO streetname VALUES('garnet field'); |
| 706 | INSERT INTO streetname VALUES('garrison'); |
| 707 | INSERT INTO streetname VALUES('garvin'); |
| 708 | INSERT INTO streetname VALUES('garvis'); |
| 709 | INSERT INTO streetname VALUES('gaskill'); |
| 710 | INSERT INTO streetname VALUES('gemstone'); |
| 711 | INSERT INTO streetname VALUES('gibbon'); |
| 712 | INSERT INTO streetname VALUES('gibbon terrace'); |
| 713 | INSERT INTO streetname VALUES('gibbons link'); |
| 714 | INSERT INTO streetname VALUES('gillman'); |
| 715 | INSERT INTO streetname VALUES('gladwood'); |
| 716 | INSERT INTO streetname VALUES('gladwyne'); |
| 717 | INSERT INTO streetname VALUES('glamorgan'); |
| 718 | INSERT INTO streetname VALUES('glaze'); |
| 719 | INSERT INTO streetname VALUES('glen brook'); |
| 720 | INSERT INTO streetname VALUES('glen cove'); |
| 721 | INSERT INTO streetname VALUES('glen hope'); |
| 722 | INSERT INTO streetname VALUES('glen manor'); |
| 723 | INSERT INTO streetname VALUES('glen olden'); |
| 724 | INSERT INTO streetname VALUES('glencairn'); |
| 725 | INSERT INTO streetname VALUES('glendock'); |
| 726 | INSERT INTO streetname VALUES('glenolden'); |
| 727 | INSERT INTO streetname VALUES('glenover'); |
| 728 | INSERT INTO streetname VALUES('glenshire'); |
| 729 | INSERT INTO streetname VALUES('glenstone'); |
| 730 | INSERT INTO streetname VALUES('gold dust'); |
| 731 | INSERT INTO streetname VALUES('golden pond'); |
| 732 | INSERT INTO streetname VALUES('goldenblush'); |
| 733 | INSERT INTO streetname VALUES('goldenfield'); |
| 734 | INSERT INTO streetname VALUES('goose landing'); |
| 735 | INSERT INTO streetname VALUES('gorham gate'); |
| 736 | INSERT INTO streetname VALUES('grabill'); |
| 737 | INSERT INTO streetname VALUES('graburns ford'); |
| 738 | INSERT INTO streetname VALUES('graham'); |
| 739 | INSERT INTO streetname VALUES('grahamson'); |
| 740 | INSERT INTO streetname VALUES('granard'); |
| 741 | INSERT INTO streetname VALUES('grand teton'); |
| 742 | INSERT INTO streetname VALUES('grande heights'); |
| 743 | INSERT INTO streetname VALUES('grandeur'); |
| 744 | INSERT INTO streetname VALUES('granite creek'); |
| 745 | INSERT INTO streetname VALUES('grasset'); |
| 746 | INSERT INTO streetname VALUES('graypark'); |
| 747 | INSERT INTO streetname VALUES('grays ridge'); |
| 748 | INSERT INTO streetname VALUES('great bear'); |
| 749 | INSERT INTO streetname VALUES('green clover'); |
| 750 | INSERT INTO streetname VALUES('green hedge'); |
| 751 | INSERT INTO streetname VALUES('green meadow'); |
| 752 | INSERT INTO streetname VALUES('green pasture'); |
| 753 | INSERT INTO streetname VALUES('greene'); |
| 754 | INSERT INTO streetname VALUES('greenloch'); |
| 755 | INSERT INTO streetname VALUES('greenock ridge'); |
| 756 | INSERT INTO streetname VALUES('greenware'); |
| 757 | INSERT INTO streetname VALUES('greenway village'); |
| 758 | INSERT INTO streetname VALUES('grenelefe village'); |
| 759 | INSERT INTO streetname VALUES('grey dogwood'); |
| 760 | INSERT INTO streetname VALUES('greyhound'); |
| 761 | INSERT INTO streetname VALUES('greylock ridge'); |
| 762 | INSERT INTO streetname VALUES('grosbeak'); |
| 763 | INSERT INTO streetname VALUES('grove'); |
| 764 | INSERT INTO streetname VALUES('groveton'); |
| 765 | INSERT INTO streetname VALUES('groveview'); |
| 766 | INSERT INTO streetname VALUES('hackberry creek'); |
| 767 | INSERT INTO streetname VALUES('hackberry grove'); |
| 768 | INSERT INTO streetname VALUES('hackett'); |
| 769 | INSERT INTO streetname VALUES('haddington'); |
| 770 | INSERT INTO streetname VALUES('hagler'); |
| 771 | INSERT INTO streetname VALUES('halcott'); |
| 772 | INSERT INTO streetname VALUES('half dome'); |
| 773 | INSERT INTO streetname VALUES('hallam'); |
| 774 | INSERT INTO streetname VALUES('hamilton russell'); |
| 775 | INSERT INTO streetname VALUES('hampton place'); |
| 776 | INSERT INTO streetname VALUES('hankins'); |
| 777 | INSERT INTO streetname VALUES('harburn forest'); |
| 778 | INSERT INTO streetname VALUES('harringham'); |
| 779 | INSERT INTO streetname VALUES('harrington woods'); |
| 780 | INSERT INTO streetname VALUES('harris corners'); |
| 781 | INSERT INTO streetname VALUES('harris cove'); |
| 782 | INSERT INTO streetname VALUES('harris glen'); |
| 783 | INSERT INTO streetname VALUES('harris hill'); |
| 784 | INSERT INTO streetname VALUES('harris oak'); |
| 785 | INSERT INTO streetname VALUES('harris pointe'); |
| 786 | INSERT INTO streetname VALUES('harris pond'); |
| 787 | INSERT INTO streetname VALUES('harris ridge'); |
| 788 | INSERT INTO streetname VALUES('harris technology'); |
| 789 | INSERT INTO streetname VALUES('harris woods'); |
| 790 | INSERT INTO streetname VALUES('hartfield downs'); |
| 791 | INSERT INTO streetname VALUES('hattie little'); |
| 792 | INSERT INTO streetname VALUES('hatwynn'); |
| 793 | INSERT INTO streetname VALUES('hawkins'); |
| 794 | INSERT INTO streetname VALUES('hawksnest'); |
| 795 | INSERT INTO streetname VALUES('haybridge'); |
| 796 | INSERT INTO streetname VALUES('hayden'); |
| 797 | INSERT INTO streetname VALUES('hazelcroft'); |
| 798 | INSERT INTO streetname VALUES('hazlitt'); |
| 799 | INSERT INTO streetname VALUES('hazy valley'); |
| 800 | INSERT INTO streetname VALUES('hearst'); |
| 801 | INSERT INTO streetname VALUES('heathcrest'); |
| 802 | INSERT INTO streetname VALUES('heathcroft'); |
| 803 | INSERT INTO streetname VALUES('hedge maple'); |
| 804 | INSERT INTO streetname VALUES('hedgecrest'); |
| 805 | INSERT INTO streetname VALUES('hedingham'); |
| 806 | INSERT INTO streetname VALUES('heman'); |
| 807 | INSERT INTO streetname VALUES('henderson'); |
| 808 | INSERT INTO streetname VALUES('henderson oaks'); |
| 809 | INSERT INTO streetname VALUES('henderson valley'); |
| 810 | INSERT INTO streetname VALUES('hendry'); |
| 811 | INSERT INTO streetname VALUES('heritage hills'); |
| 812 | INSERT INTO streetname VALUES('heritage woods'); |
| 813 | INSERT INTO streetname VALUES('heron cove'); |
| 814 | INSERT INTO streetname VALUES('heron glen'); |
| 815 | INSERT INTO streetname VALUES('hewitt'); |
| 816 | INSERT INTO streetname VALUES('hey rock'); |
| 817 | INSERT INTO streetname VALUES('heysham'); |
| 818 | INSERT INTO streetname VALUES('hickory cove'); |
| 819 | INSERT INTO streetname VALUES('hidden meadow'); |
| 820 | INSERT INTO streetname VALUES('high glen'); |
| 821 | INSERT INTO streetname VALUES('high laurel'); |
| 822 | INSERT INTO streetname VALUES('high valley'); |
| 823 | INSERT INTO streetname VALUES('highcroft'); |
| 824 | INSERT INTO streetname VALUES('highland'); |
| 825 | INSERT INTO streetname VALUES('highland commons'); |
| 826 | INSERT INTO streetname VALUES('highland creek'); |
| 827 | INSERT INTO streetname VALUES('highland glen'); |
| 828 | INSERT INTO streetname VALUES('highland park'); |
| 829 | INSERT INTO streetname VALUES('highlander'); |
| 830 | INSERT INTO streetname VALUES('highstream'); |
| 831 | INSERT INTO streetname VALUES('hilltop'); |
| 832 | INSERT INTO streetname VALUES('hobbitshire'); |
| 833 | INSERT INTO streetname VALUES('hoffman'); |
| 834 | INSERT INTO streetname VALUES('hogans way'); |
| 835 | INSERT INTO streetname VALUES('holbert'); |
| 836 | INSERT INTO streetname VALUES('hollow ridge'); |
| 837 | INSERT INTO streetname VALUES('holly vista'); |
| 838 | INSERT INTO streetname VALUES('hollywood'); |
| 839 | INSERT INTO streetname VALUES('hoover'); |
| 840 | INSERT INTO streetname VALUES('hopkins'); |
| 841 | INSERT INTO streetname VALUES('horace mann'); |
| 842 | INSERT INTO streetname VALUES('hornbeam'); |
| 843 | INSERT INTO streetname VALUES('horse pasture'); |
| 844 | INSERT INTO streetname VALUES('hosta'); |
| 845 | INSERT INTO streetname VALUES('howard'); |
| 846 | INSERT INTO streetname VALUES('hubbard'); |
| 847 | INSERT INTO streetname VALUES('hubbard falls'); |
| 848 | INSERT INTO streetname VALUES('hubbard woods'); |
| 849 | INSERT INTO streetname VALUES('hucks'); |
| 850 | INSERT INTO streetname VALUES('hunters creek'); |
| 851 | INSERT INTO streetname VALUES('hunters pointe'); |
| 852 | INSERT INTO streetname VALUES('hunters spring'); |
| 853 | INSERT INTO streetname VALUES('hunters whip'); |
| 854 | INSERT INTO streetname VALUES('huntmeadow'); |
| 855 | INSERT INTO streetname VALUES('hutchison mcdonald'); |
| 856 | INSERT INTO streetname VALUES('ingleton'); |
| 857 | INSERT INTO streetname VALUES('insdale'); |
| 858 | INSERT INTO streetname VALUES('interstate 85 service'); |
| 859 | INSERT INTO streetname VALUES('iola'); |
| 860 | INSERT INTO streetname VALUES('iredell'); |
| 861 | INSERT INTO streetname VALUES('iron brigade'); |
| 862 | INSERT INTO streetname VALUES('irwin valley'); |
| 863 | INSERT INTO streetname VALUES('irwin wood'); |
| 864 | INSERT INTO streetname VALUES('ivy brook'); |
| 865 | INSERT INTO streetname VALUES('ivy ridge'); |
| 866 | INSERT INTO streetname VALUES('jack russell'); |
| 867 | INSERT INTO streetname VALUES('jackson'); |
| 868 | INSERT INTO streetname VALUES('jacob martin'); |
| 869 | INSERT INTO streetname VALUES('jamison'); |
| 870 | INSERT INTO streetname VALUES('jane'); |
| 871 | INSERT INTO streetname VALUES('jaspar crest'); |
| 872 | INSERT INTO streetname VALUES('jessica'); |
| 873 | INSERT INTO streetname VALUES('jimmy oehler'); |
| 874 | INSERT INTO streetname VALUES('jocelyn'); |
| 875 | INSERT INTO streetname VALUES('johnston mill'); |
| 876 | INSERT INTO streetname VALUES('johnston oehler'); |
| 877 | INSERT INTO streetname VALUES('judal'); |
| 878 | INSERT INTO streetname VALUES('junipeous'); |
| 879 | INSERT INTO streetname VALUES('juniper'); |
| 880 | INSERT INTO streetname VALUES('juniperus'); |
| 881 | INSERT INTO streetname VALUES('kalispell'); |
| 882 | INSERT INTO streetname VALUES('karylsturn'); |
| 883 | INSERT INTO streetname VALUES('katelyn'); |
| 884 | INSERT INTO streetname VALUES('kayron'); |
| 885 | INSERT INTO streetname VALUES('keaton'); |
| 886 | INSERT INTO streetname VALUES('keble'); |
| 887 | INSERT INTO streetname VALUES('keels'); |
| 888 | INSERT INTO streetname VALUES('keith'); |
| 889 | INSERT INTO streetname VALUES('keithwood'); |
| 890 | INSERT INTO streetname VALUES('kelden walker'); |
| 891 | INSERT INTO streetname VALUES('kelsey emma'); |
| 892 | INSERT INTO streetname VALUES('kendrick'); |
| 893 | INSERT INTO streetname VALUES('kenmont'); |
| 894 | INSERT INTO streetname VALUES('kennerly cove'); |
| 895 | INSERT INTO streetname VALUES('kenninghall'); |
| 896 | INSERT INTO streetname VALUES('kent village'); |
| 897 | INSERT INTO streetname VALUES('kestral ridge'); |
| 898 | INSERT INTO streetname VALUES('kestrel'); |
| 899 | INSERT INTO streetname VALUES('kilmartin'); |
| 900 | INSERT INTO streetname VALUES('kilty'); |
| 901 | INSERT INTO streetname VALUES('kinglet'); |
| 902 | INSERT INTO streetname VALUES('kingsland'); |
| 903 | INSERT INTO streetname VALUES('kingsnorth'); |
| 904 | INSERT INTO streetname VALUES('kinsmore'); |
| 905 | INSERT INTO streetname VALUES('kirkgard'); |
| 906 | INSERT INTO streetname VALUES('kirkmont'); |
| 907 | INSERT INTO streetname VALUES('knightsgate'); |
| 908 | INSERT INTO streetname VALUES('kobuk'); |
| 909 | INSERT INTO streetname VALUES('kotlik'); |
| 910 | INSERT INTO streetname VALUES('kotz'); |
| 911 | INSERT INTO streetname VALUES('kyndall walk'); |
| 912 | INSERT INTO streetname VALUES('laborde'); |
| 913 | INSERT INTO streetname VALUES('lady bank'); |
| 914 | INSERT INTO streetname VALUES('lagrande'); |
| 915 | INSERT INTO streetname VALUES('lake'); |
| 916 | INSERT INTO streetname VALUES('lakeridge commons'); |
| 917 | INSERT INTO streetname VALUES('lakeview'); |
| 918 | INSERT INTO streetname VALUES('lakewood edge'); |
| 919 | INSERT INTO streetname VALUES('lakota'); |
| 920 | INSERT INTO streetname VALUES('lambrook'); |
| 921 | INSERT INTO streetname VALUES('lampkin'); |
| 922 | INSERT INTO streetname VALUES('lampkin park'); |
| 923 | INSERT INTO streetname VALUES('langham'); |
| 924 | INSERT INTO streetname VALUES('lanzerac manor'); |
| 925 | INSERT INTO streetname VALUES('larkmead forest'); |
| 926 | INSERT INTO streetname VALUES('lattice'); |
| 927 | INSERT INTO streetname VALUES('laurel crest'); |
| 928 | INSERT INTO streetname VALUES('laurel ridge'); |
| 929 | INSERT INTO streetname VALUES('laurel run'); |
| 930 | INSERT INTO streetname VALUES('laurenfield'); |
| 931 | INSERT INTO streetname VALUES('laveta'); |
| 932 | INSERT INTO streetname VALUES('lazy day'); |
| 933 | INSERT INTO streetname VALUES('leawood run'); |
| 934 | INSERT INTO streetname VALUES('lee marie'); |
| 935 | INSERT INTO streetname VALUES('legacy lake'); |
| 936 | INSERT INTO streetname VALUES('legacy park'); |
| 937 | INSERT INTO streetname VALUES('legato'); |
| 938 | INSERT INTO streetname VALUES('legolas'); |
| 939 | INSERT INTO streetname VALUES('leigh glen'); |
| 940 | INSERT INTO streetname VALUES('lence'); |
| 941 | INSERT INTO streetname VALUES('lenox hill'); |
| 942 | INSERT INTO streetname VALUES('leonine'); |
| 943 | INSERT INTO streetname VALUES('leslie'); |
| 944 | INSERT INTO streetname VALUES('lester hill'); |
| 945 | INSERT INTO streetname VALUES('levisey'); |
| 946 | INSERT INTO streetname VALUES('liberty bell'); |
| 947 | INSERT INTO streetname VALUES('linden berry'); |
| 948 | INSERT INTO streetname VALUES('lisbon'); |
| 949 | INSERT INTO streetname VALUES('little stoney'); |
| 950 | INSERT INTO streetname VALUES('livengood'); |
| 951 | INSERT INTO streetname VALUES('lochway'); |
| 952 | INSERT INTO streetname VALUES('lockman'); |
| 953 | INSERT INTO streetname VALUES('loganville'); |
| 954 | INSERT INTO streetname VALUES('lone tree'); |
| 955 | INSERT INTO streetname VALUES('long creek park'); |
| 956 | INSERT INTO streetname VALUES('long forest'); |
| 957 | INSERT INTO streetname VALUES('looking glass'); |
| 958 | INSERT INTO streetname VALUES('lookout point'); |
| 959 | INSERT INTO streetname VALUES('lowen'); |
| 960 | INSERT INTO streetname VALUES('lusby'); |
| 961 | INSERT INTO streetname VALUES('lyleton'); |
| 962 | INSERT INTO streetname VALUES('lynn lee'); |
| 963 | INSERT INTO streetname VALUES('lynnewood glen'); |
| 964 | INSERT INTO streetname VALUES('machrie'); |
| 965 | INSERT INTO streetname VALUES('mackinac'); |
| 966 | INSERT INTO streetname VALUES('maddox'); |
| 967 | INSERT INTO streetname VALUES('madison park'); |
| 968 | INSERT INTO streetname VALUES('mallard'); |
| 969 | INSERT INTO streetname VALUES('mallard cove'); |
| 970 | INSERT INTO streetname VALUES('mallard forest'); |
| 971 | INSERT INTO streetname VALUES('mallard grove'); |
| 972 | INSERT INTO streetname VALUES('mallard hill'); |
| 973 | INSERT INTO streetname VALUES('mallard park'); |
| 974 | INSERT INTO streetname VALUES('mallard ridge'); |
| 975 | INSERT INTO streetname VALUES('mallard view'); |
| 976 | INSERT INTO streetname VALUES('manbey'); |
| 977 | INSERT INTO streetname VALUES('manning'); |
| 978 | INSERT INTO streetname VALUES('mantario'); |
| 979 | INSERT INTO streetname VALUES('maple'); |
| 980 | INSERT INTO streetname VALUES('maple cove'); |
| 981 | INSERT INTO streetname VALUES('maple park'); |
| 982 | INSERT INTO streetname VALUES('marathon hill'); |
| 983 | INSERT INTO streetname VALUES('marbury'); |
| 984 | INSERT INTO streetname VALUES('marett'); |
| 985 | INSERT INTO streetname VALUES('marigold'); |
| 986 | INSERT INTO streetname VALUES('marionwood'); |
| 987 | INSERT INTO streetname VALUES('marshbank'); |
| 988 | INSERT INTO streetname VALUES('mason'); |
| 989 | INSERT INTO streetname VALUES('mayapple'); |
| 990 | INSERT INTO streetname VALUES('maylandia'); |
| 991 | INSERT INTO streetname VALUES('mayspring'); |
| 992 | INSERT INTO streetname VALUES('mcadam'); |
| 993 | INSERT INTO streetname VALUES('mcchesney'); |
| 994 | INSERT INTO streetname VALUES('mccurdy'); |
| 995 | INSERT INTO streetname VALUES('mcgrath'); |
| 996 | INSERT INTO streetname VALUES('mckendree'); |
| 997 | INSERT INTO streetname VALUES('mclaughlin'); |
| 998 | INSERT INTO streetname VALUES('mctaggart'); |
| 999 | INSERT INTO streetname VALUES('meadow green'); |
| 1000 | INSERT INTO streetname VALUES('meadow knoll'); |
| 1001 | INSERT INTO streetname VALUES('meadow post'); |
| 1002 | INSERT INTO streetname VALUES('meadowmont'); |
| 1003 | INSERT INTO streetname VALUES('meadowmont view'); |
| 1004 | INSERT INTO streetname VALUES('meadowview hills'); |
| 1005 | INSERT INTO streetname VALUES('melshire'); |
| 1006 | INSERT INTO streetname VALUES('melstrand'); |
| 1007 | INSERT INTO streetname VALUES('mentone'); |
| 1008 | INSERT INTO streetname VALUES('meridale crossing'); |
| 1009 | INSERT INTO streetname VALUES('merion hills'); |
| 1010 | INSERT INTO streetname VALUES('merlot'); |
| 1011 | INSERT INTO streetname VALUES('mersham'); |
| 1012 | INSERT INTO streetname VALUES('metromont'); |
| 1013 | INSERT INTO streetname VALUES('metromont industrial'); |
| 1014 | INSERT INTO streetname VALUES('michaw'); |
| 1015 | INSERT INTO streetname VALUES('milhaven'); |
| 1016 | INSERT INTO streetname VALUES('milhof'); |
| 1017 | INSERT INTO streetname VALUES('millstream ridge'); |
| 1018 | INSERT INTO streetname VALUES('mineral ridge'); |
| 1019 | INSERT INTO streetname VALUES('mint thistle'); |
| 1020 | INSERT INTO streetname VALUES('mintleaf'); |
| 1021 | INSERT INTO streetname VALUES('mintvale'); |
| 1022 | INSERT INTO streetname VALUES('misty'); |
| 1023 | INSERT INTO streetname VALUES('misty arbor'); |
| 1024 | INSERT INTO streetname VALUES('misty creek'); |
| 1025 | INSERT INTO streetname VALUES('misty oaks'); |
| 1026 | INSERT INTO streetname VALUES('misty wood'); |
| 1027 | INSERT INTO streetname VALUES('mitzi deborah'); |
| 1028 | INSERT INTO streetname VALUES('mobile'); |
| 1029 | INSERT INTO streetname VALUES('molly elizabeth'); |
| 1030 | INSERT INTO streetname VALUES('monmouth'); |
| 1031 | INSERT INTO streetname VALUES('montrose'); |
| 1032 | INSERT INTO streetname VALUES('moonlight'); |
| 1033 | INSERT INTO streetname VALUES('moose'); |
| 1034 | INSERT INTO streetname VALUES('morning dew'); |
| 1035 | INSERT INTO streetname VALUES('morningsong'); |
| 1036 | INSERT INTO streetname VALUES('morningview'); |
| 1037 | INSERT INTO streetname VALUES('morsey'); |
| 1038 | INSERT INTO streetname VALUES('moss glen'); |
| 1039 | INSERT INTO streetname VALUES('mossy bank'); |
| 1040 | INSERT INTO streetname VALUES('motor sport'); |
| 1041 | INSERT INTO streetname VALUES('mountain laurel'); |
| 1042 | INSERT INTO streetname VALUES('mourning dove'); |
| 1043 | INSERT INTO streetname VALUES('mozart'); |
| 1044 | INSERT INTO streetname VALUES('munsing'); |
| 1045 | INSERT INTO streetname VALUES('murray'); |
| 1046 | INSERT INTO streetname VALUES('nathan'); |
| 1047 | INSERT INTO streetname VALUES('netherhall'); |
| 1048 | INSERT INTO streetname VALUES('netherton'); |
| 1049 | INSERT INTO streetname VALUES('neuhoff'); |
| 1050 | INSERT INTO streetname VALUES('nevin'); |
| 1051 | INSERT INTO streetname VALUES('nevin brook'); |
| 1052 | INSERT INTO streetname VALUES('nevin glen'); |
| 1053 | INSERT INTO streetname VALUES('nevin place'); |
| 1054 | INSERT INTO streetname VALUES('new england'); |
| 1055 | INSERT INTO streetname VALUES('new house'); |
| 1056 | INSERT INTO streetname VALUES('newbary'); |
| 1057 | INSERT INTO streetname VALUES('newchurch'); |
| 1058 | INSERT INTO streetname VALUES('newfane'); |
| 1059 | INSERT INTO streetname VALUES('newgard'); |
| 1060 | INSERT INTO streetname VALUES('nicholas'); |
| 1061 | INSERT INTO streetname VALUES('nicole'); |
| 1062 | INSERT INTO streetname VALUES('nobility'); |
| 1063 | INSERT INTO streetname VALUES('norcroft'); |
| 1064 | INSERT INTO streetname VALUES('northridge'); |
| 1065 | INSERT INTO streetname VALUES('northside'); |
| 1066 | INSERT INTO streetname VALUES('northwoods business'); |
| 1067 | INSERT INTO streetname VALUES('norway'); |
| 1068 | INSERT INTO streetname VALUES('nottinghill'); |
| 1069 | INSERT INTO streetname VALUES('numenore'); |
| 1070 | INSERT INTO streetname VALUES('nyewood'); |
| 1071 | INSERT INTO streetname VALUES('oak'); |
| 1072 | INSERT INTO streetname VALUES('oak cove'); |
| 1073 | INSERT INTO streetname VALUES('oak pasture'); |
| 1074 | INSERT INTO streetname VALUES('oakburn'); |
| 1075 | INSERT INTO streetname VALUES('oakwinds'); |
| 1076 | INSERT INTO streetname VALUES('oakwood'); |
| 1077 | INSERT INTO streetname VALUES('obrien'); |
| 1078 | INSERT INTO streetname VALUES('ocala'); |
| 1079 | INSERT INTO streetname VALUES('old bridge'); |
| 1080 | INSERT INTO streetname VALUES('old fox'); |
| 1081 | INSERT INTO streetname VALUES('old potters'); |
| 1082 | INSERT INTO streetname VALUES('old statesville'); |
| 1083 | INSERT INTO streetname VALUES('old steine'); |
| 1084 | INSERT INTO streetname VALUES('old stoney creek'); |
| 1085 | INSERT INTO streetname VALUES('old sugar creek'); |
| 1086 | INSERT INTO streetname VALUES('old timber'); |
| 1087 | INSERT INTO streetname VALUES('old wagon'); |
| 1088 | INSERT INTO streetname VALUES('old willow'); |
| 1089 | INSERT INTO streetname VALUES('oldenway'); |
| 1090 | INSERT INTO streetname VALUES('oneida'); |
| 1091 | INSERT INTO streetname VALUES('ontario'); |
| 1092 | INSERT INTO streetname VALUES('oriole'); |
| 1093 | INSERT INTO streetname VALUES('orofino'); |
| 1094 | INSERT INTO streetname VALUES('orr'); |
| 1095 | INSERT INTO streetname VALUES('osage'); |
| 1096 | INSERT INTO streetname VALUES('osceola'); |
| 1097 | INSERT INTO streetname VALUES('osprey knoll'); |
| 1098 | INSERT INTO streetname VALUES('oxford hill'); |
| 1099 | INSERT INTO streetname VALUES('painted fern'); |
| 1100 | INSERT INTO streetname VALUES('painted pony'); |
| 1101 | INSERT INTO streetname VALUES('paisley'); |
| 1102 | INSERT INTO streetname VALUES('pale moss'); |
| 1103 | INSERT INTO streetname VALUES('palladium'); |
| 1104 | INSERT INTO streetname VALUES('palmutum'); |
| 1105 | INSERT INTO streetname VALUES('palustris'); |
| 1106 | INSERT INTO streetname VALUES('panglemont'); |
| 1107 | INSERT INTO streetname VALUES('panther'); |
| 1108 | INSERT INTO streetname VALUES('panthersville'); |
| 1109 | INSERT INTO streetname VALUES('paper whites'); |
| 1110 | INSERT INTO streetname VALUES('park'); |
| 1111 | INSERT INTO streetname VALUES('parker green'); |
| 1112 | INSERT INTO streetname VALUES('parkhouse'); |
| 1113 | INSERT INTO streetname VALUES('passour ridge'); |
| 1114 | INSERT INTO streetname VALUES('pasture view'); |
| 1115 | INSERT INTO streetname VALUES('patricia ann'); |
| 1116 | INSERT INTO streetname VALUES('patton'); |
| 1117 | INSERT INTO streetname VALUES('patton ridge'); |
| 1118 | INSERT INTO streetname VALUES('pawpaw'); |
| 1119 | INSERT INTO streetname VALUES('peach'); |
| 1120 | INSERT INTO streetname VALUES('peakwood'); |
| 1121 | INSERT INTO streetname VALUES('pebble creek'); |
| 1122 | INSERT INTO streetname VALUES('pecan cove'); |
| 1123 | INSERT INTO streetname VALUES('pedigree'); |
| 1124 | INSERT INTO streetname VALUES('pelorus'); |
| 1125 | INSERT INTO streetname VALUES('penmore'); |
| 1126 | INSERT INTO streetname VALUES('pensfold'); |
| 1127 | INSERT INTO streetname VALUES('pepperstone'); |
| 1128 | INSERT INTO streetname VALUES('peregrine'); |
| 1129 | INSERT INTO streetname VALUES('periwinkle'); |
| 1130 | INSERT INTO streetname VALUES('perkins'); |
| 1131 | INSERT INTO streetname VALUES('pete brown'); |
| 1132 | INSERT INTO streetname VALUES('phillips'); |
| 1133 | INSERT INTO streetname VALUES('pickway'); |
| 1134 | INSERT INTO streetname VALUES('piercy woods'); |
| 1135 | INSERT INTO streetname VALUES('pierpoint'); |
| 1136 | INSERT INTO streetname VALUES('pine'); |
| 1137 | INSERT INTO streetname VALUES('pine branch'); |
| 1138 | INSERT INTO streetname VALUES('pine meadow'); |
| 1139 | INSERT INTO streetname VALUES('pineleaf'); |
| 1140 | INSERT INTO streetname VALUES('pinewood'); |
| 1141 | INSERT INTO streetname VALUES('pintail'); |
| 1142 | INSERT INTO streetname VALUES('pipestone'); |
| 1143 | INSERT INTO streetname VALUES('placer maple'); |
| 1144 | INSERT INTO streetname VALUES('plover'); |
| 1145 | INSERT INTO streetname VALUES('plum'); |
| 1146 | INSERT INTO streetname VALUES('po box'); |
| 1147 | INSERT INTO streetname VALUES('pochard'); |
| 1148 | INSERT INTO streetname VALUES('pointview'); |
| 1149 | INSERT INTO streetname VALUES('polk and white'); |
| 1150 | INSERT INTO streetname VALUES('pond valley'); |
| 1151 | INSERT INTO streetname VALUES('pondridge'); |
| 1152 | INSERT INTO streetname VALUES('pope farm'); |
| 1153 | INSERT INTO streetname VALUES('poplar grove'); |
| 1154 | INSERT INTO streetname VALUES('poplar springs'); |
| 1155 | INSERT INTO streetname VALUES('portola'); |
| 1156 | INSERT INTO streetname VALUES('potters glen'); |
| 1157 | INSERT INTO streetname VALUES('powatan'); |
| 1158 | INSERT INTO streetname VALUES('prairie valley'); |
| 1159 | INSERT INTO streetname VALUES('prescott'); |
| 1160 | INSERT INTO streetname VALUES('presmann'); |
| 1161 | INSERT INTO streetname VALUES('prestigious'); |
| 1162 | INSERT INTO streetname VALUES('princess'); |
| 1163 | INSERT INTO streetname VALUES('prosperity'); |
| 1164 | INSERT INTO streetname VALUES('prosperity church'); |
| 1165 | INSERT INTO streetname VALUES('prosperity commons'); |
| 1166 | INSERT INTO streetname VALUES('prosperity park'); |
| 1167 | INSERT INTO streetname VALUES('prosperity point'); |
| 1168 | INSERT INTO streetname VALUES('prosperity ridge'); |
| 1169 | INSERT INTO streetname VALUES('prosperity view'); |
| 1170 | INSERT INTO streetname VALUES('purple finch'); |
| 1171 | INSERT INTO streetname VALUES('quail'); |
| 1172 | INSERT INTO streetname VALUES('queensbury'); |
| 1173 | INSERT INTO streetname VALUES('quinn'); |
| 1174 | INSERT INTO streetname VALUES('racine'); |
| 1175 | INSERT INTO streetname VALUES('radbourne'); |
| 1176 | INSERT INTO streetname VALUES('raddington'); |
| 1177 | INSERT INTO streetname VALUES('raku'); |
| 1178 | INSERT INTO streetname VALUES('rancliffe'); |
| 1179 | INSERT INTO streetname VALUES('ravencrest'); |
| 1180 | INSERT INTO streetname VALUES('reames'); |
| 1181 | INSERT INTO streetname VALUES('rebecca run'); |
| 1182 | INSERT INTO streetname VALUES('red bluff'); |
| 1183 | INSERT INTO streetname VALUES('red clay'); |
| 1184 | INSERT INTO streetname VALUES('red clover'); |
| 1185 | INSERT INTO streetname VALUES('red rose'); |
| 1186 | INSERT INTO streetname VALUES('red shed'); |
| 1187 | INSERT INTO streetname VALUES('red tail'); |
| 1188 | INSERT INTO streetname VALUES('redbridge'); |
| 1189 | INSERT INTO streetname VALUES('redstart'); |
| 1190 | INSERT INTO streetname VALUES('redstone view'); |
| 1191 | INSERT INTO streetname VALUES('reedmont'); |
| 1192 | INSERT INTO streetname VALUES('reeves'); |
| 1193 | INSERT INTO streetname VALUES('regal'); |
| 1194 | INSERT INTO streetname VALUES('reinbeck'); |
| 1195 | INSERT INTO streetname VALUES('retriever'); |
| 1196 | INSERT INTO streetname VALUES('ribbonwalk'); |
| 1197 | INSERT INTO streetname VALUES('richardson park'); |
| 1198 | INSERT INTO streetname VALUES('richfield'); |
| 1199 | INSERT INTO streetname VALUES('riddings'); |
| 1200 | INSERT INTO streetname VALUES('ridge'); |
| 1201 | INSERT INTO streetname VALUES('ridge cliff'); |
| 1202 | INSERT INTO streetname VALUES('ridge path'); |
| 1203 | INSERT INTO streetname VALUES('ridge peak'); |
| 1204 | INSERT INTO streetname VALUES('ridgefield'); |
| 1205 | INSERT INTO streetname VALUES('ridgeline'); |
| 1206 | INSERT INTO streetname VALUES('ridgeview commons'); |
| 1207 | INSERT INTO streetname VALUES('riley'); |
| 1208 | INSERT INTO streetname VALUES('riley woods'); |
| 1209 | INSERT INTO streetname VALUES('rillet'); |
| 1210 | INSERT INTO streetname VALUES('rindle'); |
| 1211 | INSERT INTO streetname VALUES('rivendell'); |
| 1212 | INSERT INTO streetname VALUES('robin'); |
| 1213 | INSERT INTO streetname VALUES('robins nest'); |
| 1214 | INSERT INTO streetname VALUES('robur'); |
| 1215 | INSERT INTO streetname VALUES('robyns glen'); |
| 1216 | INSERT INTO streetname VALUES('rock stream'); |
| 1217 | INSERT INTO streetname VALUES('rockwell'); |
| 1218 | INSERT INTO streetname VALUES('rockwell church'); |
| 1219 | INSERT INTO streetname VALUES('rocky brook'); |
| 1220 | INSERT INTO streetname VALUES('rocky ford club'); |
| 1221 | INSERT INTO streetname VALUES('rotary'); |
| 1222 | INSERT INTO streetname VALUES('rouda'); |
| 1223 | INSERT INTO streetname VALUES('royal bluff'); |
| 1224 | INSERT INTO streetname VALUES('royal celadon'); |
| 1225 | INSERT INTO streetname VALUES('rubin lura'); |
| 1226 | INSERT INTO streetname VALUES('runswyck'); |
| 1227 | INSERT INTO streetname VALUES('ruth ferrell'); |
| 1228 | INSERT INTO streetname VALUES('ruth polk'); |
| 1229 | INSERT INTO streetname VALUES('ryan jay'); |
| 1230 | INSERT INTO streetname VALUES('sackett'); |
| 1231 | INSERT INTO streetname VALUES('saddle pace'); |
| 1232 | INSERT INTO streetname VALUES('saddle run'); |
| 1233 | INSERT INTO streetname VALUES('saddle trail'); |
| 1234 | INSERT INTO streetname VALUES('saguaro'); |
| 1235 | INSERT INTO streetname VALUES('saint audrey'); |
| 1236 | INSERT INTO streetname VALUES('saint bernard'); |
| 1237 | INSERT INTO streetname VALUES('saint frances'); |
| 1238 | INSERT INTO streetname VALUES('sam roper'); |
| 1239 | INSERT INTO streetname VALUES('samara'); |
| 1240 | INSERT INTO streetname VALUES('sanders creek'); |
| 1241 | INSERT INTO streetname VALUES('saquache'); |
| 1242 | INSERT INTO streetname VALUES('sarnia'); |
| 1243 | INSERT INTO streetname VALUES('savannah springs'); |
| 1244 | INSERT INTO streetname VALUES('sawgrass ridge'); |
| 1245 | INSERT INTO streetname VALUES('saxonbury'); |
| 1246 | INSERT INTO streetname VALUES('scotch moss'); |
| 1247 | INSERT INTO streetname VALUES('seasons'); |
| 1248 | INSERT INTO streetname VALUES('serenity'); |
| 1249 | INSERT INTO streetname VALUES('seths'); |
| 1250 | INSERT INTO streetname VALUES('shadow lawn'); |
| 1251 | INSERT INTO streetname VALUES('shadow oaks'); |
| 1252 | INSERT INTO streetname VALUES('shadow pine'); |
| 1253 | INSERT INTO streetname VALUES('shadyside'); |
| 1254 | INSERT INTO streetname VALUES('shallow oak'); |
| 1255 | INSERT INTO streetname VALUES('shelley'); |
| 1256 | INSERT INTO streetname VALUES('shining oak'); |
| 1257 | INSERT INTO streetname VALUES('ship'); |
| 1258 | INSERT INTO streetname VALUES('shore haven'); |
| 1259 | INSERT INTO streetname VALUES('shuman'); |
| 1260 | INSERT INTO streetname VALUES('sidney'); |
| 1261 | INSERT INTO streetname VALUES('silver birch'); |
| 1262 | INSERT INTO streetname VALUES('silvermere'); |
| 1263 | INSERT INTO streetname VALUES('simonton'); |
| 1264 | INSERT INTO streetname VALUES('singing hills'); |
| 1265 | INSERT INTO streetname VALUES('singing oak'); |
| 1266 | INSERT INTO streetname VALUES('sipes'); |
| 1267 | INSERT INTO streetname VALUES('six point'); |
| 1268 | INSERT INTO streetname VALUES('skycrest'); |
| 1269 | INSERT INTO streetname VALUES('skyline'); |
| 1270 | INSERT INTO streetname VALUES('small'); |
| 1271 | INSERT INTO streetname VALUES('smith corners'); |
| 1272 | INSERT INTO streetname VALUES('smithwood'); |
| 1273 | INSERT INTO streetname VALUES('snow hill'); |
| 1274 | INSERT INTO streetname VALUES('soapstone'); |
| 1275 | INSERT INTO streetname VALUES('sobeck'); |
| 1276 | INSERT INTO streetname VALUES('socata'); |
| 1277 | INSERT INTO streetname VALUES('solace'); |
| 1278 | INSERT INTO streetname VALUES('solway'); |
| 1279 | INSERT INTO streetname VALUES('song sparrow'); |
| 1280 | INSERT INTO streetname VALUES('sorrento'); |
| 1281 | INSERT INTO streetname VALUES('spector'); |
| 1282 | INSERT INTO streetname VALUES('spin drift'); |
| 1283 | INSERT INTO streetname VALUES('spring crest'); |
| 1284 | INSERT INTO streetname VALUES('spring lee'); |
| 1285 | INSERT INTO streetname VALUES('spring park'); |
| 1286 | INSERT INTO streetname VALUES('spring terrace'); |
| 1287 | INSERT INTO streetname VALUES('spring trace'); |
| 1288 | INSERT INTO streetname VALUES('springhaven'); |
| 1289 | INSERT INTO streetname VALUES('squirrel trail'); |
| 1290 | INSERT INTO streetname VALUES('stardust'); |
| 1291 | INSERT INTO streetname VALUES('stargaze'); |
| 1292 | INSERT INTO streetname VALUES('starita'); |
| 1293 | INSERT INTO streetname VALUES('starmount'); |
| 1294 | INSERT INTO streetname VALUES('statesville'); |
| 1295 | INSERT INTO streetname VALUES('steed'); |
| 1296 | INSERT INTO streetname VALUES('steelewood'); |
| 1297 | INSERT INTO streetname VALUES('steepleglen'); |
| 1298 | INSERT INTO streetname VALUES('stephens farm'); |
| 1299 | INSERT INTO streetname VALUES('stewarton'); |
| 1300 | INSERT INTO streetname VALUES('stone park'); |
| 1301 | INSERT INTO streetname VALUES('stonebrook'); |
| 1302 | INSERT INTO streetname VALUES('stonefield'); |
| 1303 | INSERT INTO streetname VALUES('stoneglen'); |
| 1304 | INSERT INTO streetname VALUES('stonemarsh'); |
| 1305 | INSERT INTO streetname VALUES('stoney garden'); |
| 1306 | INSERT INTO streetname VALUES('stoney run'); |
| 1307 | INSERT INTO streetname VALUES('stoney valley'); |
| 1308 | INSERT INTO streetname VALUES('stoneykirk'); |
| 1309 | INSERT INTO streetname VALUES('stream bank'); |
| 1310 | INSERT INTO streetname VALUES('stream ridge'); |
| 1311 | INSERT INTO streetname VALUES('suburban'); |
| 1312 | INSERT INTO streetname VALUES('suffield'); |
| 1313 | INSERT INTO streetname VALUES('sugar creek'); |
| 1314 | INSERT INTO streetname VALUES('sugarberry'); |
| 1315 | INSERT INTO streetname VALUES('sugarstone'); |
| 1316 | INSERT INTO streetname VALUES('summer creek'); |
| 1317 | INSERT INTO streetname VALUES('summer valley'); |
| 1318 | INSERT INTO streetname VALUES('summercrest'); |
| 1319 | INSERT INTO streetname VALUES('summercroft'); |
| 1320 | INSERT INTO streetname VALUES('summerford'); |
| 1321 | INSERT INTO streetname VALUES('summergold'); |
| 1322 | INSERT INTO streetname VALUES('sunbeam'); |
| 1323 | INSERT INTO streetname VALUES('sunbridge'); |
| 1324 | INSERT INTO streetname VALUES('sunpath'); |
| 1325 | INSERT INTO streetname VALUES('sunset'); |
| 1326 | INSERT INTO streetname VALUES('sunset ridge'); |
| 1327 | INSERT INTO streetname VALUES('sunstone'); |
| 1328 | INSERT INTO streetname VALUES('suntrace'); |
| 1329 | INSERT INTO streetname VALUES('sunwalk'); |
| 1330 | INSERT INTO streetname VALUES('sutters hill'); |
| 1331 | INSERT INTO streetname VALUES('suttonview'); |
| 1332 | INSERT INTO streetname VALUES('swallow tail'); |
| 1333 | INSERT INTO streetname VALUES('swanston'); |
| 1334 | INSERT INTO streetname VALUES('sweet grove'); |
| 1335 | INSERT INTO streetname VALUES('sweet rose'); |
| 1336 | INSERT INTO streetname VALUES('sweetbriar ridge'); |
| 1337 | INSERT INTO streetname VALUES('sweetfield'); |
| 1338 | INSERT INTO streetname VALUES('sydney overlook'); |
| 1339 | INSERT INTO streetname VALUES('sylvan'); |
| 1340 | INSERT INTO streetname VALUES('symphony woods'); |
| 1341 | INSERT INTO streetname VALUES('tallia'); |
| 1342 | INSERT INTO streetname VALUES('tallu'); |
| 1343 | INSERT INTO streetname VALUES('talwyn'); |
| 1344 | INSERT INTO streetname VALUES('tanager'); |
| 1345 | INSERT INTO streetname VALUES('tanager park'); |
| 1346 | INSERT INTO streetname VALUES('tangley'); |
| 1347 | INSERT INTO streetname VALUES('taranasay'); |
| 1348 | INSERT INTO streetname VALUES('tarby'); |
| 1349 | INSERT INTO streetname VALUES('tarland'); |
| 1350 | INSERT INTO streetname VALUES('tarpway'); |
| 1351 | INSERT INTO streetname VALUES('tauten'); |
| 1352 | INSERT INTO streetname VALUES('taymouth'); |
| 1353 | INSERT INTO streetname VALUES('ten trees'); |
| 1354 | INSERT INTO streetname VALUES('terrace view'); |
| 1355 | INSERT INTO streetname VALUES('terrier'); |
| 1356 | INSERT INTO streetname VALUES('tesh'); |
| 1357 | INSERT INTO streetname VALUES('teton'); |
| 1358 | INSERT INTO streetname VALUES('tewkesbury'); |
| 1359 | INSERT INTO streetname VALUES('thelema'); |
| 1360 | INSERT INTO streetname VALUES('thistle bloom'); |
| 1361 | INSERT INTO streetname VALUES('thistledown'); |
| 1362 | INSERT INTO streetname VALUES('thomas ridge'); |
| 1363 | INSERT INTO streetname VALUES('thornbrook'); |
| 1364 | INSERT INTO streetname VALUES('tifton grass'); |
| 1365 | INSERT INTO streetname VALUES('tigerton'); |
| 1366 | INSERT INTO streetname VALUES('tomsie efird'); |
| 1367 | INSERT INTO streetname VALUES('tor'); |
| 1368 | INSERT INTO streetname VALUES('torphin'); |
| 1369 | INSERT INTO streetname VALUES('torrence'); |
| 1370 | INSERT INTO streetname VALUES('towering pine'); |
| 1371 | INSERT INTO streetname VALUES('towhee'); |
| 1372 | INSERT INTO streetname VALUES('toxaway'); |
| 1373 | INSERT INTO streetname VALUES('tracy glenn'); |
| 1374 | INSERT INTO streetname VALUES('tradition view'); |
| 1375 | INSERT INTO streetname VALUES('trailer'); |
| 1376 | INSERT INTO streetname VALUES('transport'); |
| 1377 | INSERT INTO streetname VALUES('trehurst'); |
| 1378 | INSERT INTO streetname VALUES('trexler'); |
| 1379 | INSERT INTO streetname VALUES('trillium fields'); |
| 1380 | INSERT INTO streetname VALUES('trimbach'); |
| 1381 | INSERT INTO streetname VALUES('tucker'); |
| 1382 | INSERT INTO streetname VALUES('tullamore'); |
| 1383 | INSERT INTO streetname VALUES('tullock creek'); |
| 1384 | INSERT INTO streetname VALUES('tunston'); |
| 1385 | INSERT INTO streetname VALUES('tupelo'); |
| 1386 | INSERT INTO streetname VALUES('turnabout'); |
| 1387 | INSERT INTO streetname VALUES('turney'); |
| 1388 | INSERT INTO streetname VALUES('turtle cross'); |
| 1389 | INSERT INTO streetname VALUES('turtleback'); |
| 1390 | INSERT INTO streetname VALUES('twelvestone'); |
| 1391 | INSERT INTO streetname VALUES('twin'); |
| 1392 | INSERT INTO streetname VALUES('twin brook'); |
| 1393 | INSERT INTO streetname VALUES('twin lakes'); |
| 1394 | INSERT INTO streetname VALUES('twisted pine'); |
| 1395 | INSERT INTO streetname VALUES('tyler finley'); |
| 1396 | INSERT INTO streetname VALUES('university station'); |
| 1397 | INSERT INTO streetname VALUES('uphill'); |
| 1398 | INSERT INTO streetname VALUES('valeview'); |
| 1399 | INSERT INTO streetname VALUES('valhalla'); |
| 1400 | INSERT INTO streetname VALUES('van'); |
| 1401 | INSERT INTO streetname VALUES('vance davis'); |
| 1402 | INSERT INTO streetname VALUES('vanhoy'); |
| 1403 | INSERT INTO streetname VALUES('veckman'); |
| 1404 | INSERT INTO streetname VALUES('victoria'); |
| 1405 | INSERT INTO streetname VALUES('victory'); |
| 1406 | INSERT INTO streetname VALUES('village glen'); |
| 1407 | INSERT INTO streetname VALUES('vireo'); |
| 1408 | INSERT INTO streetname VALUES('viscount'); |
| 1409 | INSERT INTO streetname VALUES('voeltz'); |
| 1410 | INSERT INTO streetname VALUES('wade e morgan'); |
| 1411 | INSERT INTO streetname VALUES('wake'); |
| 1412 | INSERT INTO streetname VALUES('wales'); |
| 1413 | INSERT INTO streetname VALUES('wallace ridge'); |
| 1414 | INSERT INTO streetname VALUES('waltham'); |
| 1415 | INSERT INTO streetname VALUES('wanamassa'); |
| 1416 | INSERT INTO streetname VALUES('warbler wood'); |
| 1417 | INSERT INTO streetname VALUES('washington'); |
| 1418 | INSERT INTO streetname VALUES('water'); |
| 1419 | INSERT INTO streetname VALUES('waterelm'); |
| 1420 | INSERT INTO streetname VALUES('waterford hills'); |
| 1421 | INSERT INTO streetname VALUES('waterford valley'); |
| 1422 | INSERT INTO streetname VALUES('waterloo'); |
| 1423 | INSERT INTO streetname VALUES('waterton leas'); |
| 1424 | INSERT INTO streetname VALUES('waverly lynn'); |
| 1425 | INSERT INTO streetname VALUES('waverlyglen'); |
| 1426 | INSERT INTO streetname VALUES('wayside'); |
| 1427 | INSERT INTO streetname VALUES('westbury lake'); |
| 1428 | INSERT INTO streetname VALUES('westray'); |
| 1429 | INSERT INTO streetname VALUES('whistlers chase'); |
| 1430 | INSERT INTO streetname VALUES('whistley green'); |
| 1431 | INSERT INTO streetname VALUES('whistling oak'); |
| 1432 | INSERT INTO streetname VALUES('whitcomb'); |
| 1433 | INSERT INTO streetname VALUES('white aspen'); |
| 1434 | INSERT INTO streetname VALUES('white cascade'); |
| 1435 | INSERT INTO streetname VALUES('white mist'); |
| 1436 | INSERT INTO streetname VALUES('white rock'); |
| 1437 | INSERT INTO streetname VALUES('white stag'); |
| 1438 | INSERT INTO streetname VALUES('whitegate'); |
| 1439 | INSERT INTO streetname VALUES('whitehill'); |
| 1440 | INSERT INTO streetname VALUES('whitetail'); |
| 1441 | INSERT INTO streetname VALUES('whitewood'); |
| 1442 | INSERT INTO streetname VALUES('wilburn park'); |
| 1443 | INSERT INTO streetname VALUES('wild garden'); |
| 1444 | INSERT INTO streetname VALUES('wild rose'); |
| 1445 | INSERT INTO streetname VALUES('wilkins terrace'); |
| 1446 | INSERT INTO streetname VALUES('william ficklen'); |
| 1447 | INSERT INTO streetname VALUES('wiltshire ridge'); |
| 1448 | INSERT INTO streetname VALUES('windchase'); |
| 1449 | INSERT INTO streetname VALUES('winding jordan'); |
| 1450 | INSERT INTO streetname VALUES('windy meadow'); |
| 1451 | INSERT INTO streetname VALUES('winghaven'); |
| 1452 | INSERT INTO streetname VALUES('wingmont'); |
| 1453 | INSERT INTO streetname VALUES('winslow'); |
| 1454 | INSERT INTO streetname VALUES('winter pine'); |
| 1455 | INSERT INTO streetname VALUES('winter view'); |
| 1456 | INSERT INTO streetname VALUES('wolf creek'); |
| 1457 | INSERT INTO streetname VALUES('wondering oak'); |
| 1458 | INSERT INTO streetname VALUES('woodard'); |
| 1459 | INSERT INTO streetname VALUES('woodfire'); |
| 1460 | INSERT INTO streetname VALUES('woodland commons'); |
| 1461 | INSERT INTO streetname VALUES('woodland hills'); |
| 1462 | INSERT INTO streetname VALUES('woodnotch'); |
| 1463 | INSERT INTO streetname VALUES('woodstone'); |
| 1464 | INSERT INTO streetname VALUES('worsley'); |
| 1465 | INSERT INTO streetname VALUES('wren creek'); |
| 1466 | INSERT INTO streetname VALUES('wrens nest'); |
| 1467 | INSERT INTO streetname VALUES('wrexham'); |
| 1468 | INSERT INTO streetname VALUES('wt harris'); |
| 1469 | INSERT INTO streetname VALUES('wylie meadow'); |
| 1470 | INSERT INTO streetname VALUES('wynborough'); |
| 1471 | INSERT INTO streetname VALUES('wynbrook'); |
| 1472 | INSERT INTO streetname VALUES('wyndham hill'); |
| 1473 | INSERT INTO streetname VALUES('yandem'); |
| 1474 | INSERT INTO streetname VALUES('yellow rose'); |
| 1475 | INSERT INTO streetname VALUES('yellow spaniel'); |
| 1476 | INSERT INTO streetname VALUES('yorkford'); |
| 1477 | INSERT INTO streetname VALUES('ziegler'); |
| 1478 | INSERT INTO streetname VALUES('zion renaissance'); |
| 1479 | |
| 1480 | SELECT count(*) FROM streetname; |
| 1481 | } |
| 1482 | } {1228} |
| 1483 | |
| 1484 | do_test fuzzer1-2.1 { |
| 1485 | execsql { |
| 1486 | SELECT n, distance FROM f2, streetname |
| 1487 | WHERE f2.word MATCH 'wersley' |
| 1488 | AND f2.distance<=150 |
| 1489 | AND f2.word=streetname.n |
| 1490 | } |
| 1491 | } {worsley 37} |
| 1492 | do_test fuzzer1-2.2 { |
| 1493 | execsql { |
| 1494 | SELECT n, distance FROM f2, streetname |
| 1495 | WHERE f2.word MATCH 'testledown' |
| 1496 | AND f2.distance<=150 |
| 1497 | AND f2.word=streetname.n |
| 1498 | } |
| 1499 | } {thistledown 103} |
| 1500 | do_test fuzzer1-2.3 { |
| 1501 | execsql { |
| 1502 | SELECT DISTINCT streetname.n FROM f2, streetname |
| 1503 | WHERE f2.word MATCH 'tayle' |
| 1504 | AND f2.distance<=200 |
| 1505 | AND streetname.n>=f2.word AND streetname.n<=(f2.word || x'F7BFBFBF') |
| 1506 | } |
dan | 38cc40c | 2011-06-30 20:17:15 +0000 | [diff] [blame] | 1507 | } {{tyler finley} trailer taymouth steelewood tallia tallu talwyn thelema} |
drh | 5577671 | 2012-02-20 22:44:12 +0000 | [diff] [blame] | 1508 | do_test fuzzer1-2.4 { |
| 1509 | execsql { |
| 1510 | SELECT DISTINCT streetname.n |
| 1511 | FROM f2 JOIN streetname |
| 1512 | ON (streetname.n>=f2.word AND streetname.n<=(f2.word || 'zzzzzz')) |
| 1513 | WHERE f2.word MATCH 'duck' |
| 1514 | AND f2.distance<150 |
| 1515 | AND f2.ruleset=3 |
| 1516 | ORDER BY 1 |
| 1517 | } |
| 1518 | } {mallard {mallard cove} {mallard forest} {mallard grove} {mallard hill} {mallard park} {mallard ridge} {mallard view}} |
| 1519 | do_test fuzzer1-2.5 { |
| 1520 | execsql { |
| 1521 | SELECT DISTINCT streetname.n |
| 1522 | FROM f2 JOIN streetname |
| 1523 | ON (streetname.n>=f2.word AND streetname.n<=(f2.word || 'zzzzzz')) |
| 1524 | WHERE f2.word MATCH 'duck' |
| 1525 | AND f2.distance<150 |
| 1526 | AND f2.ruleset=2 |
| 1527 | ORDER BY 1 |
| 1528 | } |
| 1529 | } {} |
drh | 1b05c42 | 2011-04-01 20:28:31 +0000 | [diff] [blame] | 1530 | |
dan | a8ab692 | 2012-02-20 20:03:48 +0000 | [diff] [blame] | 1531 | forcedelete test.db2 |
| 1532 | do_execsql_test fuzzer1-4.1 { |
| 1533 | ATTACH 'test.db2' AS aux; |
| 1534 | CREATE TABLE aux.f3_rules(ruleset, cfrom, cto, cost); |
| 1535 | INSERT INTO f3_rules(ruleset, cfrom, cto, cost) VALUES(0, 'x','y', 10); |
| 1536 | INSERT INTO f3_rules(ruleset, cfrom, cto, cost) VALUES(1, 'a','b', 10); |
| 1537 | CREATE VIRTUAL TABLE aux.f3 USING fuzzer(f3_rules); |
dan | 75f8f75 | 2012-02-20 19:36:09 +0000 | [diff] [blame] | 1538 | SELECT word FROM f3 WHERE word MATCH 'ax' |
| 1539 | } {ax ay} |
| 1540 | |
dan | 766348f | 2012-02-21 10:36:27 +0000 | [diff] [blame] | 1541 | #------------------------------------------------------------------------- |
| 1542 | # |
| 1543 | # 1.5.1 - Check things work with a fuzzer data table name that requires |
| 1544 | # quoting. Also that NULL entries in the "from" column of the |
| 1545 | # data table are treated as zero length strings (''). |
| 1546 | # |
| 1547 | # 1.5.2 - Check that no-op rules (i.e. C->C) are ignored. Test NULL in |
| 1548 | # the "to" column of a fuzzer data table. |
| 1549 | # |
| 1550 | # 1.5.3 - Test out-of-range values for the cost field of the data table. |
| 1551 | # |
| 1552 | # 1.5.4 - Test out-of-range values for the string fields of the data table. |
| 1553 | # |
| 1554 | # 1.5.5 - Test out-of-range values for the ruleset field of the data table. |
| 1555 | # |
| 1556 | do_execsql_test 5.1 { |
| 1557 | CREATE TABLE "fuzzer [x] rules table"(a, b, c, d); |
| 1558 | INSERT INTO "fuzzer [x] rules table" VALUES(0, NULL, 'abc', 10); |
| 1559 | CREATE VIRTUAL TABLE x USING fuzzer('fuzzer [x] rules table'); |
| 1560 | SELECT word, distance FROM x WHERE word MATCH '123' LIMIT 4; |
| 1561 | } {123 0 abc123 10 1abc23 10 12abc3 10} |
| 1562 | |
| 1563 | do_execsql_test 5.2 { |
| 1564 | DELETE FROM "fuzzer [x] rules table"; |
| 1565 | INSERT INTO "fuzzer [x] rules table" VALUES(0, 'x', NULL, 20); |
| 1566 | INSERT INTO "fuzzer [x] rules table" VALUES(0, NULL, NULL, 10); |
| 1567 | INSERT INTO "fuzzer [x] rules table" VALUES(0, 'x', 'x', 10); |
| 1568 | |
| 1569 | DROP TABLE x; |
| 1570 | CREATE VIRTUAL TABLE x USING fuzzer('fuzzer [x] rules table'); |
| 1571 | |
| 1572 | SELECT word, distance FROM x WHERE word MATCH 'xx'; |
| 1573 | } {xx 0 x 20 {} 40} |
| 1574 | |
| 1575 | do_execsql_test 5.3.1 { |
| 1576 | DROP TABLE IF EXISTS x; |
| 1577 | INSERT INTO "fuzzer [x] rules table" VALUES(0, 'c', 'd', 1001); |
| 1578 | } |
| 1579 | do_catchsql_test 5.3.2 { |
| 1580 | CREATE VIRTUAL TABLE x USING fuzzer('fuzzer [x] rules table'); |
| 1581 | } {1 {fuzzer: cost must be between 1 and 1000}} |
| 1582 | |
| 1583 | do_execsql_test 5.3.3 { |
| 1584 | DROP TABLE IF EXISTS x; |
| 1585 | DELETE FROM "fuzzer [x] rules table"; |
| 1586 | INSERT INTO "fuzzer [x] rules table" VALUES(0, 'd', 'c', 0); |
| 1587 | } |
| 1588 | do_catchsql_test 5.3.4 { |
| 1589 | CREATE VIRTUAL TABLE x USING fuzzer('fuzzer [x] rules table'); |
| 1590 | } {1 {fuzzer: cost must be between 1 and 1000}} |
| 1591 | |
| 1592 | do_execsql_test 5.3.5 { |
| 1593 | DROP TABLE IF EXISTS x; |
| 1594 | DELETE FROM "fuzzer [x] rules table"; |
| 1595 | INSERT INTO "fuzzer [x] rules table" VALUES(0, 'd', 'c', -20); |
| 1596 | } |
| 1597 | do_catchsql_test 5.3.6 { |
| 1598 | CREATE VIRTUAL TABLE x USING fuzzer('fuzzer [x] rules table'); |
| 1599 | } {1 {fuzzer: cost must be between 1 and 1000}} |
| 1600 | |
| 1601 | do_execsql_test 5.4.1 { |
| 1602 | DROP TABLE IF EXISTS x; |
| 1603 | DELETE FROM "fuzzer [x] rules table"; |
| 1604 | INSERT INTO "fuzzer [x] rules table" VALUES( |
| 1605 | 0, 'x', '12345678901234567890123456789012345678901234567890', 2 |
| 1606 | ); |
| 1607 | CREATE VIRTUAL TABLE x USING fuzzer('fuzzer [x] rules table'); |
| 1608 | SELECT word FROM x WHERE word MATCH 'x'; |
| 1609 | } {x 12345678901234567890123456789012345678901234567890} |
| 1610 | |
| 1611 | do_execsql_test 5.4.2 { |
| 1612 | DROP TABLE IF EXISTS x; |
| 1613 | DELETE FROM "fuzzer [x] rules table"; |
| 1614 | INSERT INTO "fuzzer [x] rules table" VALUES( |
| 1615 | 0, 'x', '123456789012345678901234567890123456789012345678901', 2 |
| 1616 | ); |
| 1617 | } |
| 1618 | do_catchsql_test 5.4.3 { |
| 1619 | CREATE VIRTUAL TABLE x USING fuzzer('fuzzer [x] rules table'); |
| 1620 | } {1 {fuzzer: maximum string length is 50}} |
| 1621 | |
| 1622 | do_execsql_test 5.4.4 { |
| 1623 | DROP TABLE IF EXISTS x; |
| 1624 | DELETE FROM "fuzzer [x] rules table"; |
| 1625 | INSERT INTO "fuzzer [x] rules table" VALUES( |
| 1626 | 0, '123456789012345678901234567890123456789012345678901', 'x', 2 |
| 1627 | ); |
| 1628 | } |
| 1629 | do_catchsql_test 5.4.5 { |
| 1630 | CREATE VIRTUAL TABLE x USING fuzzer('fuzzer [x] rules table'); |
| 1631 | } {1 {fuzzer: maximum string length is 50}} |
| 1632 | |
| 1633 | do_execsql_test 5.5.1 { |
| 1634 | DROP TABLE IF EXISTS x; |
| 1635 | DELETE FROM "fuzzer [x] rules table"; |
| 1636 | INSERT INTO "fuzzer [x] rules table" VALUES(-1, 'x', 'y', 2); |
| 1637 | } |
| 1638 | do_catchsql_test 5.5.2 { |
| 1639 | CREATE VIRTUAL TABLE x USING fuzzer('fuzzer [x] rules table'); |
| 1640 | } {1 {fuzzer: ruleset must be between 0 and 2147483647}} |
| 1641 | |
| 1642 | do_execsql_test 5.5.3 { |
| 1643 | DROP TABLE IF EXISTS x; |
| 1644 | DELETE FROM "fuzzer [x] rules table"; |
| 1645 | INSERT INTO "fuzzer [x] rules table" VALUES((1<<32)+100, 'x', 'y', 2); |
| 1646 | } |
| 1647 | do_catchsql_test 5.5.4 { |
| 1648 | CREATE VIRTUAL TABLE x USING fuzzer('fuzzer [x] rules table'); |
| 1649 | } {1 {fuzzer: ruleset must be between 0 and 2147483647}} |
| 1650 | |
| 1651 | #------------------------------------------------------------------------- |
| 1652 | # This test uses a fuzzer table with many rules. There is one rule to |
| 1653 | # map each possible two character string, where characters are lower-case |
| 1654 | # letters used in the English language, to all other possible two character |
| 1655 | # strings. In total, (26^4)-(26^2) mappings (the subtracted term represents |
| 1656 | # the no-op mappings discarded automatically by the fuzzer). |
| 1657 | # |
| 1658 | # |
| 1659 | do_execsql_test 6.1.1 { |
| 1660 | DROP TABLE IF EXISTS x1; |
| 1661 | DROP TABLE IF EXISTS x1_rules; |
| 1662 | CREATE TABLE x1_rules(ruleset, cFrom, cTo, cost); |
| 1663 | } |
| 1664 | puts "This test is slow - perhaps around 7 seconds on an average pc" |
| 1665 | do_test 6.1.2 { |
| 1666 | set LETTERS {a b c d e f g h i j k l m n o p q r s t u v w x y z} |
| 1667 | set cost 1 |
| 1668 | db transaction { |
| 1669 | foreach c1 $LETTERS { |
| 1670 | foreach c2 $LETTERS { |
| 1671 | foreach c3 $LETTERS { |
| 1672 | foreach c4 $LETTERS { |
| 1673 | db eval {INSERT INTO x1_rules VALUES(0, $c1||$c2, $c3||$c4, $cost)} |
| 1674 | set cost [expr ($cost%1000) + 1] |
| 1675 | } |
| 1676 | } |
| 1677 | } |
| 1678 | } |
| 1679 | db eval {UPDATE x1_rules SET cost = 20 WHERE cost<20 AND cFrom!='xx'} |
| 1680 | } |
| 1681 | } {} |
| 1682 | |
| 1683 | do_execsql_test 6.2 { |
| 1684 | SELECT count(*) FROM x1_rules WHERE cTo!=cFrom; |
| 1685 | } [expr 26*26*26*26 - 26*26] |
| 1686 | |
| 1687 | do_execsql_test 6.2.1 { |
| 1688 | CREATE VIRTUAL TABLE x1 USING fuzzer(x1_rules); |
| 1689 | SELECT word FROM x1 WHERE word MATCH 'xx' LIMIT 10; |
| 1690 | } {xx hw hx hy hz ia ib ic id ie} |
| 1691 | do_execsql_test 6.2.2 { |
| 1692 | SELECT cTo FROM x1_rules WHERE cFrom='xx' |
| 1693 | ORDER BY cost asc, rowid asc LIMIT 9; |
| 1694 | } {hw hx hy hz ia ib ic id ie} |
| 1695 | |
dan | 766348f | 2012-02-21 10:36:27 +0000 | [diff] [blame] | 1696 | #------------------------------------------------------------------------- |
| 1697 | # Test using different types of quotes with CREATE VIRTUAL TABLE |
| 1698 | # arguments. |
| 1699 | # |
| 1700 | do_execsql_test 7.1 { |
| 1701 | CREATE TABLE [x2 "rules] (a, b, c, d); |
| 1702 | INSERT INTO [x2 "rules] VALUES(0, 'a', 'b', 5); |
| 1703 | } |
| 1704 | foreach {tn sql} { |
| 1705 | 1 { CREATE VIRTUAL TABLE x2 USING fuzzer( [x2 "rules] ) } |
| 1706 | 2 { CREATE VIRTUAL TABLE x2 USING fuzzer( "x2 ""rules" ) } |
| 1707 | 3 { CREATE VIRTUAL TABLE x2 USING fuzzer( 'x2 "rules' ) } |
| 1708 | 4 { CREATE VIRTUAL TABLE x2 USING fuzzer( `x2 "rules` ) } |
| 1709 | } { |
| 1710 | do_execsql_test 7.2.$tn.1 { DROP TABLE IF EXISTS x2 } |
| 1711 | do_execsql_test 7.2.$tn.2 $sql |
| 1712 | do_execsql_test 7.2.$tn.3 { |
| 1713 | SELECT word FROM x2 WHERE word MATCH 'aaa' |
| 1714 | } {aaa baa aba aab bab abb bba bbb} |
| 1715 | } |
| 1716 | |
dan | 4965ebc | 2012-02-21 14:11:12 +0000 | [diff] [blame] | 1717 | #------------------------------------------------------------------------- |
| 1718 | # Test using a fuzzer table in different contexts. |
| 1719 | # |
| 1720 | do_execsql_test 8.1 { |
| 1721 | CREATE TABLE x3_rules(rule_set, cFrom, cTo, cost); |
| 1722 | INSERT INTO x3_rules VALUES(2, 'a', 'x', 10); |
| 1723 | INSERT INTO x3_rules VALUES(2, 'a', 'y', 9); |
| 1724 | INSERT INTO x3_rules VALUES(2, 'a', 'z', 8); |
| 1725 | CREATE VIRTUAL TABLE x3 USING fuzzer(x3_rules); |
| 1726 | } |
| 1727 | |
| 1728 | do_execsql_test 8.2.1 { |
| 1729 | SELECT cFrom, cTo, word |
| 1730 | FROM x3_rules CROSS JOIN x3 |
drh | a385565 | 2013-06-03 21:25:28 +0000 | [diff] [blame] | 1731 | WHERE word MATCH 'a' AND cost=distance AND ruleset=2 |
| 1732 | ORDER BY +cTo; |
dan | 4965ebc | 2012-02-21 14:11:12 +0000 | [diff] [blame] | 1733 | } {a x x a y y a z z} |
| 1734 | |
| 1735 | do_execsql_test 8.2.2 { |
| 1736 | SELECT cFrom, cTo, word |
| 1737 | FROM x3 CROSS JOIN x3_rules |
drh | a385565 | 2013-06-03 21:25:28 +0000 | [diff] [blame] | 1738 | WHERE word MATCH 'a' AND cost=distance AND ruleset=2 |
| 1739 | ORDER BY +cTo DESC |
dan | 4965ebc | 2012-02-21 14:11:12 +0000 | [diff] [blame] | 1740 | } {a z z a y y a x x} |
| 1741 | |
| 1742 | do_execsql_test 8.2.3 { |
| 1743 | SELECT cFrom, cTo, word |
| 1744 | FROM x3_rules, x3 |
drh | a385565 | 2013-06-03 21:25:28 +0000 | [diff] [blame] | 1745 | WHERE word MATCH 'a' AND cost=distance AND ruleset=2 |
| 1746 | ORDER BY +cTo DESC; |
dan | 4965ebc | 2012-02-21 14:11:12 +0000 | [diff] [blame] | 1747 | } {a z z a y y a x x} |
| 1748 | |
| 1749 | do_execsql_test 8.2.4 { |
| 1750 | SELECT cFrom, cTo, word |
| 1751 | FROM x3, x3_rules |
drh | a385565 | 2013-06-03 21:25:28 +0000 | [diff] [blame] | 1752 | WHERE word MATCH 'a' AND cost=distance AND ruleset=2 |
| 1753 | ORDER BY +cTo DESC; |
dan | 4965ebc | 2012-02-21 14:11:12 +0000 | [diff] [blame] | 1754 | } {a z z a y y a x x} |
| 1755 | |
| 1756 | do_execsql_test 8.2.5 { |
| 1757 | CREATE INDEX i1 ON x3_rules(cost); |
| 1758 | SELECT cFrom, cTo, word |
| 1759 | FROM x3_rules, x3 |
drh | a385565 | 2013-06-03 21:25:28 +0000 | [diff] [blame] | 1760 | WHERE word MATCH 'a' AND cost=distance AND ruleset=2 |
| 1761 | ORDER BY +cTo DESC; |
dan | 4965ebc | 2012-02-21 14:11:12 +0000 | [diff] [blame] | 1762 | } {a z z a y y a x x} |
| 1763 | |
| 1764 | do_execsql_test 8.2.5 { |
drh | a385565 | 2013-06-03 21:25:28 +0000 | [diff] [blame] | 1765 | SELECT word FROM x3_rules, x3 WHERE word MATCH x3_rules.cFrom AND ruleset=2 |
dan | 4965ebc | 2012-02-21 14:11:12 +0000 | [diff] [blame] | 1766 | } {a z y x a z y x a z y x} |
| 1767 | |
| 1768 | do_execsql_test 8.2.6 { |
| 1769 | SELECT word FROM x3_rules, x3 |
| 1770 | WHERE word MATCH x3_rules.cFrom |
| 1771 | AND ruleset=2 |
| 1772 | AND x3_rules.cost=8; |
| 1773 | } {a z y x} |
| 1774 | |
| 1775 | do_execsql_test 8.2.7 { |
| 1776 | CREATE TABLE t1(a, b); |
| 1777 | CREATE INDEX i2 ON t1(b); |
| 1778 | SELECT word, distance FROM x3, t1 |
| 1779 | WHERE x3.word MATCH t1.a AND ruleset=2 AND distance=t1.b; |
| 1780 | } {} |
| 1781 | |
| 1782 | do_execsql_test 8.2.8 { |
| 1783 | INSERT INTO x3_rules VALUES(1, 'a', 't', 5); |
| 1784 | INSERT INTO x3_rules VALUES(1, 'a', 'u', 4); |
| 1785 | INSERT INTO x3_rules VALUES(1, 'a', 'v', 3); |
| 1786 | DROP TABLE x3; |
| 1787 | CREATE VIRTUAL TABLE x3 USING fuzzer(x3_rules); |
| 1788 | SELECT * FROM x3_rules; |
| 1789 | } { |
| 1790 | 2 a x 10 |
| 1791 | 2 a y 9 |
| 1792 | 2 a z 8 |
| 1793 | 1 a t 5 |
| 1794 | 1 a u 4 |
| 1795 | 1 a v 3 |
| 1796 | } |
| 1797 | |
| 1798 | do_catchsql_test 8.2.9 { |
| 1799 | SELECT word FROM x3 WHERE ruleset=2 AND word MATCH 'a' AND WORD MATCH 'b'; |
| 1800 | } {1 {unable to use function MATCH in the requested context}} |
| 1801 | |
| 1802 | do_execsql_test 8.2.10 { |
| 1803 | SELECT word FROM x3 WHERE ruleset=1 AND word MATCH 'a' |
| 1804 | } {a v u t} |
| 1805 | |
| 1806 | # The term "ruleset<=1" is not handled by the fuzzer module. Instead, it |
| 1807 | # is handled by SQLite, which assumes that all rows have a NULL value in |
| 1808 | # the ruleset column. Since NULL<=1 is never true, this query returns |
| 1809 | # no rows. |
| 1810 | do_execsql_test 8.2.11 { |
| 1811 | SELECT word FROM x3 WHERE ruleset<=1 AND word MATCH 'a' |
| 1812 | } {} |
| 1813 | |
| 1814 | do_execsql_test 8.2.12 { |
| 1815 | SELECT word FROM x3 WHERE ruleset=1 AND word MATCH 'a' ORDER BY distance ASC; |
| 1816 | } {a v u t} |
| 1817 | |
| 1818 | do_execsql_test 8.2.13 { |
| 1819 | SELECT word FROM x3 WHERE ruleset=1 AND word MATCH 'a' ORDER BY distance DESC; |
| 1820 | } {t u v a} |
| 1821 | |
| 1822 | do_execsql_test 8.2.13 { |
| 1823 | SELECT word FROM x3 WHERE ruleset=1 AND word MATCH 'a' ORDER BY word ASC; |
| 1824 | } {a t u v} |
| 1825 | |
| 1826 | do_execsql_test 8.2.14 { |
| 1827 | SELECT word FROM x3 WHERE ruleset=1 AND word MATCH 'a' ORDER BY word DESC; |
| 1828 | } {v u t a} |
| 1829 | |
dan | 99c7d46 | 2012-02-21 18:00:20 +0000 | [diff] [blame] | 1830 | #------------------------------------------------------------------------- |
| 1831 | # |
| 1832 | do_execsql_test 9.1 { |
| 1833 | CREATE TABLE x4_rules(a, b, c, d); |
| 1834 | INSERT INTO x4_rules VALUES(0, 'a', 'b', 10); |
| 1835 | INSERT INTO x4_rules VALUES(0, 'a', 'c', 11); |
| 1836 | INSERT INTO x4_rules VALUES(0, 'bx', 'zz', 20); |
| 1837 | INSERT INTO x4_rules VALUES(0, 'cx', 'yy', 15); |
| 1838 | INSERT INTO x4_rules VALUES(0, 'zz', '!!', 50); |
| 1839 | CREATE VIRTUAL TABLE x4 USING fuzzer(x4_rules); |
| 1840 | } |
| 1841 | |
| 1842 | do_execsql_test 9.2 { |
| 1843 | SELECT word, distance FROM x4 WHERE word MATCH 'ax'; |
| 1844 | } {ax 0 bx 10 cx 11 yy 26 zz 30 !! 80} |
| 1845 | |
| 1846 | |
| 1847 | do_execsql_test 10.1 { |
| 1848 | CREATE TABLE x5_rules(a, b, c, d); |
| 1849 | CREATE VIRTUAL TABLE x5 USING fuzzer(x5_rules); |
| 1850 | } |
| 1851 | |
| 1852 | do_execsql_test 10.2 { |
| 1853 | SELECT word, distance FROM x5 WHERE word MATCH |
| 1854 | 'aaaaaaaaaXaaaaaaaaaXaaaaaaaaaXaaaaaaaaaXaaaaaaaaa' || |
| 1855 | 'aaaaaaaaaXaaaaaaaaaXaaaaaaaaaXaaaaaaaaaXaaaaaaaaa' || |
| 1856 | 'aaaaaaaaaXaaaaaaaaaXaaaaaaaaaXaaaaaaaaaXaaaaaaaaa' |
| 1857 | } {} |
| 1858 | |
| 1859 | do_execsql_test 10.3 { |
| 1860 | INSERT INTO x5_rules VALUES(0, 'a', '0.1.2.3.4.5.6.7.8.9.a', 1); |
| 1861 | DROP TABLE x5; |
| 1862 | CREATE VIRTUAL TABLE x5 USING fuzzer(x5_rules); |
| 1863 | SELECT length(word) FROM x5 WHERE word MATCH 'a' LIMIT 50; |
| 1864 | } {1 21 41 61 81} |
dan | 4965ebc | 2012-02-21 14:11:12 +0000 | [diff] [blame] | 1865 | |
drh | 326a67d | 2011-03-26 15:05:27 +0000 | [diff] [blame] | 1866 | finish_test |