আমরা কীভাবে একাধিক টেবিলগুলি ব্যবহার করে db_delete()
এবং INNER JOIN
দ্রুপাল 7 এ ক্ষেত্রগুলি মুছতে পারি ?
আমরা কীভাবে একাধিক টেবিলগুলি ব্যবহার করে db_delete()
এবং INNER JOIN
দ্রুপাল 7 এ ক্ষেত্রগুলি মুছতে পারি ?
উত্তর:
তুমি ভয় পাচ্ছিনা
db_delete()
কোয়েরিটি কোন টেবিলের বিপরীতে চালানো হবে তা নির্ধারণ করতে একটি স্ট্রিং প্যারামিটার লাগে takes একসাথে একাধিক টেবিল সরবরাহ করার সুযোগ নেই।
আপনি db_query()
যেমন পছন্দ করেন এমন কোনও এসকিউএল বিবৃতি চালাতে পারেন , যেমন, উদাহরণস্বরূপ।
// Deletes all nodes and related author users...please don't actually run this!!
$sql = 'DELETE u, n FROM {node} n INNER JOIN {users} u ON u.uid = n.uid';
db_query($sql);
হ্যাঁ, db_delete একক প্যারামিটার নেয়। db_delete()
একাধিক সারণী থেকে ডেটা মুছতে আপনাকে একাধিকবার কল করতে হবে । দয়া করে নীচের নমুনা কোডটি দেখুন:
/**
* Implements hook_menu_delete().
*/
function block_menu_delete($menu) {
db_delete('block')
->condition('module', 'menu')
->condition('delta', $menu['menu_name'])
->execute();
db_delete('block_role')
->condition('module', 'menu')
->condition('delta', $menu['menu_name'])
->execute();
}
উত্স লিঙ্ক:
https://github.com/drupal/drupal/blob/7.x/modules/ block / block.module https://api.drupal.org/api/drupal/modules%21 block%21
block.module/ 7.x
db_delete
একটি একক প্যারামিটার নেয়, কোনও উপাধির অনুমতি না দিয়ে বিরক্তিকর। অন্যথায়, db_select এর অনুরূপ JOIN গুলি ব্যবহার করা সম্ভব হবে।