title: SQL (or any relational db) engine with SCM-friendly backing store
body: <p>I have a bunch of data that's clearly relational: object A has a many:1 relationship with B, and B has a 1:many relationship with C, and so on. I can write a bunch of code to maintain this without insert/update/delete anomalies, but it feels like reinventing the wheel: relational DBs do a great job at this.</p>
  
  <p>SQLite would actually be a <em>great</em> fit here, if not for one thing...</p>
  
  <p>The data, once updated, has to be stored in an SCM system, and changes to the data need to be auditable by humans, which (in my estimation) requires cleartext storage.</p>
  
  <p>Is there an engine out there that will give me relational semantics but store the data in cleartext?</p>
  
  <p>Recapping, what I think my requirements are:</p>
  
  <ul>
  <li>Stores data in cleartext</li>
  <li>Maintains/enforces referential integrity</li>
  <li>(nice to have) implemented as a library rather than a standalone executable, a la SQLite</li>
  <li>(nice to have) bindings for the Go language</li>
  </ul>
  
  <p>And here are some things that are <em>not</em> requirements:</p>
  
  <ul>
  <li>SQL; any interface is fine</li>
  <li>High performance; I don't care if access is somewhat slow, it'll be dealing with megabytes of data / hundreds of thousands of records at most.</li>
  </ul>