I have created my own module and in UpgradeData.php script I am writing my own, mysql query but it gives me an error when I run bin/magento setup:upgrade to run the setup script files
Recoverable Error: Object of class Magento\Framework\DB\Statement\Pdo\Mysql could not be converted to string in /Users/suman/the-webster/app/code/YX/Migration/Setup/UpgradeData.php on line 51
The mysql query I am trying is:
$sequence_value = $setup->getConnection()->query("SELECT max(sequence_value)+1 FROM
sequence_cms_block");
What am I doing wrong
full class code
<?php
namespace YX\Migration\Setup;
/**
* @codeCoverageIgnore
*/
use Magento\Framework\Setup\UpgradeDataInterface;
use Magento\Framework\Setup\ModuleDataSetupInterface;
use Magento\Framework\Setup\ModuleContextInterface;
class UpgradeData implements UpgradeDataInterface
{
/**
* {@inheritdoc}
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
*/
public function
upgrade(ModuleDataSetupInterface$setup,ModuleContextInterface $context)
{
$setup->startSetup();
// if (version_compare($context->getVersion(), '0.0.3', '<')) {
$table_sequence_cms_block = $setup->getTable('sequence_cms_block');
$table_cms_block = $setup->getTable('cms_block');
$table_cms_block_store = $setup->getTable('cms_block_store');
\Magento\Framework\App\ObjectManager::getInstance()
->get(\Psr\Log\LoggerInterface::class)->info("i am here before sequence_value query8 ");
$sequence_value = $setup->getConnection()->query("SELECT max(sequence_value)+1 FROM `sequence_cms_block`");
\Magento\Framework\App\ObjectManager::getInstance()
->get(\Psr\Log\LoggerInterface::class)->info("i am here after sequence_value query8 ".$sequence_value);
$cms_block_query = "INSERT INTO `cms_block` (`block_id`,`created_in`,`updated_in`,`title`,`identifier`,`content`,`creation_time`,`update_time`,`is_active`) VALUES (" . $sequence_value . ",1,2147483647,'Footer Left Detail','footer_left_detail','<div class=\"col-lg-4\">
<div class=\"left-parent-header\">
THE WEBSTER
</div>
<div class=\"first-left-content\">
<ul>
<li><a href=\"#\">Contact Us</a></li>
<li><a href=\"#\">About</a></li>
<li><a href=\"#\">Team</a></li>
<li><a href=\"#\">Affiliates</a></li>
<li><a href=\"#\">Press</a></li>
</ul>
</div>
</div>
<div class=\"col-lg-4\">
<div class=\"left-parent-header\">
STORE INFORMATION
</div>
<div class=\"third-left-content\">
<ul>
<li><a href=\"#\">South Beach</a></li>
<li><a href=\"#\">Soho</a></li>
<li><a href=\"#\">Houston</a></li>
<li><a href=\"#\">Bal Harbour</a></li>
<li><a href=\"#\">Costa Mesa</a></li>
</ul>
</div>
</div>
<div class=\"col-lg-4\">
<div class=\"left-parent-header\">
SHOPPING ONLINE
</div>
<div class=\"second-left-content\">
<ul>
<li><a href=\"#\">Payment & Security</a></li>
<li><a href=\"#\">Shipping</a></li>
<li><a href=\"#\">Return Policy</a></li>
<li><a href=\"#\">FAQ</a></li>
</ul>
</div>
</div>',NOW(),NOW(),1);";
$setup->getConnection()->query($cms_block_query);
$row_id_query = "select row_id from cms_block where block_id = ".$sequence_value;
$row_id = $setup->getConnection()->query($row_id_query);
$cms_block_store_query = "INSERT INTO `cms_block_store` (`row_id`,`store_id`) VALUES (" .$row_id. " ,1);";
$setup->getConnection()->query($cms_block_store_query);
// }
$setup->endSetup();
} }
$sequence_value, write like this, $setup->getConnection()->query("SELECT max(sequence_value)+1 FROM sequence_cms_block");$setupto variable