如何将mySql数据库转换为Drupal格式的表

如何将mySql数据库转换为Drupal格式的表,mysql,sql,drupal,Mysql,Sql,Drupal,大家好,我有一些sql表,我想把它们转换成“Drupal节点格式”,但我不知道怎么做。是否有人至少知道我必须编写哪些表才能拥有一个包含所有键等的完整节点 我会举一个例子: 我有这些目标: 动画 田鼠 田野动物 制作人 田间生产者 田间生产名 动物生产者 田鼠 田间生产者 我使用了CCK模块,在drupal中创建了一个新的内容类型Anime和一个新的数据类型Producer,它们存在于Anime对象中 如何将简单mysql数据库中的所有数据插入drupal 很抱歉发了这么长的帖子,我想让你有机会了

大家好,我有一些sql表,我想把它们转换成“Drupal节点格式”,但我不知道怎么做。是否有人至少知道我必须编写哪些表才能拥有一个包含所有键等的完整节点

我会举一个例子:

我有这些目标:

动画 田鼠 田野动物

制作人 田间生产者 田间生产名

动物生产者 田鼠 田间生产者

我使用了CCK模块,在drupal中创建了一个新的内容类型Anime和一个新的数据类型Producer,它们存在于Anime对象中

如何将简单mysql数据库中的所有数据插入drupal

很抱歉发了这么长的帖子,我想让你有机会了解我的问题


提前谢谢您抽出时间来阅读我的帖子。。。。我认为您可以从sql数据库导出CVS,然后使用


要将此cvs数据导入节点…..mmmm我不知道是否有其他非编程方式

节点属性数据的主表是
node
node\u revision
,请查看这些列中的列,应该很清楚这些列中需要包含哪些内容

就字段而言,它们的存储是可预测的,因此您可以自动导入(尽管我并不羡慕您必须编写它!)。如果您的字段名为“field\u anime”,则其数据将存在于两个表中:
field\u data\u field\u anime
field\u revision\u field\u anime
,这两个表由实体ID(在本例中为节点ID)、实体类型(在本例中为“节点”本身)和bundle(在本例中为节点类型的名称)键入。您应该使这两个表保持最新,以确保修订系统正常运行

但最简单的方法是使用PHP和节点API函数:

/* This is for a single node, obviously you'd want to loop through your custom SQL data here */
$node = new stdClass;
$node->type = 'my_type';
$node->title = 'Title';
node_object_prepare($node);

// Fields
$node->field_anime[LANGUAGE_NONE] = array(0 => array('value' => $value_for_field));
$node->field_producer[LANGUAGE_NONE] = array(0 => array('value' => $value_for_field));
// And so on...

// Finally save the node
node_save($node);

如果您使用此方法,Drupal将为您处理大量杂乱的内容(例如,在向节点添加分类术语字段时自动更新
分类法索引
表)

您可以使用feed模块导入平面CSV文件,或者有一个名为Migrate的模块,看起来很有希望(albiet相当密集)。两者都适用于Drupal 6或7。

不幸的是,我使用的是Drupal 7,因此此版本不支持此模块:(thx用于回复thow