关闭

机房注册窗体之错误一实时错误'-2147217873(80040e2f)

497人阅读 评论(16) 收藏 举报
分类:

             

         是的,错误又来了,你没看错,其实今天写的这篇博客还有一段小小的曲折心理斗争,因为这个注册窗体出现了这个错误,高兴的是自己也是可以解决问题的,但是纠结的是自己到底要不要将这个错误写出来呢?其实自己内心最真实的想法是——一万个不想写,加上这个错误已经有人写过了,所以就更不想写了。BUT转念一想,这不就是学习的乐趣所在吗——痛并快乐着!哈哈哈!

        当然之所以决定写这篇博客还是因为自己应当要有一颗one for all  , all  for one的心,自己怎么就知道自己写的博客就一定没有用处呢?说不定自己的理解又可以给他人带来一个新的理解呢,谁知道呢。所以我还是写吧!

              

         第一个错误是这个:实时错误'-2147217873(80040e2f)具体的如下图所示:




      出现这个问题是在自己在注册窗体的信息都填写好以后单击存盘的时候所出现的错误,而出现这个问题的原因就是因为我们的注册窗体所对应的数据表中的数据类型我们所设置的是不允许有NULL值。所以当我们点击存盘时因为有的值是空的所以与所设置的类型有冲突,因此就报错了。

       解决方法很简单,直接打开数据库——找到所对应的student_info表——然后找到所对应的列——右击——修改——找到允许NULL值并将其改为这样就可以了,当然如果不知道到底是要改某一具体列的属性,咱可以将所有列的都改成允许NULL。这样它就老实了。


        话说不要高兴的太早了,虽然按照上面的步骤可以将问题解决,但是咱们当咱们注册成功了以后,单击打开student_info 表进行查看的时候发现在最后几列里出现了好几个NULL,虽然不影响操作吧,但是这个看起来还是和上面的有点格格不入的感觉。所以为了不显得太过于有个性咱还是低调点,跟着主流走吧。在解决前咱还是看看这个比较有个性的行到底是个啥样的吧。诺!就长下面最后一行这个样子:




        看起来是不是很有个性,放心我们是会解决的,俗话说的好兵来将挡水来土掩嘛,下面就让我们一起来解决,具体操作如下:这个在注册窗体没有直接的显示,只是通过代码直接来实现首先让我们来看看操作前的代码是什么样的


 mrc.AddNew
               mrc.Fields(0) = Trim(txtCardID.Text)
               mrc.Fields(1) = Trim(txtRecharge.Text)
               mrc.Fields(2) = Trim(txtSID.Text)
               mrc.Fields(3) = Trim(txtName.Text)
               mrc.Fields(4) = Trim(txtComboSex.Text)
               mrc.Fields(5) = Trim(txtDepartment.Text)
               mrc.Fields(6) = Trim(txtGrade.Text)
               mrc.Fields(7) = Trim(TxtClass.Text)
               mrc.Fields(8) = Trim(txtComboState.Text)
               mrc.Fields(9) = Trim(txtMoney.Text)
               mrc.Fields(10) = Trim(txtNote.Text)
               mrc.Fields(11) = Trim(txtComboType.Text)
               
               mrc.Update

现在让我们来看看优化了以后的结果是什么代码部分是什么样的


mrc.AddNew
               mrc.Fields(0) = Trim(txtCardID.Text)                                '今天才知道原来mrc.Fields(0)中的数字就是所在表的具体列,如mrc.Fields(0)表示将数据存入student_info表的第0列中
               mrc.Fields(1) = Trim(txtRecharge.Text)
               mrc.Fields(2) = Trim(txtSID.Text)
               mrc.Fields(3) = Trim(txtName.Text)
               mrc.Fields(4) = Trim(txtComboSex.Text)
               mrc.Fields(5) = Trim(txtDepartment.Text)
               mrc.Fields(6) = Trim(txtGrade.Text)
               mrc.Fields(7) = Trim(TxtClass.Text)
               mrc.Fields(8) = Trim(txtComboState.Text)
               mrc.Fields(9) = Trim(txtMoney.Text)
               mrc.Fields(10) = Trim(txtNote.Text)
               mrc.Fields(11) = Trim(txtComboType.Text)
            
                mrc.Fields(12) = Date                                        '以下三行在窗体上没有显现,但是是对数据库中的所对应的列当内容空时让其不显示NULL
               mrc.Fields(13) = Time
               mrc.Fields(14) = Trim(txtComboType.Text)


         没错就是加了最后三句代码就解决了问题当然这里还有一个小插曲,至于是什么大家可以试试,因为会有惊喜的。

         总之今天这个算不上分享的分享希望还是可以帮到您。理解有偏颇的地方热忱的欢迎大家指正大家一起讨论,一起进步。

              

