如何在SQL语句中加引号的问题
来源:互联网 发布:微商做聊天记录的软件 编辑:程序博客网 时间:2024/06/10 13:06
如何在SQL语句中加引号的问题
一个数据表,结构如下
ALTER PROCEDURE GETTEACHER
@a varchar (50),
@b int,
@c varchar(100) --通过DropDownList获取
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
declare @weekday varchar (50); --星期几
declare @coursenum int; --第几节(eg.一二节为1,三四节为2)
declare @coursename varchar(100);--课程名称
set @weekday=@a
set @coursenum=@b
set @coursename= @c
/*
SELECT teacher.TeacherName, teacher.ID
FROM classCourse INNER JOIN
teacher ON classCourse.TeacherID = teacher.ID INNER JOIN
curriculumSchedule ON classCourse.ClassID = curriculumSchedule.ClassID AND
classCourse.ID =curriculumSchedule.Monday INNER JOIN
course ON classCourse.CourseID = course.ID
WHERE course.ID = @c and curriculumSchedule.CourseNum = @b
*/
declare @sql varchar(5000);--sql
--教授@c(课程名称)的教师ID是否 在@a(eg.星期)@b(eg.上午一二节)有课的教师的ID列表中
set @sql=
--@a(eg.星期)@b(eg.上午一二节)有课的教师的ID列表中
'SELECT teacher.TeacherName, teacher.ID'
+' FROM classCourse INNER JOIN'
+' teacher ON classCourse.TeacherID = teacher.ID INNER JOIN'
+' curriculumSchedule ON classCourse.ClassID = curriculumSchedule.ClassID AND'
+' classCourse.ID = curriculumSchedule.'+@a+' INNER JOIN'
+' course ON classCourse.CourseID = course.ID'
+' WHERE curriculumSchedule.CourseNum ='+ str(@b)
--课程courseid
+' AND course.ID =( SELECT course.ID FROM course '
+' WHERE (course.CourseName ='+@c+') ) '
--根据课程名称查询该课程的教师
+' AND classCourse.TeacherID = (SELECT DISTINCT classCourse.TeacherID '
+' FROM classCourse INNER JOIN '
+' course ON classCourse.CourseID = course.ID '
+' WHERE (course.CourseName ='+@c+') )'
EXEC (@sql);
END
实用存储过程的单步执行,发现字符串没有加引号
问题就在于,在传入参数的时候是没有引号的造成的
解决方法:
加两个单引号
--课程courseid
+' AND course.ID =( SELECT course.ID FROM course '
+' WHERE (course.CourseName ='''+@c+''') ) '
--根据课程名称查询该课程的教师
+' AND classCourse.TeacherID = (SELECT DISTINCT classCourse.TeacherID '
+' FROM classCourse INNER JOIN '
+' course ON classCourse.CourseID = course.ID '
+' WHERE (course.CourseName ='''+@c+''') )'
- 如何在SQL语句中加引号的问题
- sql语句中出现字符型变量的引号问题
- 应对sql语句中出现的引号问题
- php中使用sql语句的引号问题
- SQL语句中引号的使用
- sql语句中where的引号用法
- asp中的引号规则,在asp中如何书写sql语句
- 【转】ACCESS中如何在SQL语句的WHERE条件中加日期条件
- java转义字符如何在字符串中加引号
- SQL语句中单引号、双引号和反引号的区分
- SQL语句中引号(')、quotedstr()、('')、format()在SQL语句中的用法
- 总结一下SQL语句中引号(')、quotedstr()、('')、format()在SQL语句中的用法
- 总结一下SQL语句中引号(')、quotedstr()、('')、format()在SQL语句中的用法
- 关于sql加反引号与不加反引号的理解
- 总结一下SQL语句中引号
- js引号多层嵌套的问题 加 \
- 如何去掉powerdesign生成的脚本加在表名和列名两端的引号
- 关于sql server中,建视图的语句中不能加order by的问题
- 互联网第三波渐呈汹涌 ponvi.com
- PL/SQL课程一、 基本查询与排序
- Hibernate的批量删除的效率分析
- 敢为型的性格--锻炼大智慧大境界
- Debian下系统时间比正常时间快8小时的问题
- 如何在SQL语句中加引号的问题
- Build SWIG with Microsoft Visual C++ 2008 Express
- 使用JDBC和Hibernate来写入Blob型数据到Oracle中
- 08年新的开始
- 第五課 言葉
- valgrind 内存分析利器
- 天天妈妈反思!
- 对数据库事务处理代码通常写法的一点改进
- Linux五筆輸入法fcitx安裝