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

来源:百度知道 编辑:UC知道 时间:2024/05/26 17:25:16
sql="select * from table1 where user1='"&request.form("names")&"' and userid="request.querystring("id")""

上面这一句中 '"&request.form("names")&"' 表示的是文本字段, "request.querystring("id")" 表示的是自动编号字段,我的疑惑是
双引号已经标示是字符串了,那么&request.form("names")&加上双引号就行了,为什么双引号外还要再加上单引号?request.querystring("id")对应的是自动编号还要加上双引号?

我以前学的是JS,对这点不大明白,请高手不惜赐教。

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

SQL例句:
insert into Users (id,name)values(5,'张三')
其中id列是int类型,不用加上‘’。
而name是 varchar(类似C#中的string)所以要加上‘’。
C#中的字符串与变量的连接:
string Name = "张三";
string say = "hello "+ Name +",Welcome!";
我们替换上句中的第一个字符串和最后一个字符串。
用 insert into Users (id,name,email)values(5,' 替换 hello
用 ') 替换 ,Welcome!
那就是:"insert into Users (id,name)values(5,'"+ Name +"')";
其实语句这样写并不好。
用这样的方式:
int id = 5;
string Name = "张三";
string.Format("insert into Users (id,name)values({0},'{1}');",id,Name);
需记,values()里面的列如果是int就{x},如果是string(varchar)就用'{x}'
x表示索引,从0开始。后面的参数依次代表{}里面的值。这里id就是{0}的值,也是就5。Name就是{1}的值,也就是张三。