数据库/存储 2021_05_31 每日一练


VB 记录数据库的数据入库单号,最后一个记录查不到,但ACCESS数据库中有此记录.

VB 入库时,入库单号是自动导入且累加,(如:RUKU0001....RUKU000N)时,在记录过程中,是自动导入累加,但每次执行1~N次不等,就无法自动导入入库单号.清空数据库重0001开始又可以执行,但执行到自动导编号000N(N代表从1~N)的时候就完了,最后增加那一个查找不到,也加载不了,但在数据库中已有记录.如下简易代码.

Private Sub Cmdcazao_Click()  '入库单号查找

Dim swl As String

Dim rw As New ADODB.Recordset

List1.Clear

swl = "select * from ruku"

rw.Open swl, Conn, adOpenKeyset, adLockPessimistic

While rw.EOF = False

   List1.AddItem rw.Fields("danhao")  '将查找的入库单记录在LIST1控件中

   rw.MoveNext

Wend

rw.close

rw.Close

End Sub

Private Sub Cmdjilu_Click()   '入库记录

Dim SQL2 As String              '以下代码是自动导入入库单号

Dim Rs2 As New ADODB.Recordset

Dim i1 As String

Dim i2 As String

Dim j1As String

Dim j2 As String

i2 = "ruku"

j2 = "0001"

   SQL2 = "select * from ruku"

   Rs2.Open SQL2, Conn, adOpenKeyset, adLockPessimistic

   While (Rs2.EOF = False)

   If Rs2.EOF = False Then

       j2 = Format(j2, "#0000")

       j1 = Trim(i2 & j2)

       If Trim(Rs2.Fields("danhao")) = j1 Then

           List1.AddItem Trim(Rs2.Fields("danhao"))

           j2 = j2 + 1        

       Else

           Label3.Caption = j1

           Rs2.MoveNext

       End If

   Else

       j2 = Format(j2, "#0000")

       j1= Trim(i2 & j2)

       Label3.Caption = j1

   End If

   Dim svl As String       经以上入库单号自动导入后,即开始增加入库记录

   Dim rv As New ADODB.Recordset

   List1.Clear

   svl = "select * from caiwupinzhen"

   rv.Open sv, Conn, adOpenKeyset, adLockPessimistic

   if Label3.Caption <> "" then

       rv.addnew

       rv.fields("danhao") = Label3.caption

       rv.update

   end if

   rv.movenext

 wend

rv.close

end sub

       以上所出现的问题是:当增加到3~20个不等,自动导入入库单号的时候,最后一个记录查找不到(意思如:记录单号从RUKU0001开始~记录到RUKU0005, 按照程序导入方式下一个应该是RUKU0006,但实际导入的是RUKU0005. 利用查找程序,也查找不到RUKU0005之单号,但进入数据库中,RUKU0005是有记录的.经确认数据库中是存在RUKU0005记录,进入VB继续执行入库操作,不管入库多少次,始终入库单号是RUKU0005,回到数据库,数据库中RUKU0005被入库时不断的累计,入多少次就增加了多少个RUKU0005.)

把数据库数据清空,从RUKU0001开始,执行到RUKU0007或RUKU0025时(不等的情况下)又出现以上问题点了.

出现这种问题是什么原因,如何解决? 调试了半天,头的晕了,我是新手.自学的.很多不懂,还请各位高手指点指点..感激不尽..

查看答案

ORACLE 10G grant的问题

今天在学校学习ORACLE 10G实验的时候遇到一个问题。

SQL> conn scott/tiger

Connected.

SQL> create table t1 as select * from dba_objects;

create table t1 as select * from dba_objects

                                 *

ERROR at line 1:

ORA-00942: table or view does not exist

可是我的同学运行就能通过。我问他,他也说不上来。老师也下班回家了。

我估计可能是我没授权给 scott,可是我应该赋予scott什么权限才能让这句语句正常执行而不会报错呢?

查看答案

sql语句:如何根据一个身份证的字段取出相应的年龄?

例如有一列是身份证号,然后要根据身份证号把所有人的年龄现实出来,应该如何写呢?

查看答案

存储过程的问题

如何将结果保存到指定的表?

查看答案

mysql登录命令加sql语句怎么写

登录命令后面直接加要执行的sql语句怎么写?

mysql -u root -proot insert into tab (id,name) value ('1','abc') 

这样写对不对?

查看答案

Oracle与插件DevExpress能否兼容?

我以前用的是SqlServer XtraTreeList列表可以显示信息,但我换成Oracle就显示不了了。可是我单击某一行的时候,相应的信息又在里面,就是整体显示不出来。求给力!

查看答案

这个sql语句怎么写?

有三个表如下

users(id,name);

type(id,name);

note(id,title,contents,user_id,author_id,type_id);

其中,user_id是作者、author_id是原创作者都是与users中的id进行关联的,type_id是分类编号,与type的id关联。

现在需要创建一个视图显示note中的id、title、contents、user_id、author_id、type_id、以及user_id、author_id、type_id对应的name。

怎样写sql语句呢?

查看答案