重新上传:
我按狐爸的例子做了一个,但为何死机呢.
因不懂SQL,不知哪错了.
各位帮看看.
[此贴子已经被作者于2009-4-22 13:18:36编辑过]
是不是日期格式错了,我查一下.
改了还是不行呢?
If e.DataRow.IsNull("日期") Then
Return
ElseIf e.DataRow.IsNull("编号") = False Then
Return
End If
Dim cmd1 As New SQLCommand
Dim cmd2 As New SQLCommand
Dim cmd3 As New SQLCommand
Dim Key As Integer
cmd1.C
cmd2.C
cmd3.C
cmd1.commandText = "Select [编号] From [编号] Where [日期] = #" & e.DataRow("日期") & "#"
Key = cmd1.ExecuteScalar()
cmd2.commandText = "Update [编号] Set [编号] = " & (Key + 1) & " Where [编号] = " & Key & " And [日期] = #" & e.DataRow("日期") & "#"
cmd3.commandText = "Select Count(*) From [编号] Where [日期] = #" & e.DataRow("日期") & "#"
If cmd3.ExecuteScalar = 0 Then
cmd3.commandtext = "Insert Into 编号 (日期, 编号) Values(#" & e.DataRow("日期") & "#,1)"
cmd3.ExecuteNonQuery
End If
Do
If cmd2.ExecuteNonQuery() > 0 Then
Exit Do
Else
Key = cmd1.ExecuteScalar()
cmd2.commandText = "Update [编号] Set [编号] = " & (Key + 1) & " Where [编号] = " & Key & " And [日期] = #" & e.DataRow("日期") & "#"
End If
Loop
e.DataRow("编号") = "a" & "-" & Format(Key,"0000")
[此贴子已经被作者于2009-4-22 13:03:20编辑过]
哪位老师帮我看看呢,是哪错了.为什么不执行代码呢?
我那个编号不是这么简单的,有外部数据源,编号不是来自于本表,二是来自于外部表,SQL命令操作的也不是本表,而是外部表。
狐爸请看一楼文件,我有外部数具源啦,编号是来自外部表的呀.SQL命令也是操作外部表的
我晕了,你以为目录下有个mdb文件,就是使用了外部数据源吗?
我打开你的文件,你根本就没有定义任何外部数据源的。
是呀,我目录下的 编号 文件就是用:Microsoft Office Access 做的一个呀.不是跨表统计这个TABLE生成的.
且我定义了外部数具源的呀:
If e.name = "编号" Then
e.C & e.ProjectPath & "编号.mdb;Persist Security Info=False"
End if
[此贴子已经被作者于2009-4-22 16:36:57编辑过]
你得先定义一个名为“编号"的数据源,否则这个代码无效。
狐爸别着急:
如下是你文件列表:
此主题相关图片如下:片段_5.jpg
如下是我文件列表:
此主题相关图片如下:片段_6.jpg
都有ACCESS这个文件名:编号
这个文件不属于数具源吗,
你别急,我真的不懂!
[此贴子已经被作者于2009-4-22 16:47:07编辑过]