• 主页
  • 招聘
  • 语言基础/算法/系统设计
  • 数据库相关
  • 图形处理/多媒体
  • 网络通信/分布式开发
  • VCL组件开发及应用
  • Windows SDK/API

很简单的问题:'的使用?

落伍的小农 2005-03-24 03:46:05
ADOQuery1.SQL.text:='select course_id from course_dsp where course_title='''+s+'''';
里面这么多的'应该怎么理解,又是什么意思呀?
...全文
89 点赞 收藏 13
写回复
13 条回复
落伍的小农 2005年03月25日
楼上DELPHI也可以用char(39),我都在用它!
“由于单引号(')在Delphi语言中作为字符串的边界,即用两个单引号括起来的部分作为字符串处理,因此当需要在字符串中使用单引号时就需要使用转义序列符(也是单引号)。”
C++中的转义字符是'\',照你说DELPHI中的回车键(#13#10)都可以用'n表示不是\n表示咯?应该不行吧!
回复 点赞
todouwang 2005年03月25日
由上面可知,在sql中出现的''''实际就是'
不过好象听说'''也可以表示'的
回复 点赞
todouwang 2005年03月25日
由于''表示字符类型,
当程序中出现了'时,
要加一个'表示转义,
然后再用''括起来,有本书上是这么写的...
回复 点赞
ron_xin 2005年03月25日
晕倒...写错了...
回复 点赞
godlessme 2005年03月24日
#39是delphi的用法,c++中是用char(39)。
回复 点赞
chogo 2005年03月24日
回复人: qbl007() ( ) 信誉:100 2005-03-24 18:08:00 得分: 0


'select course_id from course_dsp where course_title='''在编译时为:
select course_id from course_dsp where course_title=''

''''在编译时为:''

合起来为:
select course_id from course_dsp where course_title = ''s''


-----------------------------------------------------------------
由于单引号(')在Delphi语言中作为字符串的边界,即用两个单引号括起来的部分作为字符串处理,因此当需要在字符串中使用单引号时就需要使用转义序列符(也是单引号)。因此DELPHI的编译器把''当作字符串中的'处理。
因此
ADOQuery1.SQL.text:='select course_id from course_dsp where course_title='''+s+'''';
这句话实际上就是让ADOQuery1执行
select course_id from course_dsp where course_title = 's'
这个SQL语句
回复 点赞
chogo 2005年03月24日
#39:取ASCII为39的字符
回复 点赞
kencharles 2005年03月24日
ron_xin(星雨) ( ) 你的怎么不行呀?
[Error] Unit1.pas(58): Undeclared identifier: 'Quoteestr'


^_^,是因为他写错了单词 应该是Quotedstr。
回复 点赞
落伍的小农 2005年03月24日
ron_xin(星雨) ( ) 你的怎么不行呀?
[Error] Unit1.pas(58): Undeclared identifier: 'Quoteestr'
回复 点赞
落伍的小农 2005年03月24日
试了下,明白了在''中要表示一个',就是''''了。
我以前不知道这样,都用char(39),跟cyblueboy83(爱情白痴—电脑迷)差不多。
对了,#39中的#表示什么呀?好象C++没用过。
回复 点赞
皮皮猪头 2005年03月24日
哈哈,我喜欢这样子的#39代表一个单引号,这样不容易出错,楼主不妨试试
ADOQuery1.SQL.text:='select course_id from course_dsp where course_title=' +
#39+ s + #39

回复 点赞
ron_xin 2005年03月24日
这个引号理解了就很容易,不理解就是很容易写多或写少了....建议引号里面的内容用Quoteestr,我也是刚学到的...以前才能是在算单引号...晕....
ADOQuery1.SQL.text:='select course_id from course_dsp where course_title=+Quoteestr(S);
回复 点赞
qbl007 2005年03月24日
'select course_id from course_dsp where course_title='''在编译时为:
select course_id from course_dsp where course_title=''

''''在编译时为:''

合起来为:
select course_id from course_dsp where course_title = ''s''
回复 点赞
发动态
发帖子
Delphi
创建于2007-08-02

1478

社区成员

26.2w+

社区内容

Delphi 开发及应用
社区公告
暂无公告