def install_helper(self): self.installer_panel = HelperInstallPanel(self._owner, self._main_view.editor, self._ctrl_be) self._content.add(self.installer_panel, 1, 2, 2, 3, 0) self._owner.relayout() # needed b/c of layout bug in Mac if self._ctrl_be.target_version >= Version(5, 7, 10): filechooser = FileChooser(mforms.OpenFile) filechooser.set_title("Specify the location of mysql_upgrade") if filechooser.run_modal(): self.installer_panel.importer._upgrade_tool_path = filechooser.get_path() self.installer_panel.importer.set_password(self._ctrl_be.get_mysql_password()) self.installer_panel.start()
def exportSQLServer(catalog): haveFKeys = 0 version = grt.root.wb.info.version # V.getGlobal("/wb/info/version") versionNumber = "%d.%d.%d" % (version.majorNumber, version.minorNumber, version.releaseNumber) print versionNumber if validateForSQLServerExport(catalog) != 0: return 1 #-- we don't have requestFileSave in <= 5.1 # path = Workbench:requestFileSave("Save as", "SQL Files (*.sql)|*.sql") filechooser = FileChooser(mforms.SaveFile) filechooser.set_extensions("SQL Files (*.sql)|*.sql", "sql") filechooser.set_title("Save Microsoft SQL Server Create File") # fileChooser.set_directory(self.logfile_path) if filechooser.run_modal(): path = filechooser.get_path() else: YesNoBox("Exiting", "Cancel Chosen") return 0 with open(path, "w+") as file: #file = io.open(path, "w+") if (file == None): YesNoBox("Error", "Cannot open file %s" % (path)) return 1 #end #-- if (not path:find("\.sql$")) then #-- truncate db file #-- file:close() #-- file = io.popen("SQLServer3 -batch -bail " .. path, "w") #-- end info = grt.root.wb.doc.info file.write( infoFormat( "Creator", "MySQL Workbench %s /ExportSQLServer plugin %s" % (versionNumber, ModuleInfo.version))) file.write(infoFormat("Author", info.author)) file.write(infoFormat("Caption", info.caption)) file.write(infoFormat("Project", info.project)) file.write(infoFormat("Changed", info.dateChanged)) file.write(infoFormat("Created", info.dateCreated)) file.write(infoFormat("Description", info.description)) #-- loop over all catalogs in schema, find main schema #-- main schema is first nonempty schema or nonempty schema named "main" iMain = -1 i = 0 for schema in catalog.schemata: if (len(schema.tables) > 0): if (iMain < 0): iMain = i #end if (schema.name == "dbo"): # dbo is SQL Server's main schema. iMain = i break #end #end i += 1 #end if (iMain > -1): if (exportSchema(file, catalog.schemata[iMain], True) != 0): print "Error writing schema %s\n" % ( catalog.schemata[iMain].name) return 1 #end #end i = 0 for schema in catalog.schemata: uniqueId = 1 if (i != iMain): if (exportSchema(file, schema, False) != 0): print "Error writing schema %s\n" % ( catalog.schemata[i].name) return 1 #end #end i += 1 #end print "Export to %s finished.\n" % (path) return 0
def exportSQLServer(catalog): haveFKeys = 0 version = grt.root.wb.info.version # V.getGlobal("/wb/info/version") versionNumber = "%d.%d.%d" % (version.majorNumber, version.minorNumber, version.releaseNumber) print versionNumber if validateForSQLServerExport(catalog) != 0: return 1 #-- we don't have requestFileSave in <= 5.1 # path = Workbench:requestFileSave("Save as", "SQL Files (*.sql)|*.sql") filechooser = FileChooser(mforms.SaveFile) filechooser.set_extensions("SQL Files (*.sql)|*.sql", "sql") filechooser.set_title("Save Microsoft SQL Server Create File") # fileChooser.set_directory(self.logfile_path) if filechooser.run_modal(): path = filechooser.get_path() else: YesNoBox("Exiting", "Cancel Chosen") return 0 with open(path, "w+") as file: #file = io.open(path, "w+") if (file == None): YesNoBox("Error", "Cannot open file %s" % (path)) return 1 #end #-- if (not path:find("\.sql$")) then #-- truncate db file #-- file:close() #-- file = io.popen("SQLServer3 -batch -bail " .. path, "w") #-- end info = grt.root.wb.doc.info file.write(infoFormat("Creator", "MySQL Workbench %s /ExportSQLServer plugin %s" % (versionNumber, ModuleInfo.version))) file.write(infoFormat("Author", info.author)) file.write(infoFormat("Caption", info.caption)) file.write(infoFormat("Project", info.project)) file.write(infoFormat("Changed", info.dateChanged)) file.write(infoFormat("Created", info.dateCreated)) file.write(infoFormat("Description", info.description)) #-- loop over all catalogs in schema, find main schema #-- main schema is first nonempty schema or nonempty schema named "main" iMain = -1 i = 0 for schema in catalog.schemata: if (len(schema.tables) > 0): if (iMain < 0): iMain = i #end if (schema.name == "dbo"): # dbo is SQL Server's main schema. iMain = i break #end #end i += 1 #end if (iMain > -1): if (exportSchema(file, catalog.schemata[iMain], True) != 0): print "Error writing schema %s\n" % (catalog.schemata[iMain].name) return 1 #end #end i = 0 for schema in catalog.schemata: uniqueId = 1 if (i != iMain): if (exportSchema(file, schema, False) != 0): print "Error writing schema %s\n" % (catalog.schemata[i].name) return 1 #end #end i += 1 #end print "Export to %s finished.\n" % (path) return 0