📄 d980222.gb_
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<TITLE>资料库篇: Data1.RecordSource = "Select * From House Where room = 'Child's room'" 错在哪里?</TITLE>
<META NAME="GENERATOR" CONTENT="Mozilla/3.01Gold (Win95; I) [Netscape]">
<META NAME="Author" CONTENT="KJ Wang">
</HEAD>
<BODY TEXT="#202020" BGCOLOR="#FFFFFF" LINK="#FF0000" VLINK="#000080" ALINK="#FF0000">
<H2 ALIGN=CENTER><A HREF="vbdb.htm">VB5 与资料库程式设计</A></H2>
<H3 ALIGN=CENTER><A HREF="../vbweeks.htm">每周一问</A>: 挑战您的 VB 功力 (资料库篇, 98/02/22)</H3>
<H2>
<HR WIDTH="100%"></H2>
<CENTER><TABLE>
<TR VALIGN=TOP>
<TD NOWRAP>Q:</TD>
<TD>有一 Select SQL 如下:
<UL>
<P>Select * From House Where room = 'Child's room' (Child's 含有单引号)</P>
</UL>
<P>想将此一 Select 指令设定给 Data1.RecordSource, 程式该怎麼写?</P>
<UL>
<P>Data1.RecordSource = "Select * From House Where room = <FONT COLOR="#FF0000">'Child's
room'</FONT>"<BR>
<FONT COLOR="#008000">(这麼写是错误的)</FONT></P>
</UL>
</TD>
</TR>
<TR VALIGN=TOP>
<TD>A:</TD>
<TD>在 SQL 里面, 用来框住字串的符号除了<FONT COLOR="#FF0000">单引号</FONT>之外,
<FONT COLOR="#FF0000">双引号</FONT>也是正确的,举例来说以下两个 SQL 指令的意义是相同的:
<UL>
<P>Select * From Stock Where ID='台积电'</P>
<P>Select * From Stock Where ID="台积电"</P>
</UL>
<P>但由於 VB 的字串是以双引号框住的, 所以我们习惯以单引号来框住 SQL 的字串,例如:</P>
<UL>
<P>Data1.RecordSource = <FONT COLOR="#0000FF">"</FONT>Select * From
Stock Where ID=<FONT COLOR="#FF0000">'</FONT>台积电<FONT COLOR="#FF0000">'</FONT><FONT COLOR="#0000FF">"</FONT></P>
</UL>
<P>但是在本问题中, 由於 Child's 含有单引号, 所以 'Child's room' 反而會造成资料库的混淆,
因此应该写成「"Child's room"」, 然後再放到 VB 的双引号里面,
直接反应的写法是:</P>
<UL>
<P>Data1.RecordSource = "Select * From House Where room = <FONT COLOR="#FF0000">"</FONT>Child's
room<FONT COLOR="#FF0000">"</FONT>"<BR>
<FONT COLOR="#008000">(这还是错误的)</FONT></P>
</UL>
<P>但由於双引号( "" )之中有含有双引号("), 所以正确的写法应该修正为:</P>
<UL>
<P><FONT COLOR="#0000FF">Data1.RecordSource = "Select * From House
Where room = </FONT><FONT COLOR="#FF0000">""</FONT><FONT COLOR="#0000FF">Child's
room</FONT><FONT COLOR="#FF0000">""</FONT><FONT COLOR="#0000FF">"<BR>
</FONT><FONT COLOR="#008000">(终於正确了)</FONT></P>
</UL>
</TD>
</TR>
</TABLE></CENTER>
<P>
<HR WIDTH="100%"></P>
</BODY>
</HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -