【mysql – PDO和IS NOT NULL函数】教程文章相关的互联网学习教程文章

mysql – 在表中所有基于文本的字段上使用NOT NULL约束的共识是什么?

我遇到的一些表没有任何NOT NULL约束,这在查询时已经产生了一些问题. 我很好奇使用像NOT NULL DEFAULT’这样的东西是什么感觉,它会在检索/过滤记录时取代coalesce()函数的需要.另一方面,你不必使用合并,你必须使用CASE语句,或者如果你仍然想使用合并,你会做类似coalesce的事(nullif(field_foo,”),field_bar)解决方法:在语义上,数据是空的,将其设置为其他东西最多是尴尬的.我们总是假设NULL是NULL,我们知道那是什么.如果你使用”然...

mysql – 与逻辑运算符一起使用的null【代码】

我有一个名称,年龄和地址的表.我在表中有五行数据.对于某些行,年龄保留为null.我必须显示年龄不为空的所有数据. select * from sample_table where(age!= null); 但是没有显示输出,也没有出错.请解释一下.谢谢.解决方法:使用NULL,您必须使用IS或IS NOT.以下查询应该有效:SELECT * FROM sample_table WHERE (age IS NOT NULL)

如果mysql查询中的结果为null,如何将默认值设置为0【代码】