0
0
查看评论

实时错误'-2147217873(80040e2f)

机房收费系统:实时错误'-2147217873(80040e2f)不能将 NULL 值插入列;列不允许空值,INSERT 失败。
  • sun15732621550
  • sun15732621550
  • 2015-07-22 18:04
  • 1049

实时错误‘-2147217873(80040e2f)’

昨天在调试机房收费系统中的基本数据设定这一窗体时,出现了以下错误:                       【分析原因】 NULL空值,实际上有三种情况:占位空值,即对象的属性不存...
  • wxb141001yxx
  • wxb141001yxx
  • 2016-08-11 09:23
  • 444

机房收费系统—注册 实时错误“-2147217873(80040e2f)”

今天敲机房的时候,注册代码刚敲好,一运行,就出现了如下错误。         【分析原因】 NULL空值,实际上有三种情况:占位空值,即对象的属性不存在,无意义;未知空值,即对象有属性,存在但未知;最后一种是对象有无该属性不知。指明了错误,userI...
  • happyniceyq
  • happyniceyq
  • 2015-08-07 19:50
  • 1048

T3记账时提示:运行时错误‘-2147217873(80040e2f)\':违反了PRIMMARY KEY 约束‘GL-mpostcond1_pk\"不能在对象‘GL-Mpostcond1中键入重复键

【解决办法】一、如果是用友T310.8plus1之前的版本,请先在查询分析器中执行如下脚本:use ufdata_账套号_年度delete from gl_mpostcond1然后再执行如下脚本,避免后续出现类似的问题。SET QUOTED_IDENTIFIER OFF   &#...
  • yyyxsam
  • yyyxsam
  • 2016-11-04 00:04
  • 3144

Microsoft OLE DB Provider for SQL Server 错误 '80040e2f'

Microsoft OLE DB Provider for SQL Server 错误 80040e2f 无法将 NULL 值插入列 ID,表 gogozcpzy.gogozcpzy.Impeach;该列不允许空值。INSERT 失败。 /LeaveWord/Impeach.asp,行73 这个问题...
  • zhuangyanping
  • zhuangyanping
  • 2005-09-30 00:03
  • 2240

机房收费系统--充值

做机房有一段时间了,下面总结一下机房收费系统,如何实现充值的功能的。 当卡号不存在时,给出提示。如果存在将数据(充值金额)增加到充值表中。 然后在把数据更新到学生表中,学生表中的金额为:充值金额+原有金额。 Private Sub Command1_Click() Dim mrc As ...
  • loonsd
  • loonsd
  • 2015-08-16 19:57
  • 681

机房收费系统注册之实时错误

机房收费系统,按着既定的脚步一步一步的往前走,窗体布局,实现代码,调代码,一不小心,写错一个单词,或者定义出了问题,都会导致程序无法正常运行下去,导致错误的原因有很多,但是导致同一个错误的原因却又不尽相同,无论怎样,自己还是在一个有一个的bug中找到闪光点,一点一点的向前进......,下面的这些错...
  • u010850027
  • u010850027
  • 2013-11-06 14:14
  • 4070

VB.net开发的com手动注册的方法

我用vb.net 开发的com. 在本机调用没有问题。但是我把dll放到另一个机器中,然后进行了注册regasm aa.dll /tlb:aa.tlb 也成功了。在vb中添加因用也没有问题。在对象管理器中也能看到。但是在程序中调用的时候出错。代码:dim a as new aa.mymsgbox a...
  • precipitant
  • precipitant
  • 2007-09-27 14:47
  • 3741

机房之注册窗体--存盘

存盘需要注意有3点:判断卡号是否为空,是否为数字(字值型),判断完其他控件的最后还需判断一下卡号是否存在                 &...
  • as15932641664
  • as15932641664
  • 2017-12-13 12:30
  • 138

机房错误(一)

1.实时错误“91”,下边是报错的代码:   解决方案:       91错误一般是没链接上数据库,所以就从跟数据库有关的方面找错,报错的代码里边有一个user_ID,很明显数据库中是userID,下边是改正的代码   2.登陆...
  • yyx3214
  • yyx3214
  • 2016-07-16 15:28
  • 282
    个人资料
    • 访问:17456次
    • 积分:3553
    • 等级:
    • 排名:第11009名
    • 原创:59篇
    • 转载:0篇
    • 译文:0篇
    • 评论:1377条