OXIESEC PANEL
- Current Dir:
/
/
home
/
cubot
/
conf
/
dbupgrade_tool
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
02/03/2023 08:07:15 AM
rwxr-xr-x
📄
cubottable.sh
7.35 KB
02/03/2023 07:34:22 AM
rwxr-xr-x
📄
data.sql
26.07 KB
02/03/2023 07:34:22 AM
rwxr-xr-x
📄
upgrade_demo_tkml_20160418.sql
56.15 KB
02/03/2023 07:34:22 AM
rw-r--r--
📄
upgrade_tkml_20160418.sql
25.29 KB
02/03/2023 07:34:22 AM
rwxr-xr-x
📄
writesql.awk
2.73 KB
02/03/2023 07:34:22 AM
rwxr-xr-x
Editing: writesql.awk
Close
BEGIN{ FS="\t"; tab=""; nthsql = 0; create=0; i = 0; } /Create Table/{ #print "Here Create Table Recvd"; if(match($0, /^Table/)){ create=1; next; } else{ #print "-- 1. PRINT CAME HERE\n"; print $0; } } /#/{ create=0; if( NR <= 1 ){ split($0, a, " "); tab=a[2]; print "\n--for table = "tab next; } n = asort(userdb_cols_chg, newuserdb_cols_chg); n1 = asort(sampledb_cols_chg, newsampledb_cols_chg); if(n1 > n) n = n1; asort(org_userdb_cols_chg); print "--Exsisting schema"; for(x=1; x<=n; x++){ print "--"org_userdb_cols_chg[x]; } print "--Changing Schema to"; for(d=1; d<=n; d++){ # print "Converting " newsampledb_cols_chg[d] " ------> " newuserdb_cols_chg[d]; split(newsampledb_cols_chg[d], usrline, " "); print "alter table "tab" change ", usrline[1], " ", makemystr(newuserdb_cols_chg[d]); stmt[nthsql++] = "alter table "tab" change " usrline[1] " " makemystr(newuserdb_cols_chg[d]);; } delete userdb_cols_chg; delete sampledb_cols_chg; delete newuserdb_cols_chg; delete newsampledb_cols_chg; i = 0; split($0, a, " "); tab=a[2]; print "\n--for table = "tab } />/{ s=makemystr($9); split(s, a, " "); if(match($0, /PRIMARY KEY/)){ print "alter table ", tab ," drop " , s , ""; stmt[nthsql++] = "alter table " tab " drop " s ""; } else if(match($0, /UNIQUE KEY/)){ print "alter table ", tab ," drop KEY " , a[3] , ""; stmt[nthsql++] = "alter table " tab " drop KEY " a[3] ""; } else if(match($0, /KEY/)){ print "alter table ", tab ," drop KEY " , a[2] , ""; stmt[nthsql++] = "alter table " tab " drop KEY " a[2] ""; } else{ print "alter table ", tab ," drop column " , a[1] , ""; stmt[nthsql++] = "alter table " tab " drop column " a[1] ""; } } /</{ if(create == 1){ #print "-- 2. PRINT CAME HERE"; if(match($0, /CREATE TABLE/)){ split($0, a, " "); printf( "CREATE TABLE %s (", a[4]); } else{ gsub("<", ",", $0); #gsub(",)", ")", $0); printf("%s", $0); } next; } s=makemystr($0); split(s, a, " "); if(match($0, /KEY/)){ print "alter table ", tab ," add " , s , ""; stmt[nthsql++] = "alter table " tab " add " s ""; } else{ print "alter table ", tab ," add column " , s , ""; stmt[nthsql++] = "alter table " tab " add column " s "" } } /\|/{ s=$0; if(match($0, /KEY/)){ } else{ split(s, diff, "|"); sampledb=diff[1]; userdb=diff[2]; split(userdb, usrline, " "); split(sampledb, myline, " "); userdb_cols_chg[userdb] = sampledb; sampledb_cols_chg[sampledb] = userdb; org_userdb_cols_chg[i++] = userdb; } } /^)/{ if(create == 1){ print $0; } } END{ #for(sql in stmt){ # print stmt[sql]; # } if(create == 1){ printf("\n"); } } function makemystr(s) { gsub(/[><|;]/, "", s); gsub(/[\t, ]*$/, "", s); return s; }