|
|
 |
 |
 |

Features & Capabilities
phpMyIDE is a web application written in PHP and JavaScript and uses AJAX for communications between the client and the server.
The GUI for phpMyIDE is sophisticated and emulates a normal desktop-based application in the way it adapts to the way your screen is shaped and how you want to work.
It currently works well with FireFox and Safari, and about 80% with Internet Explorer. Testing of other browsers will begin when we get to the beta stage.
- It is designed to eliminate much of the complicated nonsense required to
create/edit/delete stored procedures, functions and triggers for MySQL databases.
Programmers can focus on the code more easily with an application that makes the embedded database code work and behave more like a traditional language and IDE.
- Opening and
creating stored procedures, functions and triggers is done through a familiar point and click methodology, emulating a file system browser. Updating
procedures, functions and triggers is as simple as clicking the "save" icon.
- Creating a duplicate, but differently named procedure or function with identical parameters (and return values in the case of functions) is as simple as clicking the Save As icon.
The new procedure will be correctly named and prototyped, and opened in the script editor.
- Triggers are opened and edited by selecting your database, then the table, then one of the timing events such as Before Update or After Delete. The current trigger is loaded into
the editing pane just like any other script. Triggers can also be enabled or disabled, emulating the Oracle functionality, with one click. Behind the scenes, the trigger is dropped and
moved to a backup database so that it can be edited or re-enabled with a mouse click. With a single click of the enable switch, it is moved from the backup table onto the the
table where the event is supposed to occur.
- Any number of procedures, functions, triggers, views and stored queries can be opened at one time. They live in an "open file" list on the right side of the editor and are put into
the current editing pane with a single click. "Dirty" files (scripts that have been changed since they were last saved) are identified by a small red dot to the left of the file name
and the appearance of a Save icon. Closing a file while it is dirty will alet you to the possibility of losing your changes.
- The phpMyIDE window adjusts to the size of your browser at all time - so if you maximize your browser window you'll get the largest possible editing window. The Explorer pane on the top
is also resizeable via the "resize knuckles" on the bottom of the pane, again, making your work environment as custom as possible.
- The IDE supports File Groups - in other words, you can save the current list of procedures, functions, triggers, stored queries and views as a single, named entity for quick reloading
next time your working. There is no limit to the number of file groups you can have, and file groups are specific to the database connection you're currently on.
- Although not a replacement for phpMyAdmin, the Database Explorer allows you to quickly move through the structure of the databases you are currently connected to. So if you're writing
a procedure and you need to see what the fields are for the table your talking to, it's just a quick click away and doesn't change your editing configuration at all.
- The database explorer emulates the PHP "structure" window to a great degree, but it is Ajax based and very fast, so it is the only place that we duplicate phpMyAdmin
functionality in the name of speed and coding effectiveness.
- You can store as many queries or chunks of text as you want to in the IDE. Text chunks or stored queries are kept in a separate table in the phpMyIDE.
- Stored queries can be run from the command prompt with a phpMyIDE SQL extension, "run" - ie., "run thequery" will load the stored query "thequery" and execute it immediately.
We are looking at adding editable fields to the queries, extending their capability significantly.
- Although not useful from a SQL perspective, stored queries are not part of the procedure/function/trigger layout of MySQL, so it is a perfect place to hold things you are
working on or snippets of code that you use in queries and scripts.
- Stored Queries are loaded and edited just like procedures, listed on the right side of the Editing pane.
- Unlike phpMyAdmin, phpMyIDE allows you to create any number of connections that you wish to work on. Essentially, you need to place phpMyIDE on a single server somewhere, then "tell it about"
other MySQL servers that you want to connect to - the Ajax connections still go to the place where phpMyIDE was originally pulled from, but it will connect and interact with the remote database.
Of course, the most common communication is with a server on the same box as phpMyIDE though.
- The phpMyAdmin pane is an iFrame of phpMyAdmin in the lower portion of the phpMyIDE window. The URL for this connection is configured in the Connections section of preferences, so
when you connect to a different MySQL server with the IDE, your phpMyAdmin connection will change automatically as well - effectively wrapping all the tools you need to work and administer to
a database into a single browser window. You may have as many phpMyIDE windows open at once as you like.
- Code is converted to a printable PDF at the click of a mouse and loaded in a separate window for easy printing.
- Print format options are configured in the Preferences pane, including options such as page title, date stamp, page numbering, line numbering, font name and size.
- You can print all the procedures, or functions, or triggers, or views with a single mouse click for a particular database. You can also print a "Trigger affected table report" with a single
click so that you can see which tables are currently under the effect of triggers.
- The command prompt allows you to enter commands directly into MySQL, much like the shell command line apoplication.
- Executing stored procedures is available with the standard syntax, "call [myprocedurename]" - scripts that report multiple "completions" or "echos" are returned in sequence.
- The command prompt is a rolling window that, using the Preferences Pane, can be set for any number of lines to be remembered - much like a normal terminal application.
- Unlike phpMyAdmin which returns nicely formatted tables of information, the phpMyIDE command line is not designed for that. If you "select * from mytable" you will get everything back -
but it will be rows of raw data rather than nicely formatted HTML. The reason for this is that the command prompt is meant as an execution portal for commands as opposed to a selection
mechanism, which of course phpMyAdmin does expertly.
- Everytime you hit "save" for on a script, it is also saved into a phpMyIDE table called 'Time Machine.' Yes, this is a gratuitous reference to Apple's TimeMachine, which is an excellent
example of simple backups and was the inspiration for this system.
- Using a simple point and click, you can go back and look at every iteration of a script since it was first saved in phpMyIDE. With another click you can make [that version] the current version.
- There is nothing in phpMyIDE to manage the size of the TimeMachine table currently and you'll need to be responsible for eliminating backups that no longer need to be stored.
- Help pages for all aspects of phpMyIDE are included in the package and are a simple click away, as well as many pages on stored procedures and triggers as well.
|