title: inserting/reading Base64 strings with SQLite
body: <p>I tried to insert a base64 encoded string into my SQLite database, but when I read back the value, I get a different result than what I saved. More specifically, every time my string contains a "+" character, it gets stored as '?' in my db.</p>
  
  <p>I thought maybe the two non-alpha-numeric characters in base64-- namely, '+' and '/' are sensitive characters in SQLite, so I did some research and saw this page: <a href="http://www.sqlite.org/lang_expr.html" rel="nofollow">http://www.sqlite.org/lang_expr.html</a></p>
  
  <p>I see that + is a unary operator, and / is a binary operator... but still, if I insert the string containing these characters into my table, it shouldn't cause any problems right? </p>
  
  <p>Also, this may be unrelated to the problem but I am coding with Javascript, the SQLite I'm using is a <strong>client</strong> side database for Firefox.</p>
  
  <p>As for the code, I'm storing with this API provided by Firefox:</p>
  
  <pre><code>db.record({COLNAME:MY_BASE64_STRING})
  </code></pre>
  
  <p>and I'm reading with this:</p>
  
  <pre><code>let db_query = "SELECT * FROM " + dbstore._tableName + " WHERE col_1 = :row_id";
  let statement = dbstore._createStatement(db_query);
  statement.params.row_id=base64_string;
  </code></pre>