Foxtable(狐表)用户栏目专家坐堂 → [求助]sql语句 值不能为null,参数: key


  共有4641人关注过本帖树形打印复制链接

主题:[求助]sql语句 值不能为null,参数: key

帅哥哟,离线,有人找我吗?
ahui010
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:108 积分:1277 威望:0 精华:0 注册:2018/8/3 10:02:00
[求助]sql语句 值不能为null,参数: key  发帖心情 Post By:2022/2/19 13:05:00 [只看该作者]

我要执行下面的sql语句,提示错误: 值不能为null,参数: key, 要如何修改

下面的代码我将查询词改成
Sele*,是为了能保存到论坛中,测式时请补充改成。

这个查询表语句我不设主键,在foxtable的执行sql窗口中是可以执行的,能看到表格。

Dim sqls As String = "Sele* 记录合计.机构编号, 最后一条记录.学生编号, 最后一条记录.姓名, 最后一条记录.总分,"
             sqls +=  " 记录合计.得分"
             sqls += " FROM  (Sele*  记录.学生编号, 记录.姓名, 记录.记分, 记录.总分"
             sqls +=  " FROM  记录 INNER JOIN"
                                   sql +=  " (Sele*   MAX(id) As id, 学生编号"
                                   sql +=   "  FROM      记录 As 记录_2"
                                  sql +=   "  GROUP BY 学生编号) As tablea ON 记录.id = tablea.id"
             sqls +=  "  WHERE (记录.时间 BETWEEN '1/1/2022' AND '2/19/2022')) AS 最后一条记录 INNER JOIN"
                 sqls +=   "  (Sele*  学生编号, 姓名, 机构编号, SUM(记分) As 得分"
                 sqls +=   "  FROM  记录 As 记录_1"
                 sqls +=   "  WHERE (时间 BETWEEN '1/1/2022' AND '2/20/2022')"
                 sqls +=   "  GROUP BY 学生编号, 姓名, 机构编号) As 记录合计 ON 最后一条记录.学生编号 = 记录合计.学生编号 And " 
            sqls +=  " 记录合计.机构编号 = 6 "
            sqls += "  ORDER BY 最后一条记录.总分 DESC "

       Dim cmd As New SQLCommand
       cmd.C
       cmd.BeginTransaction() '开启事务
       cmd.CommandText = sql
       dt = cmd.ExecuteReader()
       cmd.Commit() '提交事务

[此贴子已经被作者于2022/2/19 13:30:17编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
ahui010
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:108 积分:1277 威望:0 精华:0 注册:2018/8/3 10:02:00
  发帖心情 Post By:2022/2/19 13:31:00 [只看该作者]

已经解决了

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110669 积分:563259 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/2/19 13:59:00 [只看该作者]

如果只是查询,没有必要使用事务。

 回到顶部