Foxtable(狐表)用户栏目专家坐堂 → 一运行就出错


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

主题:一运行就出错

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


加好友 发短信
等级:幼狐 帖子:133 积分:1095 威望:0 精华:0 注册:2018/8/23 14:16:00
一运行就出错  发帖心情 Post By:2020/9/16 10:41:00 [只看该作者]

Dim ck As DataTable
Dim cmd As New SqlCommand()
cmd.C
Try
    cmd.BeginTransaction()
    cmd.CommandText = "S elect * From Dlyndx"
    ck = cmd.ExecuteReader(True) '加上参数True,生成的DataTable可修改保存
    Dim dr As DataRow = ck.AddNew() '增加一个订单
    dr("DATE") = "2020-09-15"
    dr("btypeid") = "0002500044"
    dr("btypeid") = "00010"
    dr("ktypeid") = "00006"
    dr("SUMMARY") = "9.12燕瑞出武义2件(金额:638*0.44=280.72元.直调出库单:DO-2201-200912-0935)"
    dr("TOTAL") = "280.72"
    ck.Save()
    If ck.HasChanges Then '如果任何一个表保存失败
        cmd.Rollback()  '则回滚事务
    Else
        cmd.Commit()  '否则提交事务
    End If
Catch ex As Exception  '如果出错
    cmd.Rollback()  '则回滚事务
    MessageBox.Show(ex.Message, "错误",MessageBoxButtons.OK,MessageBoxIcon.Error)
End Try

 

 

 

运行出错


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


加好友 发短信
等级:超级版主 帖子:57813 积分:293014 威望:0 精华:8 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/9/16 10:42:00 [只看该作者]

提示什么错误?

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


加好友 发短信
等级:幼狐 帖子:133 积分:1095 威望:0 精华:0 注册:2018/8/23 14:16:00
  发帖心情 Post By:2020/9/16 10:52:00 [只看该作者]

以下是引用有点蓝在2020/9/16 10:42:00的发言:
提示什么错误?
对于不返回任何键列信息的SelectCommand,不支持UpdateCommand的动态SQL生成。


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


加好友 发短信
等级:超级版主 帖子:57813 积分:293014 威望:0 精华:8 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/9/16 11:02:00 [只看该作者]

Dlyndx这个表没有主键:http://www.foxtable.com/webhelp/topics/1807.htm

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


加好友 发短信
等级:幼狐 帖子:133 积分:1095 威望:0 精华:0 注册:2018/8/23 14:16:00
  发帖心情 Post By:2020/9/16 16:00:00 [只看该作者]

以下是引用有点蓝在2020/9/16 11:02:00的发言:
Dlyndx这个表没有主键:http://www.foxtable.com/webhelp/topics/1807.htm

我查询了一下,确实这个表格没有设置主键。我使用的管家婆,如果给表格设置了主键,会不会影响软件。这个问题要怎么验证


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


加好友 发短信
等级:超级版主 帖子:57813 积分:293014 威望:0 精华:8 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/9/16 16:11:00 [只看该作者]

别人的数据库我没有办法判断是否有影响,您咨询管家婆吧

或者换种方式,不要使用datatable,直接使用sql插入数据:http://www.foxtable.com/webhelp/topics/3266.htm

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


加好友 发短信
等级:幼狐 帖子:133 积分:1095 威望:0 精华:0 注册:2018/8/23 14:16:00
  发帖心情 Post By:2020/9/16 18:01:00 [只看该作者]

以下是引用有点蓝在2020/9/16 16:11:00的发言:
别人的数据库我没有办法判断是否有影响,您咨询管家婆吧

或者换种方式,不要使用datatable,直接使用sql插入数据:http://www.foxtable.com/webhelp/topics/3266.htm

Dim cmd As new  SQLCommand
cmd.C
cmd.CommandText = "Insert Into Dlyndx (DATE,btypeid,etypeid,ktypeid,SUMMARY,TOTAL) Values(?,?,?,?,?,?)"
cmd.Parameters.Add("@DATE","01")
cmd.Parameters.Add("@btypeid",Date.Today)
cmd.Parameters.Add("@etypeid",100)
cmd.Parameters.Add("@ktypeid",100)
cmd.Parameters.Add("@SUMMARY",100)
cmd.Parameters.Add("@TOTAL",100)
cmd.ExecuteNonQuery

 

执行毫无反应


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


加好友 发短信
等级:超级版主 帖子:57813 积分:293014 威望:0 精华:8 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/9/17 8:35:00 [只看该作者]

确定列名叫DATE的不是日期?叫btypeid的才是日期?

cmd.CommandText = "Insert Into Dlyndx ([DATE],btypeid,etypeid,ktypeid,[SUMMARY],[TOTAL]) Values(?,?,?,?,?,?)"

sql里的列名都加上中括号,避免和关键字冲突

 回到顶部