社区
MS-SQL Server
帖子详情
怪脑袋,怪想法,谁能帮我解释 select '单引号'=1,'人间正道'=2, "双引号"=2 ,'莫名其妙', 't',12 这个select语句的含义。
msdner
2005-05-03 03:27:11
MS SQL SERVER环境。
...全文
270
14
打赏
收藏
怪脑袋,怪想法,谁能帮我解释 select '单引号'=1,'人间正道'=2, "双引号"=2 ,'莫名其妙', 't',12 这个select语句的含义。
MS SQL SERVER环境。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
msdner
2005-05-04
打赏
举报
回复
晕,竟然没有给chengpei_chen(给点阳光就灿烂)分数,眼花了,很抱歉。谢谢你的支持。
sonique
2005-05-04
打赏
举报
回复
支持楼主的钻研精神,我当初就是写出一些测试代码学习coding的
msdner
2005-05-04
打赏
举报
回复
我说错了,ANSI SQL里是没有字符串、变量这些概念了。
列名 的别名也是用双引号括起来的。
不知道谁有ANSI SQL-99 文档?
msdner
2005-05-03
打赏
举报
回复
TO 楼上:
as 在语法里是可以去掉的。
cxmcxm
2005-05-03
打赏
举报
回复
select '单引号'=1,'人间正道'=2, "双引号"=2 ,'莫名其妙', 't',12
与
select 1 as 单引号,2 as 人间正道, 2 as 双引号 ,'莫名其妙', 't',12 是一样的
chengpei_chen
2005-05-03
打赏
举报
回复
分析的不错,up
ianok
2005-05-03
打赏
举报
回复
语法
SELECT [ ALL | DISTINCT ]
[ TOP n [ PERCENT ] [ WITH TIES ] ]
< select_list >
< select_list > ::=
{ *
| { table_name | view_name | table_alias }.*
| { column_name | expression | IDENTITYCOL | ROWGUIDCOL }
[ [ AS ] column_alias ]
| column_alias = expression
} [ ,...n ]
msdner
2005-05-03
打赏
举报
回复
因此,'单引号'在这里是一个字符串常量,作为列名。
msdner
2005-05-03
打赏
举报
回复
看来只能这样解释了。
基于这样一个事实:
select '单引号'=1 --''改为""效果一样
等价于
select 1 '单引号' --''改为""效果一样
以下作一个小结:
select在用于输出时,是以记录的形式给出的,也就说包含列名和值。
在ANSI SQL里面,字符串作为列名是用单引号引起来的。而“为保持与现有应用程序的兼容性,SQL Server 并不完全强制该规则。如果字符串没有超过标识符的长度,则该字符串可包含在双引号内。但不建议这样做。”--引号部份摘自SQL SERVER联机丛书。以上讨论是在QUOTED_IDENTIFIER 为 ON 的情况下。
msdner
2005-05-03
打赏
举报
回复
谢谢楼上两位!
我是想弄明白select的用法,所以我就写了这一句想探出个究竟。。。
按我的理解,select有几个用法:
一)用于查询记录的。格式是:
select...
from...
[...]
select和from这两个是必须的,一个也不能少。
二)用于赋值。格式是:
select @test=some_value
在这里select相当于set。不过,select功能更强,可以一次给多个变量赋值。
三)用于打印。格式
select @test
相当于print。同样,select可以指定列名,如select @test test。
但是,以下就是我不能解释的:
select '单引号'=1
这个是什么意思?等号在这里的作用,是赋值吗?'单引号'在这里是变量吗?不是不能以分隔符作为变量名吗?它和以下这一句的区别?
select '单引号'
还有:
select '单引号' test
子陌红尘
2005-05-03
打赏
举报
回复
select '单引号'=1,'人间正道'=2, "双引号"=2 ,'莫名其妙', 't',12
就是返回如下一个结果集:
列名: 单引号 人间正道 双引号 无列名 无列名 无列名
值 : 2 2 2 莫名其妙 t 12
Well
2005-05-03
打赏
举报
回复
結果是知道啊
那又有什麼意思呢
還真的 不知道
沒有完整的代碼不知道
Well
2005-05-03
打赏
举报
回复
select '单引号'=1,'人间正道'=2, "双引号"=2 ,'莫名其妙', 't',12 这个select语句的含义。
這個有什麼意義嗎
樓主這樣說我真的不知道是什麼意思
又沒有上下文。
要是有整個代碼全部貼出來看一個也許會知道
chiwei
2005-05-03
打赏
举报
回复
你把语句考到SQL查询分析器里面就知道了
select '单引号'=1,'人间正道'=2, "双引号"=2 ,'莫名其妙', 't',12
结果如下:
单引号 人间正道 双引号
----------- ----------- ----------- -------- ---- -----------
1 2 2 莫名其妙 t 12
sql
语句
单引号
与
双引号
这些天都在打sqli-labs靶场来练手,发现了一个问题,如果是字符型注入时,比如是’ ’
单引号
闭合的,我传入
双引号
进行测试时,发现页面其实是可以正常显示的,说明sql
语句
是正常执行的。接下来举个例子 $id 为用户...
mysql
单引号
和
双引号
的用法
这就要从
双引号
和
单引号
的作用讲起:
双引号
里面的字段会经过编译器
解释
然后再当作HTML代码输出,但是
单引号
里面的不需要
解释
,直接输出。例如: $abc='I love u'; echo $abc //结果是:I love u echo '$abc' //...
PHP
单引号
与
双引号
的区别(总结)
看好多代码有时候用
单引号
或
双引号
实现包含字符串的内容,其实简单个概括下
双引号
中的变量可以解析,
单引号
就是绝对的字符串。 1、定义字符串 在PHP中,字符串的定义可以使用
单引号
,也可以使用
双引号
。...
处理
Select
语句
中的
单引号
FUNCTION CheckString (s) as String pos = InStr(s, "'") ...s = Mid(s, 1, pos) & "'" & Mid(s, pos + 1) pos = InStr(pos + 2, s, "'") Wend CheckString="'" & s & "'" END FUNCTION 以后在动态生成
oracle数据库--Oracle
双引号
和
单引号
的区别小结
一般情况下,我们使用
单引号
居多但在字符集不一致的时候,
双引号
和
单引号
区别还是很大的 而且,使用ODBC桥导入外部数据的时候,表名是带
双引号
的先看个案例: 以前遇到过一个这样的问题一个朋...
MS-SQL Server
34,838
社区成员
254,632
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章