【发布时间】:2015-02-17 07:22:24
【问题描述】:
我有一个在窗口窗体应用程序中运行的 SQL 语句。 我正在使用 SQL Server 2008 进行开发和测试。这里一切正常。
SqlCommand command1 = new SqlCommand("insert into payment_detail ( " +
"transaction_id, enrolment_id, hkid_1, section_r, " +
"classes, section_fee, assist_amt, additional_assist_amt, " +
"discount_amt, coupon_amt, coupon_amt_no_number, " +
"paid_amt, last_updated_by, last_updated_date) values " +
"(@transaction_id, @enrolment_id, @hkid_1, @section_r, " +
"@classes, @section_fee, (select section_fee - adjusted_section_fee from coursenew where coursecode = @courseCode and section_r = @section_r), @additional_assist_amt, " +
"@discount_amt, @coupon_amt, @coupon_amt_no_number, " +
"@paid_amt, @last_updated_by, GETDATE())"
, myConnection);
但是当移动到另一个使用 SQL Server 2005 的工作站时。 它会提示如下错误
在这种情况下不允许子查询。只允许使用标量表达式。
很抱歉,因为一台计算机只能安装一个版本的 SQL Server。 我无法使用 SQL Server 2005 测试脚本。
请帮忙,谢谢。
下面会列出完整的sql语句
insert into payment_detail ( transaction_id, enrolment_id, hkid_1, section_r, classes, section_fee, assist_amt, additional_assist_amt, discount_amt, coupon_amt, coupon_amt_no_number, paid_amt, last_updated_by, last_updated_date) values (@transaction_id, @enrolment_id, @hkid_1, @section_r, @classes, @section_fee, (select section_fee - adjusted_section_fee from coursenew where coursecode = @courseCode and section_r = @section_r), @additional_assist_amt, @discount_amt, @coupon_amt, @coupon_amt_no_number, @paid_amt, @last_updated_by, GETDATE())"
【问题讨论】:
-
我有点懒,但是如果你编辑你的SQL语句(删除所有的“和,+等,并很好地格式化它),我会看看它。
-
“因为一台计算机只能安装一个版本的 SQL Server”——我不知道你为什么相信这是真的,但事实并非如此。我当前的机器正在运行 3 个不同的 SQL Server 实例,它们都在不同的版本上。目前运行 2008、2012 和 2014 年,但我一直在运行这样的混合,早在 2000、2005 和 2008 年安装。
-
操作。你的意思是直接安装不同的版本还是需要一些设置才能安装?
标签: sql sql-server sql-server-2008 sql-server-2005