PHP中操作MySQL的需注意的问题_MySQL
1.每一行命令都是用分号 (;) 作为结束
对于 MySQL ,第一件你必须牢记的是它的每一行命令都是用分号 (;) 作为结束的,但……没有完全绝对的事,在这儿也是一样,当一行 MySQL 被插入在 PHP 代码中时,最好把后面的分号省略掉,例如:
mysql_query ("INSERT INTO tablename (first_name, last_name) VALUES ('$first_name', $last_name')");
这是因为 PHP 也是以分号作为一行的结束的,额外的分号有时会让 PHP 的语法分析器搞不明白,所以还是省略掉的好。在这种情况下,虽然省略了分号,但是 PHP 在执行 MySQL 命令时会自动的帮你加上的。
另外还有一个不要加分号的情况。当你想把要字段的竖者排列显示下来,而不是像通常的那样横着排列时,你可以用 G 来结束一行 SQL 语句,这时就用不上分号了,例如:
SELECT * FROM PENPALS WHERE USER_ID = 1G
2. TEXT、DATE、和 SET 数据类型
MySQL 数据表的字段必须有定义一个数据类型。这有大约 25 种选择,大部分都是直接明了的,就不多费口舌了。但有几个有必要提一下。
TEXT 不是一种数据类型,虽然可能有些书上是这么说的。它实际上应该是“ LONG VARCHAR ”或者“ MEDIUMTEXT ”。
DATE 数据类型的格式是 YYYY-MM-DD ,比如: 1999-12-08 。你可以很容易的用 date 函数来得到这种格式的当前系统时间: date("Y-m-d")
并且,在 DATA 数据类型之间可以作减法,得到相差的时间天数:
$age = ($current_date - $birthdate);
集合 SET 是一个有用的数据类型,它和枚举 ENUM 有点相似,只不过是 SET 能够保存多个值而 ENUM 只能保存一个值而已。而且, SET 类型最多只能够有 64 个预定的值,而 ENUM 类型却能够处理最多 65,535 个预定义的值。而如果需要有大于 64 个值的集合,该怎么办呢?这时就需要定义多个集合来一起解决这个问题了。
3. 通配符
SQL 的通配符有两种:“ * ”和“ % ”。分别用在不同的情况下。例如:如果你想看到数据库的所有内容,可以像这样来查询:
SELECT * FROM dbname WHERE USER_ID LIKE '%';
这儿,两个通配符都被用上了。他们表示相同的意思 ?? 都是用来匹配任何的字符串,但是他们用在不同的上下文中。“ * ”用来匹配字段名,而“ % ”用来匹配字段值。另外一个不容易引起注意的地方是“ % ”通配符需要和 LIKE 关键字一起使用。
还有一个通配符,就是下划线“ _ ”,它代表的意思和上面不同,是用来匹配任何单个的字符的。
4. NOT NULL 和空记录
如果用户在没有填任何东西的情况下按了 submit 按钮,会怎样呢?如果你确实需要一个值,那么可以用客户端脚本或者服务器端脚本来进行数据验证,这一点在前面已经说过了。但是,在数据库中却是允许一些字段被空出来什么也不填。对此类纪录, MySQL 将要为之执行一些事情:插入值 NULL ,这是缺省的操作。
如果你在字段定义中为之声明了 NOT NULL (在建立或者修改这个字段的时候), MySQL 将把这个字段空出来什么东西也不填。对于一个 ENUM 枚举类型的字段,如果你为之声明了 NOT NULL , MySQL 将把枚举集的第一个值插入到字段中。也就是说, MySQL 把枚举集的第一个值作为这个枚举类型的缺省值。
一个值为 NULL 的纪录和一个空纪录是有一些区别的。 % 通配符可以匹配空纪录,但是却不能匹配 NULL 纪录。在某些时候,这种区别会造成一些意想不到的后果。就我的经验而言,任何字段都应该声明为 NOT NULL 。这样下面的 SELECT 查询语句就能够正常运转了:
if (!$CITY) {$CITY = "%";}
$selectresult = mysql_query ("SELECT * FROM dbname
WHERE FIRST_NAME = ' 柳 '
AND LAST_NAME = ' 如风 '
AND CITY LIKE '$CITY'
");
在第一行中,如果用户没有指定一个 CITY 值,那么就会用通配符 % 来代入 CITY 变量,这样搜索时就会把任何的 CITY 值都考虑进去,甚至包括那些 CITY 字段为空的纪录。
但是如果有一些纪录,它的 CITY 字段值是 NULL ,这时问题就出现了。上面的查询是不能够找到这些字段的。问题的一个解决办法可以是这样:
if (!$CITY) { $CITY = "%"; }
$selectresult = mysql_query ("SELECT * FROM dbname
WHERE FIRST_NAME = ' 柳 '
AND LAST_NAME = ' 如风 '
AND (CITY LIKE '$CITY' OR CITY IS NULL)
");
注意在搜索 NULL 时,必须用“ IS ”关键字,而 LIKE 时不会正常工作的。
在最后要提到的是,如果你在加入或者修改一个新的字段之前,数据库中已经有了一些记录了,这时新加入的字段在原来的纪录中的值,可能是 NULL ,也可能为空。这也算是 MySQL 的一个 Bug 吧,所以在这种情况下,使用 SELECT 查询要特别的小心。

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

求推荐1155针的cpu哪个最好当前性能最高的1155针CPU是IntelCorei7-3770K。它拥有4个核心和8个线程,基础频率为3.5GHz,并支持TurboBoost2.0技术,最高可达到3.9GHz。此外,它还搭载了8MB的三级缓存,是一款非常出色的处理器LGA1155针最强的CPUIntel酷睿i73770K。LGA1155接口为二三代酷睿处理器所使用的接口类型,性能最好的为Intel酷睿i73770K,这款处理器参数如下:1.适用类型:台式机;2.CPU系列:酷睿i7;3.CPU

NEARProtocol:可扩展、用户友好的区块链平台NEARProtocol是一个采用分片技术的区块链平台,旨在应对区块链技术在可扩展性、用户友好性和安全性方面面临的挑战。它为开发者提供了一个高效和用户友好的平台,使他们能够轻松构建和部署去中心化应用程序(dApps)。NEARProtocol的设计旨在降低区块链开发的门槛,同时提供高度的效率和安全性。通过采用分片技术,NEARProtocol可以更好地处理大规模交易,并且为用户提供更快速的交易确认时间。总的来说,NEARProtocol旨在为

适用于任何编程语言的资源包括视频课程、笔记以及电子书。在这里,我将列出Python的最佳资源。Python官方文档很多网站都提供Python资源,但还是官方文档效果最好。让我们看看他们提供的资源。Python初学者指南-https://wiki.python.org/moin/BeginnersGuidePython开发人员指南-https://devguide.python.org/免费的Python图书−https://wiki.python.org/moin/PythonBooksPyth

安钛克650w主板线是几pin的安钛克650W电源主板的电源线通常是24pin的,这是主板上最大的电源接口。它的作用是连接主板和电源,为主板和其他系统组件提供电源。此外,安钛克650W电源还可能包含其他类型的电源接口,如CPU8pin、PCIe6+2pin等,用于连接CPU和独立显卡等其他组件。主板走线教程主板走线是指在设计主板时,将各个电子元件之间的电路连接起来的过程。在这个过程中,需要考虑电路的稳定性、信号传输的速度和准确性等因素。根据电路图进行走线时,需注意布局和选择合适的线宽和距离,避免

随着计算机技术的飞速发展,显卡作为计算机的重要组成部分之一,在游戏、图形设计等领域扮演着举足轻重的角色。而显卡接口则是连接显卡和主板的桥梁,影响着显卡的性能和效果。那么,究竟哪种显卡接口效果最好呢?目前市面上主要有PCI、AGP、PCIe这三种常见的显卡接口。其中,PCI接口是早期的标准接口,相对来说已经比较过时了。对于一些老旧的计算机或者使用简单办公需求的

选择电脑现在大部分的用户都会看中散热问题,因此现在的风冷散热器非常的畅销,因为价格实惠性价比也高,但是对于哪个最好大部分用户就不是很明白了,根据现在来看,最好的是瓦尔基里。风冷散热器哪个最好:答:根据现在的天梯图来看,最好的是瓦尔基里的“vk星环GL360”。这款水冷的性能很爆炸,而且价格非常的不错,对于入门的用户来说,肯定不会吃亏。vk星环GL360相关介绍:1、这款水冷的颜值很不错,安装也比较简单,对于新手来说操作起来也是很方便的。2、风扇整体十分的简约,logo还有一个可以转的圆圈,无聊的

电脑配置怎么选择最好随着科技的不断进步,电脑已经成为了我们生活中必不可少的一部分,它不仅仅满足了我们的工作需求,还能为我们带来娱乐和休闲。而在选择电脑时,优秀的配置是十分重要的。本文将为大家介绍选购电脑配置的一些重要因素和技巧。首先,我们需要考虑自己的需求。不同的人用电脑的目的不同,有些人主要用于日常办公、上网浏览,而另一些人可能需要进行高性能的游戏或者专业

哪个网站下载win10最好?现在很多朋友喜欢自己在网上下载系统安装或重装,这就需要一个优秀的下载平台,那么win10系统下载哪个网站好呢,很多小伙伴不知道怎么详细操作,小编下面整理了win10系统下载网站好的介绍,如果你感兴趣的话,跟着小编一起往下看看吧!win10系统下载网站好的介绍答:系统520最好。这里的系统都是安全可靠的,而且安装方法也很简单,适合所有用户使用。1、这里的系统有多个好处。2、首先,保证安全可靠,所有系统都是可以正常安装不报错的。3、其次,安装操作特别简单,都是一键安装系统
