mysql语句中NOT NULL的意思

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql语句中NOT NULL的意思相关的知识,希望对你有一定的参考价值。

CREATE TABLE `message` (
`id` tinyint(1) NOT NULL auto_increment,
`user` varchar(25) NOT NULL,
`title` varchar(50) NOT NULL,
`content` tinytext NOT NULL,
`lastdate` date NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=gbk AUTO_INCREMENT=1 ;

在这些语句中,NOT NULL auto_increment,和NOT NULL分别是什么意思啊?

auto_increment是表明id是自动增长类型的
NOT NULL是说明该字段不能为空值
参考技术A 就是表示字段的两个属性:NOT NULL :表示该字段不能为空;auto_increment:表示自动增长
其他字段的NOT NULL 也是表示不为空。

在 MySQL 函数调用中使用 Select 语句

【中文标题】在 MySQL 函数调用中使用 Select 语句【英文标题】:Using Select Statement in MySQL Function Call 【发布时间】:2011-08-26 03:52:01 【问题描述】:

在下面的 MySQL 存储函数调用中,我想从另一个表中选择一个多边形来进行测试,而不是手动输入经纬度坐标。我在正确使用语法时遇到问题。

SELECT IS_POINT_IN_POLYGON(
POINTFROMTEXT( CONCAT( 'POINT(', latitude, ' ', longitude, ')' ) ) , POLYFROMTEXT( 'POLYGON((43.40930419213147, -72.5537109375
43.40884544242924, -72.53695249557495
43.38754804789373, -72.5437331199646
43.378580946950244, -72.58398771286011
43.40930419213147, -72.5537109375 ))' )
)AS result, latitude, longitude
FROM sport
WHERE sport_type = 'lacrosse' AND IS_POINT_IN_POLYGON(
POINTFROMTEXT( CONCAT( 'POINT(', latitude, ' ', longitude, ')' ) ) , POLYFROMTEXT( 'POLYGON((43.40930419213147, -72.5537109375
43.40884544242924, -72.53695249557495
43.38754804789373, -72.5437331199646
43.378580946950244, -72.58398771286011
43.40930419213147, -72.5537109375))' )
) = 1;

所以,我想删除 43.40930419213147, -72.5537109375 43.40884544242924,-72.53695249557495 43.38754804789373,-72.5437331199646 43.378580946950244,-72.58398771286011 43.40930419213147, -72.5537109375

相反,我想使用这个选择语句:

SELECT neighborhood_polygon FROM `neighborhood_shapes` WHERE neighborhood="XYZ neighborhood"

我有多边形存储在neighbor_shapes 中。其结构如下:

neighborhood_index smallint(3) 邻域 varchar(50) neighborhood_polygon(几何)

附加信息:

IS_POINT_IN_POLYGON 调用如下: IS_POINT_IN_POLYGON(p POINT, poly POLYGON)

有什么建议吗?

【问题讨论】:

【参考方案1】:

尝试这样做。

... POLYFROMTEXT(
    (SELECT neighborhood_polygon 
      FROM neighborhood_shapes 
      Where neighborhood = "XYZ neighborhood") as coords)

【讨论】:

您好 Tony318,感谢您的留言。我试过你的建议。不幸的是,我得到了“#1583 - 调用本机函数 'POLYFROMTEXT' 中的参数不正确”。如果您有任何其他想法,请告诉我。我已经尝试了我能想到的一切。谢谢。 @OMG Ponies,帮助 - 我需要你的 MySQL 才华! 可能保留多边形部分吗? POLYFROMTEXT('POLYGON('+ (SELECT neighbor_polygon FROMphthal_shapes WHERE 邻域 = "XYZ 邻域") as coords + ')') 试一试。我不太确定 嗨 Tony318,我会试试的。我也尝试使用 AsText-- SELECT AsText(neighborhood_polygon) FROM neighbor_shapes Where neighbor = "XYZ neighbor" 但没有运气。 除此之外我不太确定,我对你的问题投了赞成票,希望其他人能看到并弄清楚

以上是关于mysql语句中NOT NULL的意思的主要内容,如果未能解决你的问题,请参考以下文章

c语言中switch可用啥语句替换

spss 中怎么打开语句输入窗口 如何输入spl语句

在javascript中返回语句后执行语句

工作中,我们经常用到哪些SQL语句呢?

错误:“INSERT EXEC 语句不能嵌套。”和“不能在 INSERT-EXEC 语句中使用 ROLLBACK 语句。”如何解决这个问题?

oracle查询语句中in后面数据较多怎么优化