Thursday, July 24, 2008

Iconico ColorPic: An Invaluable Tool

For years I have been using the same old color picking tool. I don't recall the name, but it was very simple... Click on a button to "Grab Color From Screen", mouse over the color you need, click to lock it in, then cut and paste the #xxyyzz color into your style sheet.

After a recent upgrade to Vista x64, I decided to look for a new tool. A quick Google search led me to Iconico and their free color picker called ColorPic.

This latest generation color picker can store 16 different color captures as "chips", then save the chip collections for re-use later. ColorPic marks websafe colors (for those still concerned about supporting 1999 technology), and provides a Photoshop-esque mixer to tailor make a shade. The sampling region can be a single pixel or an average of 3x3 or 5x5 pixels; and you can collapse the sections you don't use to cut down on clutter.

The only drawback I see so far is that there are no "options". The default capture command is Control+G. If you would prefer another key combination or want to use a mouse click to capture instead, you're out of luck. Still, for a freebie, this handy tool provides a lot of functionality.

Wednesday, July 16, 2008

Duplicating Databases in MS-SQL 2000 using the SQL Server Manager

When copying databases using MS-SQL Server 2000 Enterprise Manager, the safest option is to use the “Copy table(s) and view(s) from the source database”, but this abandons stored procedures, triggers and other more complex objects.

If you choose “Copy objects and data between SQL Server databases” using the defaults, you may run into fatal errors that cause the copy to fail. In true Microsoft fashion, the error messages are generally unhelpful. What I have gathered from Googling this problem, the user permissions often cause problems. Here is how to get around that problem:

Right click on the table in the SQL Server Manager tree and choose [Export]

cid:image001.png@01C8DC2F.AD2F9710

Choose the “Copy objects and data…” option

Click [Next]

cid:image002.png@01C8DC2E.43784160

Uncheck [Include all dependent objects]

Uncheck [Copy all objects]

Uncheck [Use default options]

cid:image003.png@01C8DC2E.43784160

Click [Select Objects]

Uncheck any objects you are sure that you didn’t use.

Click in the Objects: window and click [select all], then [check]

cid:image004.png@01C8DC2E.43784160

Click [ok]

Click [Options…]

Uncheck [Copy SQL Server logins…]

Uncheck [Copy object-level permissions]

cid:image005.png@01C8DC2E.43784160

Click [OK]

Click [Next]

cid:image006.png@01C8DC2E.43784160

Click [Next]

cid:image007.png@01C8DC2E.43784160

Click [Finish]

Autoincrement numbers are still lost, even with this method, so if you rely on that property, be prepared to do some leg work after the export is finished.

Friday, July 11, 2008

allSnap: Making windows snap to screen edges, each other...

One of the more obvious features missing from all Windows incarnations (including Vista) is a 'snap' feature. The Appearance and Personalization section of the control panel should include an option that allows windows to snap to each other, screen axes, and screen edges. The need for this feature only increases with wide screen and multi-monitor environments.

Ivan Heckman ran into this inconvenience, too and decided to do something about it. He created a free utility called allSnap that does all of this and more. Check out his site for more information and a video demo.

http://www.cs.utoronto.ca/~iheckman/allsnap/

Tuesday, July 1, 2008

Aqua Data Studio 6.5 (7.0 Coming Soon!)

