タグ付けされた質問 「database」

MagentoのMySQLデータベースに関連する質問(テーブルスキーマ、プレーンSQLクエリ、データベース構成など)。Magentoデータベースアクセスレイヤーに関する質問については、他のタグ(eav、モデル、リソースモデル、コレクション、インストールスクリプトなど)を使用してください。特にSQLクエリに関する質問には、SQLタグも適しています。

1
CSVからデータベーステーブルを作成する
外部ソースから提供された表形式のデータにアクセスする必要があるモジュールに取り組んでいます。2列だけですが、およそ40000行あります。 現在、私のモジュールは必要に応じてCSV全体を解析しています。これはうまく機能しますが、ファイルは約450Kbなので、本番サイトにデプロイされるとサーバーリソースを使い果たします。 このデータをMagentoテーブルに移動したいのですが、問題があります。 私は、セットアップスクリプトalaでRDBMSメソッドを使用しています。 $installer = $this; $installer->startSetup(); $table = $installer->getConnection() ->newTable($installer->getTable('my_table')) ->addColumn('column_a', Varien_Db_Ddl_Table::TYPE_TEXT, 5, array( 'nullable' => false, ), 'Column A') ->addColumn('column_b', Varien_Db_Ddl_Table::TYPE_TEXT, 3, array( 'nullable' => false, ), 'Column B'); $installer->getConnection()->createTable($table); $installer->endSetup(); これはテーブルを作成するのにうまく機能しますが、実際にデータを取得することは頭を悩ませています(データベース管理に関してはまだ初心者です)。 理想的には、CSVファイルを解析してテーブルに値を挿入するだけで、大量のコピー/貼り付けを処理する必要はありません。 任意のCSVデータを処理するための組み込みメソッドはありますか、それとも必要なものだけを処理するためにすべてビルドされていますか?データをMagentoに取り込む最良の方法は何ですか?
15 database  setup 

1
2つの「Webサイト」設定スコープを除くすべてのMagentoバックエンド404
Multiwebsite / Multistore(view)Magento 1.9.2.2の構成では、storeおよびstoreviewを含むWebサイトの1つを削除する必要がありました。 削除自体はうまくいきましたが(以前にこれを行いました)、現在の構成スコープを2つ以外のWebサイトに変更すると、404のバックエンドになりました。 新しい構成スコープを選択すると、次のURLが要求されます(管理パス+キーが変更されます)。 /index.php/mymageadmin/system_config/edit/section/dev/website/<WEBSITE>/key/1221231/ ここで<WEBSITE>、codeフィールドと等しいcore_websiteテーブルです。 mysqlクエリログオンを使用すると、Webサイト/ストアビューの選択に関して、正常にロードできる2つのWebサイトにこれらのクエリが含まれていることがわかります。 SELECT `main_table`.* FROM `core_config_data` AS `main_table` WHERE (`scope` = 'websites') AND (`scope_id` = '4') AND (`path` LIKE 'dev/%') SELECT `core_website`.* FROM `core_website` WHERE (`core_website`.`code`='working_store_code') 404を提供する他のWebサイトは、同じ最初のクエリから始まりますが、もちろんscope_idは異なりますが、2番目のクエリではMagentoはstoreview代わりにスコープを探す必要があると考えていますwebsite!実際には2回試行するようです。 SELECT `main_table`.* FROM `core_config_data` AS `main_table` WHERE (`scope` = 'websites') AND (`scope_id` = '3') AND (`path` …

1
Magento EE 1.12でファイルの代わりにデータベースをslow_backendとして使用する方法は?
Magento EE 1.12.0.0 app/etc/local.xmlでは、どのような構成変更を行っても、デフォルトのファイルキャッシュが引き続き使用されているように見えます(var/cache/常に満たされていることから明らかです)。 期待 Memcachedはfast_backendとして使用されます。 データベースはslow_backendとして使用されます。 ファイルキャッシュはまったく使用されません(つまり、var/cache/常に空にする必要があります)。 実際の出力 Memcachedはfast_backendとして使用されます。 データベースはまったく使用されません。 ファイルキャッシュが使用されています。 試験手順 構成を変更しapp/etc/local.xmlます。 MemcachedとApacheを再起動します(適切な手段として、ローカルの開発ボックスにあるため、同様にできます)。 ファイルキャッシュをクリアします(rm -rf var/cache/*)。 ホームページを更新します。 ファイルキャッシュの内容を確認します(ls var/cache)。 悲しくなり、別の設定変更で#1に戻ります。 構成 私の内容はapp/etc/local.xml次のとおりです。 <config> <global> <install> <date><![CDATA[{{actual_data}}]]></date> </install> <crypt> <key><![CDATA[{{actual_data}}]]></key> </crypt> <disable_local_modules>false</disable_local_modules> <resources> <db> <table_prefix><![CDATA[]]></table_prefix> </db> <default_setup> <connection> <host><![CDATA[{{actual_data}}]]></host> <username><![CDATA[{{actual_data}}]]></username> <password><![CDATA[{{actual_data}}]]></password> <dbname><![CDATA[{{actual_data}}]]></dbname> <initStatements><![CDATA[SET NAMES utf8]]></initStatements> <model><![CDATA[mysql4]]></model> <type><![CDATA[pdo_mysql]]></type> <pdoType><![CDATA[]]></pdoType> <active>1</active> …

5
Magento MySQLにエラーがなくなりました
Magento CE 1.7.0.2には奇妙な問題がたくさんあります。通常の操作中、サイトはフロントエンドとバックエンドの両方でMagentoエラーページ(リクエストの処理中にエラーが発生しました)を時々生成します。関連レポートを表示すると、次のメッセージが表示されます。 "SQLSTATE[HY000] [2006] MySQL server has gone away" 時々ですが、まれですが、レポートメッセージは次のようになります。 Connection reset by peer 私が見てきましたVAR>ログ> SYSTEM.LOGとMySQL has gone awayエラーは以下を伴います: Warning: PDO::__construct(): MySQL server has gone away in /var/www/html/domain.com/live/lib/Zend/Db/Adapter/Pdo/Abstract.php on line 129 Error while reading greeting packet. PID=1863 in /var/www/html/domain.com/live/lib/Zend/Db/Adapter/Pdo/Abstract.php on line 129 これに加えて、次のエラーはすべてのリクエストとエラーで発生しているようですMySQL has gone away: Warning: include(File.php): failed …

2
magento 2で画像のカスタム属性を保存する方法
条件に基づいてフロントエンドで製品の画像をいくつか表示する必要があります。仮想ミラーの使用を確認する必要があります。 <?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Dcw\Vm\Observer; use Magento\Framework\Event\ObserverInterface; class ChangeTemplateObserver extends \Magento\ProductVideo\Observer\ChangeTemplateObserver { /** * @param mixed $observer * @SuppressWarnings(PHPMD.UnusedFormalParameter) * @return void */ public function execute(\Magento\Framework\Event\Observer $observer) { $observer->getBlock()->setTemplate('Dcw_Vm::helper/gallery.phtml'); } } テンプレート: <div class="admin__field field-image-vm"> …

1
注文住所にvarchar列を追加
sales / order_addressテーブルにいくつかのvarcharフィールドを追加しようとしていますが、列定義エラーが発生しています。 私は次のコードを持っています: $oInstaller->getConnection() ->addColumn( $oInstaller->getTable('sales/order_address'), 'address_email', array( 'nullable' => false, 'length' => 255, 'type' => Varien_Db_Ddl_Table::TYPE_VARCHAR, 'comment' => 'Company Email Address' ) ); これはエラーを返します: [message:protected] => Invalid column definition data 使用するコードを変更するVarien_Db_Ddl_Table::TYPE_INTEGERと、コードが実行され、列が追加されます。長さとnull属性を削除しようとしましたが、役に立ちませんでした。 編集 スクリプトを更新すると、次のように更新され、動作します。誰がこのエラーの原因を知っていますか? $oInstaller->getConnection() ->addColumn( $oInstaller->getTable('sales/order_address'), 'address_email', Varien_Db_Ddl_Table::TYPE_VARCHAR . '(255)' );

4
Magento2 InstallSchema.phpは指定されたテーブルを作成しません
データベースに必要なテーブルを作成しないInstallSchema.phpがあります。スキーマのコードは次のとおりです。 <?php namespace MyVendor\Helpdesk\Setup; use Magento\Framework\Setup\InstallSchemaInterface; use Magento\Framework\Setup\ModuleContextInterface; use Magento\Framework\Setup\SchemaSetupInterface; /** * @codeCoverageIgnore */ class InstallSchema implements InstallSchemaInterface { public function install(SchemaSetupInterface $setup, ModuleContextInterface $context) { $installer = $setup; $installer->startSetup(); $table = $installer->getConnection() ->newTable($installer->getTable('myvendor_helpdesk_ticket')) ->addColumn( 'ticket_id', \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER, null, ['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true], …

1
Magento 2:「resources.xml」ファイルの使用目的は何ですか?
Magento 2では、モジュールに含まれるXML構成ファイルの1つがresources.xmlファイルです。たとえば、販売モジュールには1つの #File: vendor/magento/module-sales/etc/resources.xml <?xml version="1.0" encoding="UTF-8"?> <!-- /** * Copyright © 2015 Magento. All rights reserved. * See COPYING.txt for license details. */ --> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:App/etc/resources.xsd"> <resource name="sales_setup" extends="core_setup" /> <resource name="sales" extends="core" /> </config> これらのファイルがMagento 2で使用されていることを誰もが知っていますか?それらは、古いMagento 1トップレベル<resources/>ノードのようです。しかし、Magentoのはもはや使用のセットアップリソース・モデル/移行するので(代わりにMagentoの2つの用途クラスではSetup/InstallSchema.php、Setup/InstallData.php、Setup/UpgradeSchema.php、Setup/UpgradeData.phpインストール/移行のようなスクリプトのために)、その100%でないものをクリアsales_setupリソースがためです。 非セットアップリソースの場合、これは、異なる資格情報/接続文字列情報を持つデータベース接続クラスを追加するための別の方法ですか?または、他の何か?

4
データベースを介して重複したSKUを削除するにはどうすればよいですか?
adminを介していくつかのMagento製品を編集して保存しようとすると、「属性「SKU」の値は一意でなければなりません。」というエラーが表示されます。 Magento adminで製品を表示すると、重複するskuが見つかりませんが、製品のエクスポートを実行すると、実際には同じskuの製品がいくつかあります。理論的には、Magentoはこれを決して許してはいけませんでしたが、残念ながら、以前のMagentoのバグや癖の残骸を運んでいると思われるかなり大きく成熟した(3歳以上)製品グループを扱っています。 この問題を解決する唯一の方法は、データベースから重複するスカルの1つを手動で削除することであると推測していますが、これを行うための最良/安全な方法はわかりません。データベースの操作経験はほとんどありませんので、ご協力をお願いします。

1
Magentoデータベースのアップグレードは「トランザクション」で行われますか?
この問題atmがあります。 クライアントは、ショップをCE 1.4からCE 1.8にアップグレードします。ファイルのアップグレードは順調に進み、データベースのアップグレードも開発マシンで順調に進みました。 クライアントのライブマシンでクライアントのlive-dbをアップグレードしようとすると(1.8-Magentoをデータベースに接続してブラウザーで開く)、プロセスはしばらく実行されているように見え、500エラーで終了します。 PHPエラーログは空です。共有ホストであるため、apacheまたはmysqlの設定を変更することはできません。「特別なim magentoホスティング」にもかかわらず、ホスティング事業者は設定を変更することを望んでおらず、500エラーが発生したときにブラウザウィンドウを繰り返し更新することでデータベースのアップグレードを完了できると教えてくれます。 。これは数時間続く場合があります。 私の質問は次のとおり です。-これは本当ですか?データベースアップグレードのsqlステートメントはトランザクションにラップされるため、何か問題が発生した場合はロールバックできると考えました。 -答えは、この質問の答えを見つけるためにコードを調べることができるヒントを提供できますか? 御時間ありがとうございます!

2
Magentoデータベース図
Magento Database Tablesのこの素晴らしい図を見つけましたが、これがまだ最新かどうかを知りたいです。Magento 1.9を実行しています。それは2009年に公開され、それ以来いくつかのMagentoアップデートが公開されています。データベースの構造がまだ比較的同じであることを願っています。プリンタに送信して大量のコピーを取得する前に確認を取得したいのですが。 図:MAGENTO_v1.3.2.4-Database_Diagram.pdf また、誰かがテーブル定義の場所を知っていますか?図に沿って参照するとよいでしょう。


5
このエラーメッセージを取得:dbModel読み取りリソースはZend_Db_Adapter_Abstractを実装していません
私は自分のmagentoプロジェクトをLinuxサーバーに置きました。最初にエラーログメッセージが表示されましたが、varフォルダーがありませんでした。次に、varフォルダーを作成し、それに777のアクセス許可を与えました。キャッシュ、レポート、セッションと同じです。レポートフォルダーのエラーファイルで、次のメッセージが表示されました。 a:5:{i:0;s:65:"dbModel read resource does not implement Zend_Db_Adapter_Abstract";i:1;s:3543:"#0 /home/myfolder/public_html/app/code/core/Mage/Core/Model/Resource/Db/Collection/Abstract.php(134): Varien_Data_Collection_Db->setConnection(false) #1 /public_html/app/code/core/Mage/Core/Model/Config.php(1348): Mage_Core_Model_Resource_Db_Collection_Abstract->__construct(Object(MKleine_LanguageRoutes_Model_Resource_Languageroute)) #2 /public_html/app/code/core/Mage/Core/Model/Config.php(1380): Mage_Core_Model_Config->getModelInstance('mk_languagerout...', Object(MKleine_LanguageRoutes_Model_Resource_Languageroute)) #3 /public_html/app/Mage.php(491): Mage_Core_Model_Config->getResourceModelInstance('mk_languagerout...', Object(MKleine_LanguageRoutes_Model_Resource_Languageroute)) #4 /public_html/app/code/core/Mage/Core/Model/Abstract.php(208): Mage::getResourceModel('mk_languagerout...', Object(MKleine_LanguageRoutes_Model_Resource_Languageroute)) #5 /public_html/app/code/core/Mage/Core/Model/Abstract.php(213): Mage_Core_Model_Abstract->getResourceCollection() #6 /public_html/app/code/community/MKleine/LanguageRoutes/Model/Translation.php(150): Mage_Core_Model_Abstract->getCollection() #7 /public_html/app/code/community/MKleine/LanguageRoutes/Model/Translation.php(129): MKleine_LanguageRoutes_Model_Translation->getRouteCollection(1) #8 /public_html/app/code/community/MKleine/LanguageRoutes/Model/Translation.php(91): MKleine_LanguageRoutes_Model_Translation->translateToFront('install', 1) #9 /public_html/app/code/community/MKleine/LanguageRoutes/Model/Core/Url.php(75): MKleine_LanguageRoutes_Model_Translation->translateRouteToFront('install') #10 /public_html/app/code/core/Mage/Core/Model/Url.php(398): MKleine_LanguageRoutes_Model_Core_Url->getRouteFrontName() #11 /public_html/app/code/core/Mage/Core/Model/Url.php(763): Mage_Core_Model_Url->getBaseUrl() #12 /public_html/app/code/core/Mage/Core/Model/Url.php(995): Mage_Core_Model_Url->getRouteUrl('install', …
11 database  error 

3
Magento2 InstallSchemaは既存のテーブルに新しい列を追加します
magento2の既存のテーブルに新しい列を追加しようとしています <?php namespace Vendor\Module\Setup; use Magento\Framework\Setup\InstallSchemaInterface; use Magento\Framework\Setup\ModuleContextInterface; use Magento\Framework\Setup\SchemaSetupInterface; /** * @codeCoverageIgnore */ class InstallSchema implements InstallSchemaInterface { /** * {@inheritdoc} * @SuppressWarnings(PHPMD.ExcessiveMethodLength) */ public function install(SchemaSetupInterface $setup, ModuleContextInterface $context) { $installer = $setup; $installer->startSetup(); $eavTable = $installer->getTable('eav_attribute'); $columns = [ 'my_column' => [ 'type' => \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER, 'length' => …

1
テーブル「フラグ」
Magento 2にはと呼ばれるテーブルがありますflag。 テーブルが作成されMagento\Setup\Model\Installerます。 このテーブルは何をしていますか/保持していますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.