wordpress自定义创建数据库表_数据库增删改查操作
admin
2024-03-31 04:41:04

当我们在开发wordpress主题或者插件时需要新的数据库储存我们的信息,下面我们就介绍如何创建,修改,增加,删除自定义数据库表。

1、wordpress创建数据库表

function add_table(){ //创建自定义分类表函数
global $wpdb;
$table_name = $wpdb->prefix . "types"; //声明表名 types为要创建的表名
$table_names = $wpdb->get_var("SHOW TABLES LIKE '$table_name'"); //获取声明的表判断是否存在if($table_names != $table_name){$sql = "CREATE TABLE " . $table_name . " (`tid` bigint(20) NOT NULL AUTO_INCREMENT,`term_id` bigint(20) NOT NULL,PRIMARY KEY (`tid`),UNIQUE KEY `term_id` (`term_id`)) ENGINE=MyISAM  DEFAULT CHARSET=utf8;";require_once(ABSPATH . 'wp-admin/includes/upgrade.php');dbDelta($sql);}
}
add_table();

      tid:表中的字段   term_id:表中字段  可根据需求增加

2、wordpress增加数据库表字段 $wpdb->query()

      $wpdb->query()  中可为任意的增删改查sql语句

global $wpdb;
$table_name = $wpdb->prefix . "types"; //表名
$sql = $wpdb->query("ALTER TABLE  表名  ADD 字段名 CHAR(255)");
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
dbDelta($sql);

3、wordpress数据库增删改查操作

增:$wpdb->insert() ,

global $wpdb;
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
//增加数据
$sql = $wpdb->insert('wp_termmeta',array('term_id'=>8,'meta_key'=>'title','meta_value'=>'我是标题')); 
dbDelta($sql);

删:$wpdb->delete(),

global $wpdb;
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
//删除数据表 wp_termmeta 中 meta_id 为 1 的数据  
$sql = $wpdb->delete( 'wp_termmeta', array( 'meta_id' => 1 ) );
dbDelta($sql);

改:$wpdb->update,

global $wpdb;
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
//改  (修改meta_id等于80中的 meta_value中的值为我是修改后的标题 )
$sql = $wpdb->update('wp_termmeta',array('meta_value'=>'我是修改后的标题'),array('meta_id'=>80));  
dbDelta($sql);

  第一个数组为修改的内容,第二个为修改的条件

查:$wpdb->get_results

global $wpdb;
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
$sql = $wpdb->get_results("SELECT * FROM wp_termmeta WHERE term_id = '9' ");
for($i=0;$imeta_key;echo $sql[$i]->meta_value;
}
print_r($sql);

4、$wpdb是一个全局变量,包含多个关于wordpress数据库操作函数: 

$wpdb -> get_results('query');  
$wpdb->query('query');  
$wpdb->get_var('query',column_offset,row_offset);  
$wpdb->get_row('query', output_type, row_offset);  
$wpdb->get_col('query',column_offset);  
$wpdb->get_results('query', output_type);  
$wpdb->insert( $table, $data, $format );  
$wpdb->update( $table, $data, $where, $format = null, $where_format = null );  
$wpdb->prepare( 'query' [, value_parameter, value_parameter ... ] );  
$wpdb->show_errors();  
$wpdb->hide_errors();  
$wpdb->print_error();  
$wpdb->get_col_info('type', offset);  
$wpdb->flush();   

相关内容

热门资讯

把音乐厅搬进喀斯特溶洞是什么体...   近日,一场融合多元艺术形式的洞穴音乐会在贵州省修文县举行,五百余名观众在喀斯特溶洞之中,感受了一...
教师专享福利!北京这些景区免票... 新京报讯 据首都教育消息,教师节将至,北京多家景区为老师们准备了专属免票福利!这份优惠合集已整理好,...
黑茶,喝的是一种境界与健康 在专门用来喝黑茶的茶具“飘逸杯”里,黑茶茶汤看起来并不像“黑茶”这个名字那样黑黢黢的一团。 玻璃器皿...
上海旅游节大巡游花车阵容抢先看... 2026上海旅游节大巡游9月12日外滩启幕,21辆全新主题花车携手21支境内外表演方队联袂登场,邀你...
原创 8... 上周门诊来了位 62 岁的张阿姨,得糖尿病快五年了,平时管嘴特别严,糖果、点心、甜饮料一概不碰,连水...