Ejemplo n.º 1
0
		self.curs.execute(sql)

class CreateAppVersionCodeIndex(TableUpdate):
	def run_up(self):
		sql = '\n'.join([
			"CREATE INDEX app_version_code",
			" ON crashes (app_version_code)"])
		self.curs.execute(sql)

	def run_down(self):
		sql = '\n'.join([
			"ALTER TABLE %s" % self.parent.name,
			" DROP INDEX crashes_app_version_code_index"])
		self.curs.execute(sql)

class AppVersionNameToiVarchar(TableUpdate):
	def run_up(self):
		sql = '\n'.join([
			"ALTER TABLE %s" % self.parent.name,
			" CHANGE app_version_name app_version_name VARCHAR(1024) NOT NULL"])
		self.curs.execute(sql)

	def run_down(self):
		sql = '\n'.join([
			"ALTER TABLE %s" % self.parent.name,
			" CHANGE app_version_name app_version_name TEXT"])
		self.curs.execute(sql)

if __name__ == "__main__":
	execute(Crashes, 'crashreports/database.yml')
#!/usr/bin/python
# vim:foldmethod=indent
from knewton.schema.base import *
from knewton.schema.run import execute


class FeedbackTypes(TableBase):
    def __init__(self, conn):
        TableBase.__init__(self, conn, "feedback_types")
        CreateFeedbackTypes(self, 1)


class CreateFeedbackTypes(TableUpdate):
    def run_up(self):
        if not self.table_exists():
            sql = '\n'.join([
                "CREATE TABLE %s (" % self.parent.name,
                "  id INT(11) NOT NULL AUTO_INCREMENT,",
                "  name VARCHAR(128),", "  field_name varchar(128),",
                "  PRIMARY KEY (id)",
                ") ENGINE=InnoDB AUTO_INCREMENT=14171 DEFAULT CHARSET=utf8"
            ])
            self.curs.execute(sql)

    def run_down(self):
        self.drop_table()


if __name__ == "__main__":
    execute(FeedbackTypes, 'crashreports/database.yml')
Ejemplo n.º 3
0
        sql = "ALTER TABLE %s" % self.parent.name
        sql += " ENGINE Memory"
        self.curs.execute(sql)

    def run_down(self):
        sql = "ALTER TABLE %s" % self.parent.name
        sql += " ENGINE InnoDB"
        self.curs.execute(sql)


class RevertEngine(ChangeEngine):
    def run_up(self):
        ChangeEngine.run_down(self)

    def run_down(self):
        ChangeEngine.run_up(self)


class AddLastAuthenticationTypeColumn(TableUpdate):
    def run_up(self):
        sql = "ALTER TABLE %s ADD COLUMN last_authentication_type VARCHAR(20) AFTER sequence" % self.parent.name
        self.curs.execute(sql)

    def run_down(self):
        sql = "ALTER TABLE %s DROP COLUMN last_authentication_type" % self.parent.name
        self.curs.execute(sql)


if __name__ == "__main__":
    execute(AuthTokens, 'databases/sessions.yml')
Ejemplo n.º 4
0
class ChangeEngine(TableUpdate):
	def run_up(self):
		sql  = "ALTER TABLE %s" % self.parent.name
		sql += " ENGINE Memory"
		self.curs.execute(sql)

	def run_down(self):
		sql  = "ALTER TABLE %s" % self.parent.name
		sql += " ENGINE InnoDB"
		self.curs.execute(sql)

class RevertEngine(ChangeEngine):
	def run_up(self):
		ChangeEngine.run_down(self)

	def run_down(self):
		ChangeEngine.run_up(self)

class AddLastAuthenticationTypeColumn(TableUpdate):
	def run_up(self):
		sql = "ALTER TABLE %s ADD COLUMN last_authentication_type VARCHAR(20) AFTER sequence" % self.parent.name
		self.curs.execute(sql)

	def run_down(self):
		sql = "ALTER TABLE %s DROP COLUMN last_authentication_type" % self.parent.name
		self.curs.execute(sql)

if __name__ == "__main__":
	execute(AuthTokens, 'databases/sessions.yml')
Ejemplo n.º 5
0
class Feedback(TableBase):
	def __init__(self, conn):
		TableBase.__init__(self, conn, "feedback")
		CreateFeedback(self, 1)

class CreateFeedback(TableUpdate):
	def run_up(self):
		if not self.table_exists():
			sql = '\n'.join([
				"CREATE TABLE %s (" % self.parent.name,
				"  id INT(11) NOT NULL AUTO_INCREMENT,",
				"  feedback_type_id INT(11) NOT NULL,",
				"  crash_id INT(11) NOT NULL,",
				"  status INT(11) NOT NULL,",
				"  PRIMARY KEY (id),",
				"  FOREIGN KEY (feedback_type_id)",
				"   REFERENCES feedback_types(id)",
				"   ON DELETE CASCADE,",
				"  FOREIGN KEY (crash_id)",
				"   REFERENCES crashes(id)",
				"   ON DELETE CASCADE",
				") ENGINE=InnoDB AUTO_INCREMENT=14171 DEFAULT CHARSET=utf8"])
			self.curs.execute(sql)

	def run_down(self):
		self.drop_table()

if __name__ == "__main__":
	execute(Feedback, 'crashreports/database.yml')
Ejemplo n.º 6
0
from knewton.schema.base import *
from knewton.schema.run import execute

class CustomData(TableBase):
	def __init__(self, conn):
		TableBase.__init__(self, conn, "custom_data")
		CreateCustomData(self, 1)

class CreateCustomData(TableUpdate):
	def run_up(self):
		if not self.table_exists():
			sql = '\n'.join([
				"CREATE TABLE %s (" % self.parent.name,
				"  id INT(11) NOT NULL AUTO_INCREMENT,",
				"  crash_id INT(11) NOT NULL,",
				"  field_name VARCHAR(128) NOT NULL,",
				"  data text,",
				"  PRIMARY KEY (id),",
				"  KEY custom_data_field_name_index (field_name),",
				"  FOREIGN KEY (crash_id)",
				"   REFERENCES crashes(id)",
				"   ON DELETE CASCADE",
				") ENGINE=InnoDB AUTO_INCREMENT=14171 DEFAULT CHARSET=utf8"])
			self.curs.execute(sql)

	def run_down(self):
		self.drop_table()

if __name__ == "__main__":
	execute(CustomData, 'crashreports/database.yml')
Ejemplo n.º 7
0
            "CREATE INDEX app_version_code", " ON crashes (app_version_code)"
        ])
        self.curs.execute(sql)

    def run_down(self):
        sql = '\n'.join([
            "ALTER TABLE %s" % self.parent.name,
            " DROP INDEX crashes_app_version_code_index"
        ])
        self.curs.execute(sql)


class AppVersionNameToiVarchar(TableUpdate):
    def run_up(self):
        sql = '\n'.join([
            "ALTER TABLE %s" % self.parent.name,
            " CHANGE app_version_name app_version_name VARCHAR(1024) NOT NULL"
        ])
        self.curs.execute(sql)

    def run_down(self):
        sql = '\n'.join([
            "ALTER TABLE %s" % self.parent.name,
            " CHANGE app_version_name app_version_name TEXT"
        ])
        self.curs.execute(sql)


if __name__ == "__main__":
    execute(Crashes, 'crashreports/database.yml')