by dalers

dalers / mywind

MySQL version of Northwind demo database

210 Stars 323 Forks Last release: Not found BSD 2-Clause "Simplified" License 16 Commits 0 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:


MyWind is a MySQL version of the Microsoft Access 2010 Northwind sample database.

The Northwind database is an excellent tutorial schema for a small-business ERP, with customers, orders, inventory, purchasing, suppliers, shipping, employees, and single-entry accounting. However, I wanted to experiment with the schema using MySQL.

The Northwind sample database provided with Microsoft Access is a tutorial schema for managing small business customers, orders, inventory, purchasing, suppliers, shipping, and employees. My problem was I wanted to experiment with the Northwind schema using MySQL.


  • northwind.mdb -> northwind-02.mdb (and other new/modifed files in this commit) may be the result of correcting or improving the ERD model where it relates to sales orders and shipping (as presumed by addition of northwind-02-sales-orders-and-shipping.png). Whoever walks this way, please figure this out and deal with it appropriately.


  • Model:
    • northwind.mwb (MySQL Workbench v6.2)
  • EER Diagram:
    • northwind-erd.pdf
    • northwind-erd.png
  • Structure:
    • northwind.sql
    • northwind-default-current-timestamp.sql (uses DEFAULT CURRENT TIMESTAMP, requires MySQL 5.6.5+)
  • Data:
    • northwind-data.sql

Creating MyWind

  • Created Northwind.aacdb using MS Access 2010 (File > New > Sample Templates > Northwind > SaveAs).
  • Created basic SQL equivalent of Northwind schema for MySQL using using BullZip "Access to MySQL".[1]
  • Replaced CamelCase identifier names with lowercasewith_underscore identifier names.
  • Replaced " " (space) and "/" (forward slash) characters in identifiers with underscores.
  • Renamed table primary keys "id".
  • Renamed table foreign keys "xxxid" (e.g. "inventoryid").
  • Changed record-create and modify-date columns to type DATETIME (to avoid the 1997 - 2038 UTC date range restriction of TIMESTAMP, and also other limitations).
  • Added foreign key relationships and created ERD using MySQL Workbench.
  • Imported SQL into MySQL Workbench
    • Added foreign key relationships visually
    • Exported EER Diagrams

[1]: BullZip Access to MySQL version 5.1.242. Access to MySQL "...may be used free of charge for non-commercial purposes.",, accessed 2014-01-08.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.