Mercurial > hg > egg-tcls
annotate create_spede_mn_tuksu.tcl @ 36:b24cb1dd0423
Fail under certain conditions only when creating tables.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Tue, 06 Sep 2011 18:19:13 +0300 |
parents | dccd6c47f9cd |
children | 7b03971c6d28 |
rev | line source |
---|---|
32
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
1 #!/usr/bin/tclsh |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
2 # TCL script for converting Spede, MN and Tuksu databases from |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
3 # flatfile format to SQLite3 database. |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
4 # |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
5 # Written by Matti 'ccr' Hamalainen <ccr@tnsp.org> |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
6 # (C) Copyright 2011 Tecnic Software productions (TNSP) |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
7 # |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
8 package require sqlite3 |
34
dccd6c47f9cd
Use special 'source' statement to include util_convert.tcl from same directory where the script calling it resides.
Matti Hamalainen <ccr@tnsp.org>
parents:
32
diff
changeset
|
9 source [file dirname [info script]]/util_convert.tcl |
32
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
10 |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
11 set db_list {spededb tuksudb mndb} |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
12 |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
13 ### Check commandline arguments |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
14 set db_str [join $db_list ", "] |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
15 if {$argc < 1} { |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
16 puts "Creates tables for $db_str target SQLite3 file" |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
17 puts "Usage: $argv0 <output_sqlite3_db_file> \[-drop\]" |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
18 puts "" |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
19 puts "-drop option will drop any existing tables of same name." |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
20 exit 0 |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
21 } |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
22 |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
23 set db_drop 0 |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
24 set db_output [lindex $argv 0] |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
25 if {$argc >= 2 && [lindex $argv 1] == "-drop"} { |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
26 set db_drop 1 |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
27 } |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
28 |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
29 ### Open database |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
30 open_db $db_output |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
31 |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
32 if {$db_drop} { |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
33 puts "WARNING! Dropping of old tables $db_str requested!" |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
34 puts "All data in those tables will be permanently lost!" |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
35 |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
36 if {![confirm_yesno "Proceed"]} { |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
37 puts "Aborting procedure." |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
38 dbh close |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
39 exit 0 |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
40 } |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
41 |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
42 foreach i $db_list { |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
43 drop_table $i |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
44 } |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
45 } |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
46 |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
47 puts "Creating tables $db_str ..." |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
48 foreach i $db_list { |
36
b24cb1dd0423
Fail under certain conditions only when creating tables.
Matti Hamalainen <ccr@tnsp.org>
parents:
34
diff
changeset
|
49 create_table_quotes_votes $i 0 |
32
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
50 } |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
51 |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
52 dbh close |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
53 |
96fdf24afd9c
Add scripts for *creating* empty URLLog and Spede/MN/Tuksu databases.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
54 puts "DONE." |