草庐IT

Wzero-as-null-pointer-constant

全部标签

由于已设置的 NOT NULL 字段,MySQL DUPLICATE KEY UPDATE 无法更新

我有一个使用严格模式的MySQL数据库,所以我需要在插入一行时填充所有NOTNULL值。我创建的API仅使用DUPLICATEKEYUPDATE功能来执行插入/更新。如果插入了预期的任何NOTNULL属性,则客户端应用程序会提示。基本示例(id为主键,有两个非空的字段aaa和xxx)INSERTINTOtablename(aaa,xxx,id)VALUES("value","value",1)ONDUPLICATEKEYUPDATEaaa=VALUES(aaa),xxx=VALUES(xxx)到目前为止一切都很好。一旦插入,系统将允许进行更新。尽管如此,仅更新其中一个字段时出现以下错误

php - mysql不允许在唯一索引上使用NULL

我使用用户的mysql创建了一个表。表的列是sequence、email、date_created和date_canceled。primary是序列,我试图为电子邮件和date_canceled创建一个唯一索引-所以当电子邮件处于事件状态时(从未被取消-意味着date_canceled为NULL)不会插入另一个事件电子邮件或发生这种情况。我知道它可以用oracledb来完成,但是用mysql唯一索引允许NULL。任何建议如何处理这个?谢谢! 最佳答案 我对你的问题的理解是,你希望每个用户在任何时候都有一个与其关联的事件电子邮件,同时

java - 数组在浏览器中给出 null 作为输出

我测试过我的Java程序可以正确地从MySQL检索数据。然而,问题出在Java和JSP之间。JSP页面无法从java程序中获取数据。请大家帮帮我。它给出的输出为空:nullnull...hai我的jsp页面:hai我的java页面是:packagecom.zoo;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.ResultSet;importjava.sql.Statement;importcom.mysql.jdbc.Driver;publicclassMySQLAccess{publicSt

java - 数据截断 : Incorrect datetime value: 'null' in Java

我有一个使用java将数据插入mysql的查询。它给我这个错误Datatruncation:Incorrectdatetimevalue:'null'forcolumn'lastEventTime'atrow1lastEventTime设置为可为null的datetime类型,默认为NULL。不幸的是,当我在phpmyadmin中运行相同的查询时,它接受并将数据插入到表中。那么java的解决方案是什么?我的部分代码如下。 最佳答案 单引号(')表示字符串文字。在这里,您并不是要插入字符串'null',而是实际的null值-只需删除引

mysql - 变量 time_zone 不能设置为 NULL 的值

我有一个相当新的WampServer设置,当我对新数据库使用source命令时:sourcepath/to/database.sql这一切似乎都是QueryOK除非我在最后得到这组错误:ERROR1231(42000):Variable‘time_zone’can’tbesettothevalueof‘NULL’ERROR1231(42000):Variable‘sql_mode’can’tbesettothevalueof‘NULL’ERROR1231(42000):Variable‘foreign_key_checks’can’tbesettothevalueof‘NULL’ERR

java - Oracle nvl 需要将 null 插入数字字段

这是我正在运行的删除脚本的后备脚本。这是我用来生成插入语句的查询。select'insertintoremark_element(ELEMENTID,REMARKID,VALUE,POSITION,INFO_TYPE,SCRIPTID)values('||elementid||','||remarkid||','''||nvl(value,'null')||''','||position||','||nvl(info_type,null)||','||nvl(scriptid,null)||''||')'fromremark_elementwhereelementidin(....这是

mysql - SQL:将 undef (NULL) 绑定(bind)到占位符将不会选择具有 NULL 值的行

我使用的是perl5.20和MySQL5.7,但我认为问题是关于SQL的:perldocDBI说:Bindinganundef(NULL)totheplaceholderwillnotselectrowswhichhaveaNULLage!AtleastfordatabaseenginesthatconformtotheSQLstandard.RefertotheSQLmanualforyourdatabaseengineoranySQLbookforthereasonsforthis.ToexplicitlyselectNULLsyouhavetosay"WHEREageISNULL

php - 如何在 PHP PDO 中插入空字符串而不是 null

我正在重构代码,从mysql扩展到pdo的。现有的db模式是这样的,100个脉冲表中的几乎所有列都具有NOTNULL约束。由于这个限制,我在插入和更新数据时经常遇到以下错误。SQLSTATE[23000]:违反完整性约束:1048列“some-column-name”不能为null义务:不可能更改数据库模式,即删除NOTNULL约束。在为每一列插入之前很难检查值是否为null。所以我正在寻找一个通用的解决方案,其中插入空字符串而不是NULL,它将针对所有PDO语句进行寻址。我正在使用thisPDO辅助类。 最佳答案 当您声明您的列时

php - 二进制输出参数 - PHP、PDO、MySQL : result is always null

我有一个MySQL存储过程,它通过输出参数返回一个UUID。我正在使用PDO从PHP调用此过程-但我只是为输出参数返回null...输出数据类型没有明确的二进制选项(PDO::PARAM_???)-我猜最接近是LOB。有谁知道如何做到这一点?这是我的PHP代码:publicfunctionCreateTenant($name){$qry=$this->conn->prepare("callspInsertTenant(:name,:userId,:id)");$qry->bindParam(':name',$name);$qry->bindParam(':userId',$this->

mysql - 如何将无效的字符串格式日期值转换为 null

我有字符串列,我想将该字段转换为日期。我正在尝试以下查询但出现错误:selectcast('20160532'asdate)ASdt;当我选择输出为空时,因为32不是日期,但是当我将这条记录插入到表中时,它给出了一个错误:"incorrectdatevalue20160532" 最佳答案 尝试使用STR_TO_DATE()-当字符串的日期格式不正确时,它将返回NULL:SELECTSTR_TO_DATE('20160532','%Y,%m,%d') 关于mysql-如何将无效的字符串格式