Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

487
Views
¿Cómo almacenar la imagen en mi base de datos mysql en formato blob en mi hoja de Google?

Tengo una hoja de Google conectada a mi base de datos MySQL con un script de Google. Puedo recuperar todos los datos de texto que quiero en lugar del blob almacenado en la base de datos. Aquí está el código php:

 $insert = $conn->query("INSERT into images (image) VALUES ('$base64Img')");

Solo dejé un campo para que quede claro

La columna de blob de la tabla se establece en "LONGBLOB". ¿Cómo puedo ver mi BLOB como una imagen en mi hoja de Google?

Esto es lo que probé:

 function readFromTable() { var conn = Jdbc.getConnection(url, username, password); var stmt = conn.createStatement(); stmt.setMaxRows(1000); var results = stmt.executeQuery('SELECT image FROM images'); var numCols = results.getMetaData().getColumnCount(); var spreadsheet = SpreadsheetApp.getActive(); var sheet = spreadsheet.getSheetByName('Sheet1'); var arr=[]; while (results.next()) { var arr = []; for (var col = 0; col < numCols; col++) { arr.push(results.getBlob(col + 1)); } sheet.appendRow(arr); } results.close(); stmt.close(); }

No recibo ningún mensaje de error, pero en mi hoja se imprime: JdbcBlob en la celda en lugar de la imagen real. Me gustaría poner la imagen en una celda de mi hoja de Google

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

  • Obtener JdbcBlob de JdbcResultSet
  • Obtenga AppsScriptBlob de JdbcBlob
  • Insertar AppsScriptBlob en la hoja como imagen
 const jdbcBlob = results.getBlob(col + 1); const appsScriptBlob = jdbcBlob.getAppsScriptBlob(); sheet.insertImage(appsScriptBlob,1,1); //if image data is base64 encoded: sheet.insertImage(Utilities.newBlob(Utilities.base64Decode(appsScriptBlob.getDataAsString())),1,1)

Otra forma sería obtener una matriz de bytes usando getBytes() :

 const byteArr = results.getBytes(col + 1); //if image data is base64 encoded: sheet.insertImage(Utilities.newBlob(Utilities.base64Decode(Utilities.newBlob(byteArr).getDataAsString())),1,1)
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!