diff --git a/docs/enode.org b/docs/enode.org index 630ccd5..37aa5d9 100644 --- a/docs/enode.org +++ b/docs/enode.org @@ -29,10 +29,17 @@ - =(enode-load-connections-list)=. As above. - =(enode-get-connections)=. As above. - Get attributes: + + *MySQL addition*: This needs to be genericised (or, + proxied, really) to support capturing the different + details required for the different connection types: + | Connection type | Username | password | database | hostname | port | + |-----------------+----------+----------+----------------+----------+-----------------------------------| + | =oracle= | Y | Y | tnsnames entry | N | N | + | =mysql= | Y | Y | Optional | Y | Defaults to 3306, yes if not this | + |-----------------+----------+----------+----------------+----------+-----------------------------------| + =conn-user=: Username + =conn-connection=: Database connection: modelled by Oracle's TNSNames details + =conn-prompt=: a three-character designator to use as the SQL*Plus prompt. - + *MySQL addition*: We need to get the host. - Add these details as a record in the =current-type-connections= list. - Update =all-connections= with the new =current-type-connections= list. - Update =enode-connections-file=. @@ -40,10 +47,20 @@ * =(enode-connect connection-description)= - =(enode-get-connections)=. As above. - Access and, maybe, set =enode-passwords-in-use=. - - =(enode-oracle-connect conn-user conn-pass conn-connection conn-prompt)= - + Issue the commands to the already-created iSQL session: - : connect /@ - : set serverout on - : set sqlprompt "> " + - Based on =enode-current-connection-type=, one of the following: + + =(enode-oracle-connect conn-user conn-pass conn-connection conn-prompt)= + * Issue the commands to the already-created iSQL session: + : connect /@ + : set serverout on + : set sqlprompt "> " + + =(enode-mysql-connect conn-user conn-pass conn-database conn-hostname conn-port conn-prompt)= + * If the buffer for the SQL file has an iSQL buffer: + - If that iSQL buffer has a running process: + + =(enode-mysql-reconnect conn-user conn-pass conn-database conn-hostname conn-port)= + + Otherwise: + * Kill iSQL buffer + * =(call-interactively 'sql-mysql)= + - Otherwise =(call-interactively 'sql-mysql)= + * =(enode-mysql-set-prompt conn-prompt)= - =(setq enode-currrent-connection connection-description)= - =(setq enode-connected t)=