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

Drupalは、データベースサーバーにアクセスするための、ベンダーに依存しない標準の抽象化レイヤーを提供します。


2
ビューを製品として機能としてエクスポートした後、データを(のみ)プロダクションサイトからテストサイトにコピーするためのベストプラクティス?
Drupal 7サイトを構築/テストした後、それを製品サーバーにデプロイし、すべてのビューを機能としてエクスポートしました。現在、ビューはすべてテストサイトでは「データベース内」にありますが、ライブサイトでは「コード内」です。ここで、開発の新しいフェーズのために、テストデータベースにコードデータベースではなく製品データベースをコピーしたい場合、開発サイトの「データベース内の」ビューを上書き(または消去)するのを避けるための最良の方法は何ですか? フィーチャーを作成するときにビューの名前を変更する必要がありますか? テストから/へ、または製品からテストへ、ビューをエクスポート/インポートしますか? sqldumpをコピーして戻すときに、テストデータベースのビューを選択的に保持する他の方法はありますか? どうもありがとう!

1
OR条件を使用してdb_updateの複数の条件を行う方法は?
ORデフォルトのAND条件の代わりに使用して、次のUpdateQueryステートメントを複数の条件で動作するように変換したいと思います。 db_update('system') ->fields(array('status' => 1)) ->condition('type', 'theme') ->condition('name', 'seven') // OR ->condition('name', 'rubik') ->execute(); それが可能だ?
7 7  database 

