草庐IT

empty2null

全部标签

php - 在 PDO 中绑定(bind) "not null"?

我最近发现您可以在PDO中绑定(bind)空值:$stmt=$db->prepare('SELECT*FROMfooWHEREbar=:bar');$stmt->execute(array(':bar'=>null));$foo=$stmt->fetchAll(PDO::FETCH_OBJ);这将成功地从数据库中获取所有foo,其中bar列为空。但是,我现在想做相反的事情。我想获取bar列为notnull的所有列。我知道我可以简单地将bar=:bar替换为barISNOTNULL。但是,我想避免这种情况,而是通过准备好的语句来完成,因为有时我必须动态构建查询字符串并且必须手动完成会增加

php - Wordpress 数据库 insert() 和 update() - 使用 NULL 值

Wordpress附带了处理CRUD操作的wpdb类。我感兴趣的此类的两个方法是insert()(CRUD中的C)和update()(CRUD中的U)。当我想将NULL插入mysql数据库列时出现问题-wpdb类将PHP空变量转义为空字符串。我如何告诉Wordpress使用实际的MySQLNULL而不是MySQL字符串? 最佳答案 如果您希望它兼容,则必须显示COLUMN并提前确定是否允许NULL。如果允许,则如果值为空($v),则在查询中使用val=NULL。$foo=null;$metakey="Harriet'sAdages"

mysql - 即使没有行,左连接也返回 null

我的表:表cat有id,name表user有id,uname,catid示例数据:猫table1|Cateone2|catetwousertable1|sam|12|dam|0myqueryisSELECTcat.id,cat.nameFROMcatLEFTJOINuserONcat.id=user.catidWHEREuser.id=2因为没有id0的类别,所以我得到零行。如果没有行,我希望NULL或结果为零。我该怎么做? 最佳答案 您需要将左连接变成右连接或交换表:SELECTcat.id,cat.nameFROMuserLEF

php - 发送 : How to insert NULL values into MySQL

我在MySQL、Apache和Ubuntu9.04上使用ZendFramework。我正在尝试像这样将NULL值插入数据库:$personObj->setPersonId('1');$personObj->setPersonEmail('NULL');$personObj->save();但是'NULL'在数据库中存储为字符串而不是NULL。当我使用它时:$personObj->setPersonId('1');$personObj->setPersonEmail(NULL);$personObj->save();但是没有任何反应,之前的条目没有改变。如何将NULL值插入MySQL?

mysql - Doctrine 模式更新总是尝试添加 NOT NULL

我有一个新的Symfony2.8安装,带有doctrine和MySQL5.6堆栈。执行doctrine:schema:update--force后,我可以看到数据库架构更新成功!执行了“x”个查询这是我的问题:即使我多次执行它,学说总能找到架构差异。通过--dump-sql,我可以看到所有这些查询都与:在string主键上添加NOTNULL在日期时间添加NOTNULL领域但是,当我检查我的数据库时,这些列已经有一个NOTNULL。这是单个属性/列的示例:classMyEntity{/***@ORM\Id*@ORM\Column(type="string",length=5,name="

java - Hibernate、MySQL、Enum 和 NULL

我将MySQL数据库与Hibernate一起使用,并且某些枚举字段允许NULL或空值。一切都很好,直到进行查询并且Hibernate尝试将空值映射到定义的Enum上。我无法在Enum中定义一个可行的值,因为Enum确实允许空格。枚举类:privateenumObjType{itemA,itemB,NULL}它采用NULL作为成员,但这没有帮助。我是EEJava的新手,非常感谢任何帮助。谢谢 最佳答案 您可以向您的枚举添加一个unknown或default或invalid值,如果它是null,它将被映射或空格packagecom.te

mysql - NULL 或空字符串更有效/更自然?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。借口,我熟悉NULL值和空字符串之间的语义差异。我有一个MySQL表,我在其中存储了很多主机名及其IP地址(作为字符串),并且想知道在主机名无法解析的情况下什么看起来更自然(或存储效率更高)。NULL值或空字符串(在这种情况下它可能应该是VARCHAR而不是CHAR)我倾向于NULL值,但我希望确认或不确认。

mysql - ERROR 1048 (23000) 列不能为 NULL,但是我正在插入有效数据

StackOverflow上有很多这样的帖子,但是从我看到的大约20个帖子来看,它们要么是在与MySQL接口(interface)时遇到的编码错误(我不想这样做),要么只是想要空值但有他们的表定义不正确。我在MySQL5.6.19中看到一个错误,我有一个列不允许有空值。这很好,因为它不应该有空值。这是下面的表格描述。mysql>describez;+-------+----------+------+-----+---------+----------------+|Field|Type|Null|Key|Default|Extra|+-------+----------+------

php - MySQL - 小数不能为 NULL

每次我尝试在我的数据库中插入语句时,我都会收到“不正确的十进制值:第1行的‘bounty3’列为‘NULL’”错误。如何将空值插入十进制数据类型?我应该只将默认值设置为0.00吗?Incorrectdecimalvalue:''forcolumn'bounty3'atrow1Wholequery:INSERTINTOsongs(userid,wavURL,mp3URL,genre,songTitle,BPM,insWanted,bounty,insWanted2,bounty2,insWanted3,bounty3,insWanted4,bounty4,insWanted5,bount

MYSQL:将 NULL 日期与 CURRENT_DATE 进行比较

我有一个包含新闻文章的MYSQL表,其中包含字段“date_start”和“date_end”以指示要在网站上显示的新闻。如果date_start在今天之前并且date_end还没有过去(今天之后),则文章是公开的。问题:如果文章是永久性的并且不会过期,我想让管理员将date_end保留为NULL。这当然不适用于我的选择:SELECT*FROMpf_newsWHEREdate_start=CURRENT_DATE()它省略了带有NULLdate_end的文章。我试着玩一下IF语句,但它让我感到困惑。有没有一种简单的方法可以做到这一点,或者如果它留空,我应该将date_end设置为300