title: SQLite strange value returned by sqlite3_column_text
body: <p>I've a c++ project where is installed sqlite.</p>
  
  <p>When the application starts it will creates the database using this code: </p>
  
  <pre><code>    // Open connection with database
  if (SQLITE_OK != sqlite3_open_v2("Test.db", &amp;db, SQLITE_OPEN_CREATE | SQLITE_OPEN_READWRITE, nullptr)) {
      return false;
  }
  
  // Delete old tables if exists
  char * error;
  
  if (SQLITE_OK != sqlite3_exec(db, "DROP TABLE IF EXISTS Tests;", nullptr, nullptr, &amp;error)) {
      return false;
  }
  
  // Recreate all tables
  if (SQLITE_OK != sqlite3_exec(db, "CREATE TABLE Tests(testID INTEGER PRIMARY KEY ASC, name TEXT NOT NULL);", nullptr, nullptr, &amp;error)) {
      return false;
  }
  
  // Test only
  if (SQLITE_OK != sqlite3_exec(db, "INSERT INTO Tests(testID, name VALUES (1, 'Andrea');", nullptr, nullptr, &amp;error)) {
      return false;
  }
  </code></pre>
  
  <p>When I execute this code:</p>
  
  <pre><code>sqlite3_stmt *query = nullptr;
  if (SQLITE_OK != sqlite3_prepare_v2(db, "SELECT testID, name FROM Tests;", -1, &amp;query, nullptr)) {
  
  }
  
  unsigned char const * t = nullptr;
  if (SQLITE_ROW == sqlite3_step(query)) {
      t = sqlite3_column_text(query, 1);
      sqlite3_finalize(query);
  }
  
  printf( (char*)t );
  </code></pre>
  
  <p>I'm expecting "Andrea" but this code print: 
   - PÝòea 
   - ð¶òea
   - ð§òea</p>
  
  <p>Different result each time.</p>