Един от начините да се премахне или да вмъкнете запис в таблица система от Drupal е функция, наречена drupal_write_record (). Както вероятно се досещате, тя ви позволява да било вмъкнете или изтриете запис от таблицата, но с няколко съществени и изключително неприятни нюанси, които ще бъдат описани по-долу.
Задача описание:
Така че, нека да има маса ImyaModulya_testTable. Тя има N-ти брой на обикновените полета, без значение какъв вид. Например, нека да бъде номер, nazvanie_knigki, god_izdaniya и avtor, която се отделя специално внимание, област идентификатор ще бъде нашият основен ключ / praymari-Кей. Въз основа на тази информация, кодът ще бъде по този начин.
Опции код drupal_write_record:
1. Създава се нов запис в таблицата (просто напишете, просто въведете първичен ключ и в двата случая, които имате във връзка с тази ситуация няма да работи, защото непременно ще генерира неприятно изключение):
2. Актуализиране на съществуващи записи на базата на първичен ключ:
Настоящият пример се използва drupal_write_record () е изключително неудобно, тъй Уеб програмист за всяка заявка ще трябва по някакъв начин да се провери дали е налице в дадена таблица на област на база данни с определения първичен ключ или не, или ако това ще доведе до грешка като дублиран запис (или нещо подобно, просто не е Спомням си).
За да обобщим:
Поради това, че най-добрият вариант е да се използват db_merge структура (). който е лишен от недостатъците, описани. Един пример за използването му в този контекст смятам едно от следните stateek.
Новини за Drupal 7.
Свързани статии