急、、、多表查询插入哪错了??
时间:2011-11-26
来源:互联网
+ TextBox4.Text + "','" + RadioButtonList1.SelectedValue + "',MajorId ,FacultuId,'" + TextBox6.Text + "') from Course "
+"selecet Major.MajorId ,Faculty.FacultyId from Major,Faculty where Major.MajorName = '"+DropDownList1.SelectedValue+"' and Faculty.FacultyName='"
+DropDownList2.SelectedValue+"'";
这条语句哪错了???我想根据另外2个表查出来的数据插入到课程表中。。。没学过数据库的孩子伤不起啊。。
作者: CherryFun 发布时间: 2011-11-26
--如果知道每列的记录值,可以: insert into tb values(...) insert into tb(col1,col2,...) values(...) --如果是从其他表筛选数据插入,可以: insert into tb select ... from tb1 where ... insert into tb(col1,col2,...) select ... from ... where ...
作者: AcHerat 发布时间: 2011-11-26
SQL code
--如果知道每列的记录值,可以:
insert into tb values(...)
insert into tb(col1,col2,...) values(...)
--如果是从其他表筛选数据插入,可以:
insert into tb
select ...
from tb1
where ...
insert into tb(col1,col2,...)
sel……
那我要是知道一部分的值呢,另外部分的值要查另外2个表??
作者: CherryFun 发布时间: 2011-11-26
作者: AcHerat 发布时间: 2011-11-26
引用 1 楼 acherat 的回复:
SQL code
--如果知道每列的记录值,可以:
insert into tb values(...)
insert into tb(col1,col2,...) values(...)
--如果是从其他表筛选数据插入,可以:
insert into tb
select ...
from tb1
where ...
……
这种同样用第二种,把你知道的列值用你的参数替代,其他列按表的查询插入那种方式写,大体是:
SQL code
insert into tb(col1,col2,col3,col4,col5) select 'a',10,a.age,a.name,b.mark from tb1 a join tb2 b on a.id = b.aid where ....
作者: AcHerat 发布时间: 2011-11-26
insert into tb1 (id,name) select id,name from tb2
照着如上格式把你的程序拼成的SQL字符串改一下
作者: pengxuan 发布时间: 2011-11-26
引用 2 楼 cherryfun 的回复:
引用 1 楼 acherat 的回复:
SQL code
--如果知道每列的记录值,可以:
insert into tb values(...)
insert into tb(col1,col2,...) values(...)
--如果是从其他表筛选数据插入,可以:
insert into tb
select ..……
sql = @"Insert into Course(CourseId,MajorId,FacultyId) selecet '"+TextBox1.Text+"' Major.MajorId ,Faculty.FacultyId from Major,Faculty where Major.MajorName = '" + DropDownList1.SelectedValue + "' and Faculty.FacultyName='"
+ DropDownList2.SelectedValue + "'";
我改成这样的了。。他还是说我select附近有错啊、、、
作者: CherryFun 发布时间: 2011-11-26
insert into 的格式如下
insert into tb1 (id,name) select id,name from tb2
照着如上格式把你的程序拼成的SQL字符串改一下
sql = @"Insert into Course(CourseId,MajorId,FacultyId) selecet '"+TextBox1.Text+"' Major.MajorId ,Faculty.FacultyId from Major,Faculty where Major.MajorName = '" + DropDownList1.SelectedValue + "' and Faculty.FacultyName='"
+ DropDownList2.SelectedValue + "'";
我这样拼,,,什么错误啊。。。他说我select附近有错。。
作者: CherryFun 发布时间: 2011-11-26
+ DropDownList2.SelectedValue + "'";
你from后的两个表没有关联关系吗?没有的话估计会插入很多重复的数据。
作者: AcHerat 发布时间: 2011-11-26
+ DropDownList2.SelectedValue + "'";
是select,不是selecet
另外,你查询了两个表,两个表之间是什么关联关系,你的查询语句中没有体现出来
作者: pengxuan 发布时间: 2011-11-27
引用 2 楼 cherryfun 的回复:
引用 1 楼 acherat 的回复:
SQL code
--如果知道每列的记录值,可以:
insert into tb values(...)
insert into tb(col1,col2,...) values(...)
--如果是从其他表筛选数据插入,可以:
insert into tb
select ..……
说真的,我们没学过数据库。。什么关联什么的都不懂。。这次是做这个鬼作业要用到数据库。。
我改成这样的 ,可是在数据库里面还是插不进去
代码如下:
SQL code
INSERT INTO Course (CourseId, MajorId, FacultyId) SELECT 12 AS Expr1, Major.MajorId, Faculty.FacultyId FROM Major INNER JOIN Faculty ON Major.FacultyId = Faculty.FacultyId WHERE (Major.MajorName = '数学与计算机学院') AND (Faculty.FacultyName = '软件工程')
作者: CherryFun 发布时间: 2011-11-27
sql = @"Insert into Course(CourseId,MajorId,FacultyId) select '"+TextBox1.Text+"' Major.MajorId ,Faculty.FacultyId from Major,Faculty where Major.MajorName = '" + DropDownList1.SelectedValue + "' and……
代码如下,可是还是插不进去
SQL code
INSERT INTO Course (CourseId, MajorId, FacultyId) SELECT 12 AS Expr1, Major.MajorId, Faculty.FacultyId FROM Major INNER JOIN Faculty ON Major.FacultyId = Faculty.FacultyId WHERE (Major.MajorName = '数学与计算机学院') AND (Faculty.FacultyName = '软件工程')
作者: CherryFun 发布时间: 2011-11-27
作者: pengxuan 发布时间: 2011-11-27
楼主把你的表结构和数据贴出来,还有想要的结果也贴出来
算了 我们下学期学数据库//我就用2条select语句读出那个2内容然后再插入算了。。现在木有时间研究比较高深的数据库了。。
作者: CherryFun 发布时间: 2011-11-27
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28