服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Sql Server - SQL 语句中单引号、双引号的用法

SQL 语句中单引号、双引号的用法

2023-05-07 07:12未知服务器之家 Sql Server

下面我们就分别讲述,虽然说的是Insert语句, 但是Select、Update、Delete语句都是一样的。 假如有下述表格 mytabe 字段1 username 字符串型(姓名) 字段2 age 数字型(年龄) 字段3 birthday 日期型(生日) 字段4 marry 布尔型(是否结婚,结

下面我们就分别讲述,虽然说的是Insert语句, 但是Select、Update、Delete语句都是一样的。

SQL 语句中单引号、双引号的用法

假如有下述表格

mytabe
字段1 username 字符串型(姓名)
字段2 age 数字型(年龄)
字段3 birthday 日期型(生日)
字段4 marry 布尔型(是否结婚,结婚为True,未结婚为False)
字段5 leixing 字符串型(类型)

插入字符串型

假如要插入一个名为张红的人,因为是字符串,所以Insert语句中名字两边要加单撇号,数值型可以不加单引号如:

strsql="Insert into mytable(username) values('张红')"

如果现在姓名是一个变量thename,则写成

strsql="Insert into mytable(username) values('" & thename & "')"

说明:&改为+号也可以吧,字符串连接

这里

Insert into mytable(username) values('是张红前面的部分,thename是字符串变量,')

是张红后面的部分。

将thename变量替换成张红,再用&将三段连接起来,就变成了

strsql="Insert into mytable(username) values(‘张红')”

如果要插入两个字段,如姓名为“张红”,类型为“学生”

strsql="Insert into mytable(username,leixing) values('张红','学生')"

如果现在姓名是一个变量thename,类型也是一个变量thetype,则写成:

strsql=”Insert into mytable(username,leixing) values(‘” & thename &','& thetype &')”

和第一个例子一样,将thename和thetype替换后,再用连接符,就连接成和上面一样的字符串了。

插入数字型

假如插入一个年龄为12的记录,要注意数字不用加单撇号

strsql=“Insert into mytable(age) values(12)

如果现在年龄是一个变量theage,则为:

strsql=“Insert into mytable(age) values(& theage &)

这里

Insert into mytable(age) values

(是12前面的部分,theage是年龄变量,)是12后面部分。

将theage替换,再用&连接符将三部分连接起来,就变为了和上面一样的字符。

插入日期型

日期型和字符串型类似,但是要将单撇号替换为#号。(不过,access数据库中用单撇号也可以)

strsql=“Insert into mytable(birthday) values(#1980-10-1#)

如果换成日期变量thedate

strsql=“Insert into mytable(birthday) values(#” & thedate & “#)

插入布尔型

布尔型和数字型类似:只不过只有两个值 True和False, 如:

strsql=“Insert into mytable(marry) values(True)

如果换成布尔变量themarry

strsql=“Insert into mytable(birthday) values(& themarry&)

综合示例

插入一个姓名为张红,年龄为12的记录

strsql=“Insert into mytable(username,age) values(‘张红',12)”

仔细注意上式:因为姓名是字符串,所以张红两边加了单撇号;年龄是数字,所以没有加单撇号。如果换成字符串变量thename和数字变量theage,则变为:

strsql=“Insert into mytable(username,age) values(‘” & thename &',” & theage & “)”

注意上式,总之,替换变量,再连接后要完成和上边一样的字符串。

小窍门

要把下面的语句题换成变量的写法:

strsql=“Insert into mytable(username) values(‘张红')”

第一步:先把张红抹去,在原位置 加 两个引号

strsql=“Insert into mytable(username) values(‘”   “')”

第二步:在中间添加两个连接符&

strsql=“Insert into mytable(username) values(‘” & &')”

第三步:把变量写在两个连接符之间

strsql=“Insert into mytable(username) values(‘” & thename &')” -

我们在写SQL查询的时候还是不厌其烦的加上单引号吧,似乎那没有坏处。因为对于主键为字符串类型的查询语句,加不加单引号的性能是相差百倍一上的。

延伸 · 阅读

精彩推荐