gpt4 book ai didi

php - mysql不存储blob列数据

转载 作者:行者123 更新时间:2023-11-30 22:54:41 25 4
gpt4 key购买 nike

我有一个奇怪的问题,我无法弄清楚,任何帮助将不胜感激!

问题是我试图将一个对象存储到 mysql 数据库中,当我执行插入命令时我成功运行,但是当我检查表时,所有列都有新插入的数据,除了具有 Blob 数据类型的列。

这是表格

CREATE TABLE `uc_opportunities` (
`post_id` int(11) NOT NULL AUTO_INCREMENT,
`org_id` int(11) DEFAULT NULL,
`dateTime` int(11) NOT NULL,
`subject` varchar(200) NOT NULL,
`text` varchar(2000) DEFAULT NULL,
`zipcode` varchar(10) NOT NULL,
`location` varchar(100) DEFAULT NULL,
`schedule` blob NOT NULL,
PRIMARY KEY (`post_id`)
) ENGINE=InnoDB AUTO_INCREMENT=48 DEFAULT CHARSET=utf8;

这是插入函数:

public function addOpportunity($org_id)
{
global $mysqli,$emailActivation,$websiteUrl,$db_table_prefix; //

echo "inside add opportunity<br>";
var_dump($this->schedule);

$stmt = $mysqli->prepare("INSERT INTO ".$db_table_prefix."opportunities (
org_id,
dateTime,
subject,
text,
zipcode,
schedule
)
VALUES (
?,
?,
?,
?,
?,
?
)");

$schedule_serialized = serialize($this->schedule);
$stmt->bind_param("iissib", $org_id, $this->dateTime, $this->subject,$this->postText, $this->zipcode, $schedule_serialized );
$result = $stmt->execute();

echo "execution result ".$result."<br>";
$inserted_id = $mysqli->insert_id;
$stmt->close();

$this->post_id = $inserted_id;

}

除了 schedule 之外的所有列都被插入,我检查插入函数是否使用 var_dump($this->schedule) 正确接收了时间表并且它是正确的。您认为可能是什么问题?

谢谢

最佳答案

请查看 mysqli 文档以引用保存 blob 数据和 max_allowed_pa​​cket 的 mysql 配置。这可能是您的问题,因为我不知道您的序列化数据有多大:

php.net mysqli

关于php - mysql不存储blob列数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26939246/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com