1
LEFT JOINとdb_select()
左結合を実行しようとしていますが、機能しません。 2つのテーブルがあります。 TABLE profile - uid - pid TABLE field_data_field_naam - entity_id - field_naam_value field_naam_valuewhere uidが..にpid等しく、がに等しい場所を選択しますentity_id。私の通常のクエリは次のようになります: SELECT fdfm.field_naam_value, pf.uid FROM field_data_field_naam fdfm LEFT JOIN profile pf ON fdfm.entity_id=pf.pid WHERE pf.uid = 4 私のデータベースでこれを実行すると、機能します。それから私はこれを持っています: $naam = db_select('field_data_field_naam', 'fdfm') ->fields('fdfm', array('field_naam_value')); $naam->leftJoin('profile', 'pf', 'fdfm.entity_id = pf.pid'); $naam->condition('uid', 4) ->execute(); そして私が次のことをすると: foreach ($naam …
7 7  database 

1
カスタム列をユーザーテーブルに追加する正しい方法?
'updated'という名前の列をユーザーテーブルに直接追加しようとしています。 この場合、外部の制約のために、フィールドAPIと結合はオプションではありません。 user_schemaを安全に変更して、カスタムモジュールに「更新」列を追加し、モジュールが削除されたときに安全にクリーンアップするにはどうすればよいですか? 以下は、スキーマAPIに基づく「更新」列のレイアウトです。 $field = array( 'type' => 'int', 'not null' => TRUE, 'default' => 0, 'description' => 'Timestamp for last time user was updated.', ); 現在、hook_installを使用した私の試みは、期待どおりに機能していません。
7 7  database 

3
hook_field_schemaのチェックボックスフィールドにどのタイプを使用しますか?
仕事: hook_field_schemaなどを実装して、単一のチェックボックスを含むカスタムフィールドを作成します。 質問: チェックボックスの値を保存するために、対応するデータベース列を定義するために使用する(または使用する必要がある)データ型はどれですか? サンプルコード: function field_test_field_schema ($field) { $columns = array(); switch ($field['type']) { case 'test': $columns = array( 'value' => array( 'type' => '???', 'not null' => TRUE ), ); break; } return array('columns'=> $columns); } 更新: ブール列のnode_schema使用int。例: 'status' => array( 'description' => 'Boolean indicating whether the node …
7 7  entities  database 

2
EntityFieldQueryによって返されたエンティティからフィールドを取得する
動画コンテンツタイプがあります。で次のクエリを実行しますhook_cron。 $query = new EntityFieldQuery(); $query->entityCondition('entity_type', 'node'); $query->entityCondition('bundle', 'video'); $query->propertyCondition('status', 1); $results = $query->execute(); これは、プロパティを持つエンティティオブジェクトの数を返しnid、vidとtype。このオブジェクトを使用して、ビデオの特定のフィールド(たとえば、再生時間)の値を検索します。node_loadクエリを使用する代わりに、そもそもを使用していたので、は使用したくありません。これはどのように行うことができますか?
7 7  database 

2
プログラムでユーザーが更新できるリストノードを取得するにはどうすればよいですか?
現在のユーザーが更新できるノードのリストを作成したいと思います。これは、Organic Groupsを使用するサイトで使用されます。 私の最初の希望は、コンテンツが編集可能であることを確認できるビューフィルターがあることでした。ああ、違う。 私の2番目の試みはEFQを使用することでした: $query = new EntityFieldQuery(); $query->entityCondition('entity_type', 'node') ->entityCondition('bundle', 'suggested_listing') ->addMetaData('account', $account) ->addMetaData('op', 'update') ->addTag('node_access') ->pager(20); 動作しますが、OGが更新列を設定していないようnode_accessです。

8
Drushを使用して語彙のすべての用語を削除する方法は?
ここで報告されているように、Drupal 7の膨大な語彙に大きな問題があります。今、大きな語彙を空にしたいのですが、メモリが不足しているため、ロードできないため、管理インターフェイスを介してそれを実行できません。もっと。 drushMySQL を使用してコマンドラインから語彙のすべての用語を削除するにはどうすればよいですか? 私は知っています、私はそのようなことをすることができました: DELETE FROM `database`.`taxonomy_term_data` WHERE `taxonomy_term_data`.`vid` = 17 しかし、他に何を削除する必要がありますか?

1
db_selectを使用して計算列を取得するにはどうすればよいですか?
合計(ポイント)が必要ですか?以下に示すサンプルコードに何を追加するかについてのヘルプはありますか? $query = db_select('digitaliq_question_points','n') ->fields('n',array('points')) ->condition("node_id", $node->nid, '=') ->condition('n.fld_group', $fields, 'IN'); $points = $query->execute()->fetchAll();
7 database 

5
ビュー3.3で内部結合を左結合に変更しますか?
ビュー3.3を使用して、Drupal 7で2つのコンテンツタイプを表示するビューがあります。いずれかのコンテンツタイプにのみ関連付けられているフィールドの値に基づくフィルター条件があります。そのフィールド基準がある限り、ビューはを実行しているためINNER JOIN、そのフィールドがアタッチされていない最初のコンテンツタイプのビューは返されません。 ビューからクエリをコピーINNERし、をLEFT結合に変更して、それをmysqlシェルに貼り付け、期待どおりのすべての行を取得しました。しかし、ビューエディターでこれらの変更を行う方法がわかりません。 ビューエディターの「関係」ブロックで遊んでいましたが、結合タイプを変更できる場所がわかりませんでした。 ビュー3.3の結合方法を変更できますか?
7 7  views  database 

1
idでノードを選択し、フィールドと用語を結合するdb_select()を使用したクエリ
idで特定のノードを選択し、それをfield_data_field_projectresources列に結合し、分類から用語を選択するdb_selectを使用してクエリを記述しようとしています(これはterm_referenceフィールドであるため) 私は何度も試みましたが、行き詰まっていました(dr_taxonomy_term_dataテーブルへの参加についての部分さえも知りませんでした)。 $query = db_select('node','n') ->condition('n.nid','5') ->fields('n') ->fields('p'); $query->Join('field_data_field_projectresources','p','p.entity_id = n.nid'); $result = $query->execute(); while($record = $result->fetchAssoc()) { print_r($record); } 助けてくれてありがとう、ありがとう
7 database 

1
db_query( 'SELECT nid FROM uc_products'); 結果はありません!どうして?
有効で機能している Ubercartに関連する非常に単純なクエリがあり、タスクはuc_productsテーブルからすべてのNIDを取得することであり、単純に結果を返しません。 $query = 'SELECT nid FROM uc_products'; $result = db_query($query); dsm('==================================================='); dsm($query); while ($nid = db_result($result)) { dsm('$nid: '.$nid); } しかし、phpMyAdminの同じデータベースで非常に同じクエリを実行すると、それが機能し、すべての正しい結果が得られます(現在、8つの製品があります)。 しかし、次のクエリは正しく機能し、予想されるすべての結果が得られます(vidフィールドは同じタイプですが、別の名前しかないため、最初のクエリは最も奇妙です): $query = 'SELECT vid FROM uc_products'; $result = db_query($query); dsm('==================================================='); dsm($query); while ($vid = db_result($result)) { dsm('$vid: '.$vid); } $query = 'SELECT * FROM uc_products'; $result = …
7 6  ubercart  database 

2
PDO MySQLの問題
ここ数日間、次のエラーが発生しました。 致命的なエラー:/home/mydomain/public_html/drupal/includes/database/mysql/database.incの46行目の未定義のクラス定数「MYSQL_ATTR_USE_BUFFERED_QUERY」 これは、私のホスティングがアップグレードを行った後に来て、PHPはバージョン5.2.17になりました。彼らが私に言ったことから、私はphp.iniでPDO MySQL拡張を有効にする必要があると思います。問題は、共有ホスティングを使用していて、ファイルにアクセスできないことです。また、私のホスティングは、それを変更することもできないと述べました。私のinfo.phpは示しています: PDO PDOサポートが有効な PDOドライバーsqlite、sqlite2 SQLite 3.x対応 PECLモジュールバージョン用のpdo_sqlite PDOドライバー(バンドル)1.0.1 $ Id:pdo_sqlite.c 293036 2010-01-03 09:23:27Z sebastian $ SQLite Library 3.3.7 私が見つけたいくつかの提案に従って、.htaccessファイルを変更したり、ルートディレクトリに独自のphp.iniファイルを追加したりしましたが、まだ何も試していません。 誰か私が他に何ができるかを提案していただけますか? 編集: もう一度私はホスティングにPDO_MySQL拡張機能を有効にするように依頼しましたが、彼らはできないと答えました。そのcPanel(PleskからPleskに移行したため、この問題全体を引き起こしました)はこの拡張機能をデフォルトで無効にし、変更するとサーバーに影響します。彼らの解決策は?プログラミングを変更して、これらの新機能に適応するようにします。これは、どうすればよいかさえわからないでしょう。彼らは私がこれをすることを要求しているのでしょうか?他に方法はありますか?
7 7  database 

3
フィールドAPIとhook_schemaのフィールド
誰かが、hook_schemaで値として宣言するだけでなく、Fields APIを使用してエンティティのフィールドを作成する利点は何ですか? 定義されたすべてのフィールド、インスタンス、オプション、許可された値とデフォルト値などを取得するのは少し作業です。次に、ゲッターとセッターを処理する必要があり、最後にすべてをアンインストールするのはdb_deleteほど簡単ではありません。参照フィールドがある場合は特にそうです。他のエンティティによって使用されています。
7 7  entities  database 

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