当前位置:首页 » 编程语言 » sql查询语句表名要加引号吗
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql查询语句表名要加引号吗

发布时间: 2022-09-01 21:38:11

1. sql中什么时候需要用双引号,什么时候用单引号

这就要从双引号和单引号的作用讲起:

1,双引号里面的字段会经过编译器解释然后再当作HTML代码输出,但是单引号里面的不需要解释,直接输出。例如:

$abc='I love u';
echo $abc //结果是:I love u
echo '$abc' //结果是:$abc
echo "$abc" //结果是:I love u

2,所以在对数据库里面的SQL语句赋值的时候也要用在双引号里面SQL="select a,b,c from ..."

3,但是SQL语句中会有单引号把字段名引出来

例如:select * from table where user='abc';

这里的SQL语句可以直接写成SQL="select * from table where user='abc'"

4,但是如果象下面:

$user='abc';
SQL1="select * from table where user=' ".$user." ' ";对比一下
SQL2="select * from table where user=' abc ' "

5,我把单引号和双引号之间多加了点空格,希望你能看的清楚一点。

也就是把'abc' 替换为 '".$user."'都是在一个单引号里面的。只是把整个SQL字符串分割了。

SQL1可以分解为以下3个部分

1:"select * from table where user=' "
2:$user
3:" ' "

字符串之间用 . 来连接。

2. sql语句什么时候用双引号或者单引号

估计你问的问题是在程序里写代码的时候有双引号和单引号!~
双引号表示
库里的字段是数值型的!~
而单引号是表示字符型的!~
select
*
from
table
where
a="text1.text"
and
b='"
text2.text"'"

3. sql语句什么时候加引号

明显不对。
select...是sql语句。
$_post...是php语句。

如果你写的是sql语句,那就不能有$_post[]
如果你写的是php语句,那就应该把其中的sql语句部分作为一般的字符串处理:
$sql = "select * from a where `name`=";
$sql .= $_post['name'];
然后再用php的sql library的function来运行这个字符串$sql

在纯sql语句中,如 爱老婆 所说,字段名加`或者什么也不加;字符类型的数值加单引号。
在php语句中,由于sql部分被认为是字符串,所以要加单/双引号。但因为sql语句中,本身可能包含单引号,所以为了分辨,必须用双引号。
而$_post['name']的意思是,php在载入页面的时候,把所有用html的post方法得到的变量都放入了一个叫_post的数组中。$_post['name']就是调用_post数组中,名称为字符串name的那个变量的值。

4. sql语句中什么时候加双引号什么时候不加双引号查询中加不加

关键字做列名时需要加双引号,其他时候可以不加,一般加了双引号则大小写敏感

5. SQL查询语句中单引号和双引号的问题

是这样的在SQL里字符型只能用单引号,双引号是引用的链接数据库的程序里的,如果要用双引号,在SQL里要加个',要是要加单引号也一样前面加个'所以就变成''',''了

6. 我的sql2005在查询时总是需要在表名上加引号

网络知道就是被楼上的这种垃圾给搞坏的。。。找点书COPY过来有什么意思。。。。。。。
-----------------------------
要防止SQL注入其实不难,你知道原理就可以了。
所有的SQL注入都是从用户的输入开始的。如果你对所有用户输入进行了判定和过滤,就可以防止SQL注入了。用户输入有好几种,我就说说常见的吧。
文本框、地址栏里***.asp?中?号后面的id=1之类的、单选框等等。一般SQL注入都用地址栏里的。。。。如果要说怎么注入我想我就和上面的这位“仁兄”一样的了。
你只要知道解决对吗?
对于所有从上一页传递过来的参数,包括request.form 、request.qurrystring等等进行过滤和修改。如最常的***.asp?id=123 ,我们的ID只是用来对应从select 里的ID,而这ID一般对应的是一个数据项的唯一值,而且是数字型的。这样,我们只需把ID的值进行判定,就可以了。vbs默认的isnumeric是不行的,自己写一个is_numeric更好,对传过来的参数进行判定,OK,搞定。算法上的话,自己想想,很容易了。但是真正要做到完美的话,还有很多要计算的。比如传递过来的参数的长度,类型等等,都要进行判定。还有一种网上常见的判定,就是判定传递参数的那一页(即上一页),如果是正常页面传弟过来就通过,否则反之。也有对' or 等等进行过滤的,自己衡量就可以了。注意一点就是了,不能用上一页的某一个不可见request.form("*")进行判定,因为用户完全可以用模拟的形式“复制”一个和上一页完全一样的页面来递交参数。这样,这招就没用了。。。。

OK就说这么多,还不明白的话,找我。[email protected]

7. SQL中什么情况下用引号

查询条件为文本格式时要求用引号,如varchar、char类型等,反之数值格式不要加引号,如bit、double、float、int类型等。举个例子slecet * from A where id='1'slecet * from A where id=1这两个的区别在于第一条id是字符型的,第二条id为数值型的

8. sql建表语句中表名和类型加双引号什么意思

loginname
指的就是一个变量名<与数据库里的字段匹配>,
而'"+login1.username+"'
就是你输入的值,
假如只有单引号,系统会认为变量就是login1.username,
而这个值是固定的,然而我们需要的是一个变量,
所以就得再加一个双引号,
至于
‘+’
就是连接字符串的意思、、、