こんにちは私はsugarcrmをインストールした後、ちょうど考えていました。私はちょうどテーブルを通り抜けました。しかし、私はエンジンをInnodbとして見ていません。それは、MyIsamを使用していますが、どうして関係を維持できるのでしょうか。誰かがこのおかげで私に知らせてくれませんか
4 に答える
SugarCRMは、外部キー制約をまったく維持せず、トランザクションも使用しません(少なくともMySQLでは)。これはSugarCRM(多くの中で最大のもの)の主要な設計上の欠陥であり、システムのカスタマイズを開始すると非常に大きな問題を引き起こす可能性があります。
mySQLのすべてのデータベースエンジン(myISAMなど)がリレーションシップをサポートしているわけではないため、SugarCRMはデータベースレイヤーでリレーションシップを作成しません。関係は、のアプリケーションレベルで定義されますvardefs.php
。
MyIsamテーブルの優れている点は、Sugarアプリケーションファイルの場合と同じように、dbディレクトリのファイルコマンドを使用してSugarデータベースをバックアップまたは複製できることです。:^)
SugarCRMは、MySQL用にデフォルトで選択されているDBエンジンである場合、InnoDBを使用できます。
シュガーのようなトランザクションアプリケーションでは、レコードレベルのロックよりもテーブルレベルのロックの方がはるかに優れているため、実際にはInnoDBを使用することをお勧めします。はい、外部キー制限(MySQLではうまく機能しない傾向があります)やトランザクションを利用していませんが、両方の項目が将来のサポートのロードマップに含まれています。