Aqua Data Studio by Aquafold (http://www.aquafold.com/) is an indispensable tool for anyone who works with databases -- especially developers working with multiple database platforms.

When I first downloaded version 4.7 a year or two ago, I was pleasantly surprised by the licensing options. It was free for Educational Institutions! I work for a company that operates a trade school as part of its business, so we were able to use this robust tool for FREE! Incredible.

The free ride ended with version 6.x. (6.0 was the direct successor to 4.7. There was no 5.x). Qualifying educational institutions and academic users now receive a 25% discount. Individual users are limited to a 30 day trial, with a free license option for qualified open source developers.

Sticker Shock
The base price for a single user license is $399, which is not unreasonable for a tool of this caliber, but there is no easing the sticker shock of free to even the discounted price of $299.

Pricing info for Aqua Data Studio is available on their website. The academic discount is only available if you talk to a rep who can verify your affiliation with a qualifying institution.

4.7.2 vs. 6.5
I have only started evaluating the tool (in the past hour), but I can tell you right away that they have made drastic improvements. The data editor tool in 4.7 was very quirky and had a tendency to introduce data entry errors thanks to counterintuitive field behavior. Dialog boxes sometimes exhibited unstable behavior. For example, in the alter procedure window on an Oracle stored procedure, the find and replace dialog refused mouse clicks. You had to tab the different fields.

Worth Upgrading?
To be completely honest, you can do amazing things with 4.7.2 and the quirks are tolerable. I plan to sell the upgrade idea to my boss because the new build feels faster and more stable... There are also lots of new features So, I'd say "Yes".

Windows Install Includes JRE
When I visited the download section of the site I couldn't help but notice that the Windows Installer Package was nearly 70 mb, while the "Java enabled platform" weighed in at nearly half that size (32mb). The windows version comes with the JRE as part of the installation package. If you are currently running Java SE 6, you might as well download the smaller client.

Java Install Quirk
When you run the Java install for the first time, you may see the message:

JVM Memory Warning
You are attempting to run Aqua Data Studio with a maximum JVM memory of 63 MB, which is less than the recommended 128 MB. You should increase the maximum memory with the -Xmx256M JVM parameter.


Of course, for Java newbies like myself, I have no idea where I'm supposed to put that JVM parameter. I did notice that the windows installed version didn't give me that error, so I looked for a configuration file. Sure enough, in the \datastudio root, there is a file \datastudio\datastudio.cfg that contains a javaw.exe execution string with dozens of parameters.

.
javaw.exe
-cp
".\lib\ads.jar;.\lib\aqua-lib.jar;.\lib\aspc.jar;.\lib\aqua2.jar;.\lib\oracle.jar;.\lib\nlscharset12.
jar;.\lib\jtds.jar;.\lib\derby.jar;.\lib\derbyclient.jar;.\lib\mysql.jar;.\lib\postgresql.jar;.\lib\d
b2java.jar;.\lib\db2jcc.jar;.\lib\db2jcc_license_cu.jar;.\lib\ifxjdbc.jar;.\lib\jconnect55.jar;.\lib\
jconnect60.jar;.\lib\xmlparserv2.jar;.\lib\xdb.jar;.\lib\activation.jar;.\lib\mail.jar;.\lib\jaxb1-im
pl.jar;.\lib\jaxb-api.jar;.\lib\jaxb-impl.jar;.\lib\jaxb-xjc.jar;.\lib\jsr173_1.0_api.jar;.\lib\strin
gtemplate.jar;.\lib\tools.jar;.\lib\jide-action.jar;.\lib\jide-beaninfo.jar;.\lib\jide-common.jar;.\l
ib\jide-components.jar;.\lib\jide-dialogs.jar;.\lib\jide-dock.jar;.\lib\jide-grids.jar;.\lib\jide-piv
ot.jar;.\lib\jide-shortcut.jar" com.aquafold.datastudio.DataStudio

The Windows Install version didn't give me that error, so I checked its configuration file. Right at the start were the parameters I needed:

-Dsun.swing.enableImprovedDragGesture -Xmx256M

I copied these lines just before -cp...

.
javaw.exe
-Dsun.swing.enableImprovedDragGesture -Xmx256M -cp
......etc

... and it worked like a charm.

Activating Evaluation License for Aqua Data Studio Behind Authenticating Proxy
ADS uses automated internet authentication to obtain a 30 day trial license. Since I'm behind a proxy that refuses anonymous port 80 access, I couldn't get the thing to work. When I contacted support, I received an immediate response from a rep who told me to download a new jar from their site:
http://download.aquafold.com/httpeval-6512/ads-6.5.12_01.jar

and replace the following file:
\lib\ads.jar

I believe this uses IE's authentication credentials, but I'm not sure. I was not prompted, and the authentication worked.

Aqua Data Studio 7.0 Due In August, but No Need to Wait
Aqua Data Studio is releasing a significant upgrade. I don't have details, but the ETA as of July 1 is "sometime in August". Upgrades are free for 1 year from the date of purchase - after that, upgrades can be purchased at 35% of the then-current license price.