我想生成一个查询,生成女孩比例超过男孩. 为此,我使用以下查询. SELECT(c_count_girls / c_count_boys)AS比率FROM place WHERE placeId = 1; 它工作正常.但是每当c_count_girls = 0和c_count_boys = 0的值时 然后这给出如下结果: – ratio = null 但我希望在这种情况下结果应该是这样的: – 比率= 0 是任何这种类型的解决方案,所以我可以设置默认比率= 0如果结果为null. 请帮我.先感谢您.解决方法: SELECT COALESCE((c_count_gi...

php – Mysqli_query()期望参数1是mysqli,null给定?混乱?【代码】

define('DB_HOST', 'localhost');define('DB_USER', '******');define('DB_PASSWORD', '************');define('DB_NAME', '***********');$dbc = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);class User {function checkUser($uid, $oauth_provider,$username,$email,$twitter_otoken,$twitter_otoken_secret) {$query = mysqli_query($dbc,"SELECT * FROM si_table WHERE oauth_uid = '$uid' and oauth_provider =...

mysql – 将NOT NULL约束添加到列【代码】

我正在使用PHPMyAdmin,我尝试将NOT NULL约束添加到我的表的列中. PHPMyAdmin接受以下查询:ALTER TABLE `wall` MODIFY `token_message` varchar(40) NOT NULL;但我仍然可以插入空字符串(= NULL),我不明白为什么. PS:如果你要给我一些其他的查询来添加这个约束,请注意我已经尝试过这些在我的PHPMyAdmin中无效的3(错误类型:#1064 – 你的SQL语法有错误;查看手册):ALTER TABLE `wall` ALTER COLUMN `token_message` SET NOT NULL;...

仅在数据更改时触发的更新触发器后MySQL中的NULL处理【代码】

由于声誉限制,这是this answer to a prior question的后续问题.我想知道在处理NULL值时是否有更有效的方法来测试每个字段的更改.CREATE TABLE foo (a INT NULL DEFAULT NULL, b INT NULL DEFAULT NULL,c INT NULL DEFAULT NULL );CREATE TABLE bar (a INT NULL DEFAULT NULL,b INT NULL DEFAULT NULL,c INT NULL DEFAULT NULL );INSERT INTO foo (a, b) VALUES (1, 2);我想要一个触发器,只有在更新更改了值时才会在更新后执行操作....

php – MySql NOT NULL约束不起作用【代码】

我试图在customer表中实现NOT NULL约束,该表创建为:CREATE TABLE CUSTOMER(cust_id INT(5) NOT NULL AUTO_INCREMENT, PRIMARY KEY(cust_id),first_name VARCHAR(25) NOT NULL,last_name VARCHAR(25) NOT NULL,email VARCHAR(25) NOT NULL,password VARCHAR(25) NOT NULL,gender VARCHAR(1) NOT NULL,city VARCHAR(25) NOT NULL,dob DATE NOT NULL,pin INT NOT NULL);从表单中传递值后,我将其插入为:$sql= "INSERT INTO customer(...

MySql从一个表插入另一个表,其中一个字段不为null【代码】

我有一个表“电话簿”,其中有1.5M记录,一些记录的“phonenumber”字段为空. 我想将“phonenumber”字段不为空的所有记录复制到另一个表中.即使它看起来很简单,我也无法让它发挥作用. 这是我的代码:INSERT INTO phonebook2 (company,zip,city,address,tags,phonetype,phonearea,phonenumber) SELECT company,zip,city,address,tags,phonetype,phonearea,phonenumber FROM phonebook WHERE phonenumber != null && phonenumber != "...

mysql – SQLite中的null-safe相等运算符<=>的等价物是什么?

我需要确定MySQL中 operator' rel='nofollow' target='_blank'> operator的SQLite的等价物. 任何的想法?解决方法:The IS and IS NOT operators work like = and != except when one or bothof the operands are NULL. In this case, if both operands are NULL,then the IS operator evaluates to 1 (true) and the IS NOT operatorevaluates to 0 (false)http://www.sqlite.org/lang_expr.html#isisnot

mysql – 如果Count(*)为零,则返回NULL【代码】

我有以下mysql查询:SELECT count(student_name) AS total_student,school_name FROM `student` LEFT JOIN school_info ON school_info.school_id=student.school_id WHERE student.status='0'它返回:total_student school_name0 NULL我想要实现的是,如果total_student = 0则显示没有值或NULLtotal_student school_name 你能告诉我怎么做吗? 谢谢 :)解决方法:首先,您在查询底部缺少GROUP BY子句以按school_n...

mysql – 以html格式将空字符串更新为NULL【代码】

我正在Laravel建立一个网站. 我在InnoDB表中设置了外键约束. 我的问题是,如果我没有在选择框中选择一个值,框架会尝试使用”(空字符串)插入或更新表中的记录.这导致MySQL错误,因为它无法在子表中找到等效的外键值. 是否有一些优雅的方法来强制在外键字段中插入NULL,而不是检查每个字段?或者强制MySQL接受”作为“null”外键引用? 换句话说:我有一个SELECT字段,第一个OPTION为空.我选择了空白的OPTION.当我提交时,传递一个空字符串...

MySQL Trigger用法:如果column为null,则将其他列设置为null【代码】

如何在MySQL中使用触发器实现以下功能:当某些列的值为null时 – >将其他列值设置为null和当某列的值不为空时 – >将其他列值设置为null 表定义:CREATE TABLE variations ( id int(10) NOT NULL, x1 int(10) NOT NULL, x2 int(10), x1_option1 BOOL, x2_option1 BOOL, x1_option2 varchar(10), x2_option2 varchar(10) );我们的想法是我们有2个元素,x1和x2.虽然x1是强制性的,但x2是可选的,可以为null. x1和x2都有两个选项...

mysql – 如果列为null,则返回特定字符串的SQL查询?【代码】

当一个SQL查询返回null时,我想知道是否可以让它返回一个特定的字符串,如“Unknown”而不是null. 我目前正在JavaScript方面这样做,并想知道是否有更快的方法在服务器上执行此操作. 示例(我意识到以下语法不存在):SELECT Customers.Email (RETURN "Unknown" IF NULL)我想用CASE可以吗?但是用CASE语句填充我的查询会减慢整个操作的速度,而不是加快速度.解决方法:你可以使用coalesce:SELECT COALESCE(email, 'Unknown') FROM cust...

mysql – 两个外键,其中一个不是NULL:如何在SQL中解决这个问题?【代码】

我有一个上桌时间.时间条目(1:n关系)要么属于项目条目,要么属于special_work条目.必须设置项目ID或special_work id,两者都不设置(独占或).CREATE TABLE `time` (`id` int(20) NOT NULL AUTO_INCREMENT,`project` int(20) NOT NULL,`special_work` int(20) NOT NULL,`date` date NOT NULL,`hours` float NOT NULL,`time_from` time DEFAULT NULL,`time_to` time DEFAULT NULL,`notes` text NOT NULL,PRIMARY KEY (`id`),FOREIGN KE...

mysql – 如果不是null,用其他表中的数据更新表?【代码】

基本上我想要做的是将列的值从一个表复制到另一个表中的另一个列. 我使用的查询是:UPDATE t1 SET product_code = (SELECT `value` FROM t2 WHERE t2.variant_id = t1.variant_id AND key_id = 10);哪个工作正常,但列中不匹配, 所以我需要添加一个只会在该行上执行更新的子句,如果子查询不返回null. 我怎样才能做到这一点?解决方法:您应该只是通过这样的连接进行更新UPDATE t1 INNER JOIN t2 ON t1.variant_id = t2.variant_id ...