SVN commit 618278 by freitag:
fixed database creation on startup
M +5 -3 database/create_schema.sql
M +7 -7 kange.kdevelop
M +10 -1 src/kraftdb.cpp
--- trunk/playground/office/kraft/database/create_schema.sql #618277:618278
@@ -1,7 +1,7 @@
-DROP DATABASE IF EXISTS kraft;
-CREATE DATABASE kraft DEFAULT CHARACTER SET "utf8";
+# DROP DATABASE IF EXISTS kraft;
+# CREATE DATABASE kraft DEFAULT CHARACTER SET "utf8";
-use kraft;
+# use kraft;
CREATE TABLE preisArten (
@@ -225,3 +225,5 @@
INSERT INTO kraftsystem ( dbschemaversion ) VALUES ( 1 );
+# message Database created.
+
--- trunk/playground/office/kraft/kange.kdevelop #618277:618278
@@ -12,7 +12,7 @@
.
false
-
+
kdevsnippet
kdevfilelist
@@ -78,11 +78,11 @@
libtool
-
-
-
-
-
+
+
+
+
+
true
false
false
@@ -139,7 +139,7 @@
250
-
+
set
m_,_
theValue
--- trunk/playground/office/kraft/src/kraftdb.cpp #618277:618278
@@ -236,9 +236,18 @@
if( KMessageBox::warningYesNo( parent,
i18n( "The Kraft System Table was not found in database %1."
" Do you want me to rebuild the database?\n"
- "WARNING: ALL YOUR DATA WILL BE DESTROYED!").arg( KatalogSettings::dbFile() ),
+ "WARNING: ALL YOUR DATA WILL BE DESTROYED!")
+ .arg( KatalogSettings::dbFile() ),
i18n("Database Rebuild") ) == KMessageBox::Yes ) {
emit statusMessage( i18n( "Creating Database..." ) );
+
+ if ( m_db->tables().size() > 0 ) {
+ QString allTables = QString( "DROP TABLE %1;" ).arg( m_db->tables().join( ", " ) );
+ kdDebug() << "Erasing all tables " << allTables << endl;
+ QSqlQuery q;
+ q.exec( allTables );
+ }
+
int allCmds = 0;
int goodCmds = playSqlFile( "create_schema.sql", allCmds );
if ( goodCmds == allCmds ) {