Unboxing the Unitek IDE / SATA to USB 3.0 Drive Adapter

I hoped it would be a simple fix when the customer asked me to look at her Windows 7 machine this week. I don’t really do PC repair anymore but I have one or two old customers I’ll help out when needed. I figured it was just some Windows settings that needed adjustment but after struggling with the machine for about an hour, I realized that it really needed a wipe and reload of the system. The repair shop I referred the customer to discovered hard drive issues I’d suspected but couldn’t confirm with CHKDSK. They gave her a fantastic rate on a hard drive upgrade and Windows reinstall and returned her old hard drive to her for recovery of whatever data she needed.

Continue reading

Unboxing the ASUS Chromebook

This past weekend, I finally decided to spring for a Chromebook. I’ve been thinking more and more about a Windows replacement machine, at least for basic tasks. I also wanted an inexpensive solution that would extend the life of my current laptop. I often don’t need the full machine out on the road and the smaller profile of the Chromebook makes an attractive alternative.

The Specs

Continue reading

Helping Users Work With Subforms in Microsoft Access

Creating an Access application for other people means anticipating how the users are going to interact with your program. Without clear direction from the program or you, users can be easily confused by even simple things like the order in which data is to be entered.

One of the basic tools in Access is the subform which allows for the input of records related to a master record. A classic example is a database which stores customer orders and where each order might have multiple items (i.e. order lines) associated with it.

Continue reading

How to Perform a Basic MySQL Installation in Windows

One of the nice features of MySQL as a database software is its noinstall option in which you download the files themselves and perform a manual installation that takes just under a gigabyte of space on your drive.  If you’re a developer or a student, this means you can quickly create a new self-contained instance wherever you need it and then blow it away if you need to without cluttering up your registry.

This does mean working on the command line so you’ll want to have a certain comfort level with that.  You will also need to be working with Administrative privileges.

Continue reading

How to Programmatically Relink Tables in Microsoft Access / VBA

Several years ago, I designed a Microsoft Access application called JobSearch Plus for managing job leads during an employment search.  It was a split application, meaning that the tables were stored in one Access file, the back-end, and everything else was in the front-end file with table links to the other one.

JobSearch Plus was also meant for distribution and I had no idea where any of the users were going to store the files on their computers.  Access uses absolute file paths to specify the source database for a linked table. This meant I needed some way to determine if the back-end existed and what it’s file path was.

On it’s own, relinking Access tables in VBA is just a few lines of code.

 Dim dbCurr As Database
 Dim tdfTableLink As TableDef
 
 For Each tdfTableLink In dbCurr.TableDefs
   tdfTableLink.Connect = ";DATABASE=" & (Insert new file path)
   tdfTableLink.RefreshLink
 End If

This is fine if you know exactly where the new file is but my program could be anywhere on the user’s computer so I had to do some more engineering.  Also, since this was going out over the Internet to who knows how many strangers with my name on it, it had to work right … always.  This is where the fun of actual software development comes in.

Continue reading

How To Create a Dynamic Search Filter on a Microsoft Access Form

Best practice when retrieving data in Microsoft Access or any database, for that matter, is to limit the amount of data that you pull at any one time. This means using the proper filters and limiting the number of fields retrieved.  Often, you still end up with a lot of information to look through anyway. That’s when it can help to have a dynamic search filter that will enable you to easily search the records with just a few keystrokes.

One easy way to do this is use the form’s Filter and FilterOn properties along with the KeyUp event as shown here.

Continue reading

How to Dynamically Set the Report RecordSource in Microsoft Access

One of the steps for creating a report in Microsoft Access is to define where the data is coming from.  This is done through the report’s Record Source property which can be a table or standalone query in the database or a SQL statement as shown in the screenshot below.

Usually, this is defined when the report is created and only gets changed if needed.  In some cases, however, you might want to use the same report object for many different queries.  You could have a mailing list report that you want to use for employees, customers or other groups at different times and the data would be drawn from different tables or even different databases.

Continue reading

Coming in 2019 – CodeScholar Software Development Training!

CodeScholar Logo

CodeScholar is a new type of software development training specifically for educators and self-educators. Coming in 2019 from ComeauSoftware.com and OcalaITPros.com.

A simple Google search turns up hundreds of options for learning programming, many free, but where do you start?  There are many excellent reference sites and YouTube channels out there but many focus on the mechanics of a single language without explaining the broader concepts and best practices. Many are written by developers for (aspiring) developers and might leave you with a sink-or-swim feeling as you pick your way through incomplete answers and abandoned message threads that don’t quite apply.

As a programming instructor, I’ve spent the last couple of years searching the web for the best resources I could find for my students as they struggled to understand concepts such as database normalization and object-oriented programming.  A textbook or two and classroom lectures are not enough when you’re trying to reach a variety of students from different backgrounds.  Seemingly limitless online resources become very limited when it comes to information on a less popular topic such as pass-through queries or deadlocking and you’re trying to find something that will provide enough detail but won’t utterly confuse the students or cause then to tune out from boredom.

Continue reading

How To Create a Local WordPress site with XAMPP

XAMPP is one of many AMP software stacks (Apache – MySQL – PHP) that can be used to create a local web development environment for design and testing.  It automatically installs and configures Apache as a web server so that you can view your pages through http://localhost, MySQL as a database server for website data and PHP to render any PHP code within your pages.

Once you have XAMPP installed, you can install WordPress or other content management systems locally so that you can easily develop and test your web content and programming before uploading it to the web or an intranet.  I also use WordPress as a local CMS for organizing my own content.

Setting up XAMPP and WordPress takes as little as 10 minutes and can be done either on your hard drive or a USB flash drive as I show in this video. The flash drive option is a little slower but it is easily portable between systems as XAMPP runs entirely from the directory it’s installed to.

Downloads: XAMPP is developed by ApacheFriends and maintained by Bitnami. The download is available through SourceForge or from ApacheFriends.org: https://sourceforge.net/projects/xampp/ https://www.apachefriends.org/index.html

The latest version of WordPress is available from WordPress.org. https://wordpress.org/download/

 


What is Referential Integrity?

One of the fundamental differences between an Excel spreadsheet and a Microsoft Access or SQL Server database is the database’s ability to group data by subject into tables and create links between that information.  This type of organization enables the user to store large amounts of data and retrieve specific information quickly by writing queries that will search on the various fields. Referential Integrity is actually a simple but essential concept to understanding how databases like Access or SQL Server work.  Once you understand it, you will be able to use these tools to better organize and report on your data.

To demonstrate this concept, I’m going to use a few tables in a Microsoft Access database.  Access is a great environment to start learning about databases as it provides a user-friendly interface and is widely available through Office365.

Watch the companion video for this article on YouTube or continue article below …

Continue reading