¿Cómo ejecutar consultas directas de SQL en Magento?
Hoy aprenderemos a correr.
Obtener el modelo de recursos básicos –
$ resource = Mage :: getSingleton ('core / resource');Después de esto necesitamos crear una conexión de lectura o escritura según nuestra necesidad.
/ ** * Recuperar la conexión de lectura * / $ readConnection = $ resource-> getConnection ('core_read'); / ** * Recuperar la conexión de escritura * / $ writeConnection = $ resource-> getConnection ('core_write');Obteniendo el nombre correcto de la tabla –
Si no conoce el prefijo de la tabla, puede usar el código de abajo para obtener el nombre correcto de la tabla.
$ _tableName = $ resource-> getTableName ('catalog_product_entity');Si el prefijo es mago_ entonces el nombre de la tabla que devolverá será mage_catalog_product_entity
Lectura de datos –
Para leer datos de la tabla usa el siguiente código
$ query = "select * from {$ _tableName}"; $ query_result = $ readConnection-> fetchAll ($ query);Aquí, $ query_result devolverá el resultado de la consulta de selección. En nuestro caso devolverá la matriz de todo el producto. En caso de que necesite datos de solo producto, utilice el siguiente comando.
$ query = "seleccione * de {$ _tableName} donde entity_id = {$ _ productId}"; $ query_result = $ readConnection-> fetchAll ($ query);aquí $ _productId Es el id del producto cuyos datos necesitamos.
Escritura de datos –
Para insertar datos en la tabla use el siguiente código.
$ insert_query = "INSERTAR EN {$ _tableName} ('COL_NAME1', 'COL_NAME2') VALORES ('COL_VALUE1', 'COL_VALUE2')"; $ writeConnection-> query ($ insert_query);Datos actualizados –
Si tenemos que actualizar el type_id de un producto a "configurable", entonces podemos usar el siguiente código. Aquí $ _productId es la identificación del producto.
$ update_query = "ACTUALIZAR {$ _tableName} SET type_id =" configurable "WHERE entity_id = {$ _ productId}"; $ writeConnection-> query ($ update_query); Pero Magento ha proporcionado el concepto del modelo para la conexión de la base de datos ya que proporciona una abstracción y son más seguros que las consultas SQL directas.
- El mejor módulo SEO para PrestaShop: 10 funciones imprescindibles para mejorar el posicionamiento.
- Tres correos electrónicos de recuperación recuperan un 37 % más de carritos abandonados que uno solo: Cómo crear la secuencia adecuada de carritos abandonados en PrestaShop
- AuctionX – Manual de usuario completo del módulo de subastas de PrestaShop
- Cómo crear un blog optimizado para SEO en PrestaShop: una guía práctica sobre contenido, SEO y búsqueda con IA.
- PrestaShop 9.2 Ask AI vs AI Admin Assistant: ¿cuál es mejor para gestionar tu tienda?