There is a bug that remains open in the WordPress Core tracking system that impacts Store Locator Plus database tables. The bug will degrade database performance after each consecutive update to the Store Locator Plus base plugin. The problem and resolution are described below. The Problem There is a glitch in a core WordPress function, [...]
Connect To Your Database With Emacs
The recent Emacs post made me think of a useful SQL trick I recently learned that I wanted to share. Emacs refers to different SQL engines as ‘products’, e.g. MySQL, SQLite, and so on. You can connect to an SQL database through Emacs but you have a call a different command based on the product. An easier [...]
PHP + PostgreSQL App Performance Example
One of our projects this week was to improve the performance in a payment processing system for a client. The system performed well under limited data sets, but as the data set grew larger the performance response time increased exponentially. In reviewing the application we found several design flaws that were significantly impacting performance. This [...]
PostgreSQL – Exclusive Locking On Triggers
We have been working on a client’s project and dealing with an especially complex view in a PostgreSQL database. The view has a few tables linked together as well as several sub queries, a case statement, and a number of elements that do aggregate functions to build a single record of the view. After updating [...]
SQL: Using IN / NOT IN Operators
Here is an explanation I recently shared with someone about how to use NOT IN to select a subset of data from a one-to-many relationship. It is a simple example that covers the basic use of NOT IN (and IN) operators in SQL. These operators can be fairly powerful for performing quick queries on complex [...]
MySQL – I Am a Dummy
Today I learned about an interesting command-line option for MySQL: $ mysql –i-am-a-dummy This is an alias for –safe-updates, which imposes three restrictions: Any UPDATE or DELETE that does not have a WHERE or LIMIT is rejected. Any SELECT without a LIMIT will be automatically limited to 1,000 rows in the result. Any join that would [...]
Restaurant Apps with The Table Tap
Cyber Sprocket Labs started a fun and exciting relationship that is the perfect cross section of two of our favorite things, programming and beer. While we’ve worked on many exciting projects over the years, this is definitely in the top two. None of our esteemed programmers ever thought they’d be working on an application that [...]
PostgreSQL Cheat Sheet
PostgreSQL is one of our favorite database engines for a variety of reasons. Here is our cheat sheet to help you get online and get around Postgres with minimal effort. Database Access Security Database security is handled primarily in two place, from the system service level via a file called pg_hba.conf and within the database [...]
Logistics & Inventory Management with Alutiiq
Alutiiq recently award Cyber Sprocket a 1-year teaming agreement, making this our 4th year of working with Alutiiq on developing, supporting, & maintaining their military logistics & inventory management application. We are very excited to be working with Alutiiq for another year. The upcoming year will bring some exciting new possibilities for follow on projects [...]
Consumer Web Apps with Abundatrade
When Abundatrade decided to take their project to the next level they chose Cyber Sprocket Labs to help them get there. They brought their existing website to us and asked us to help. They were looking for a more fluid, more enjoyable web experience for their users. They needed an updated easy-to-use web calculator & [...]
Data Schema Documentation Tool : SchemaSpy
A topic that came up today is that the 3DChat game database does not really have a reference schema. It used to, in the early stages of the Admin Panel repository, but was eventually phased out and replaced with a combination of PDFs and PNGs generated from a Visio document. There is an issue of [...]
Analyzing Queries in Postgres
Yesterday I was curious if there was a good way to write my IDS query using a single ‘select’. All of us had the right idea of using a sub-query to limit the results from the join, although there were different ideas about how to use a sub-query. Richard’s solution was the most succinct. However, [...]
SQL Movement Commands
Most programming modes in Emacs support two commands, beginning-of-defun and end-of-defun. These move you to the beginning and end of the nearest function, and by default are bound to C-M-a and C-M-e, respectively. However, sql-mode does not have anything similar. I have the above two commands bound to C-up and C-down for quickly moving around [...]
Powerful Data Insertion Features in MySQL
There are many powerful techniques for getting your data into a MySQL database. To take full advantage of MySQL, keep these tips in mind.
Data Translation Service with IDS
Cyber Sprocket Labs first came across Inlet Data Systems (IDS) in January, 2005 via a simple Guru posting asking for assistance “converting data from one proprietary format to another”. The objective was to created an automated process by which a client could upload a file which would be automatically processed by the system & put [...]




