0

次のようなmysqlクエリがあります$query="SELECT * FROM #__content"

#__テーブル名の先頭にある はどういう意味ですか?

4

3 に答える 3

0

他の人が言ったように、ハッシュ アンダースコア シーケンス '#_' は、Joomla! の JDatabase クラスによってテーブル名に使用されるプレフィックスです。(注: アンダースコアは 1 つだけです。2 番目のアンダースコアは、テーブル名を読みやすくするために維持されています。)

Joomla! を初めてセットアップするとき プレフィックスを設定するか、その時点でランダムに生成されたものを使用するかを選択できます。プレフィックスを確認する方法については、こちらを参照してください。

JDatabase クラスを使用してデータベースにアクセスすると、抽象化メカニズムが提供されるため、MySQL、MSSQL、または PostgreSQL などのために特別にコーディングしなくても、Joomla が使用しているデータベースと対話できます。

JDatabase がクエリを実行する前に準備する#_ときfrom、Joomla! がインストールされました。例えば

    // Get the global DB object.        
    $db = JFactory::getDBO();
    // Create a new query object.       
    $query = $db->getQuery(true);
    // Select some fields
    $query->select('*');

    // Set the from From segment
    $query->from('#__myComponents_Table');

後でクエリを実行すると、JDatabase はfromSQL のセグメントを

from #__myComponents_Table

from jp25_myComponents_Table— プレフィックスが の場合、jp25実行前。

于 2012-08-21T06:31:37.787 に答える