如何锁定这张表

ken_hz 2001-06-22 10:31:00
Public Function GetNextID(ByVal LicenseID As Long, ByVal VolumeID As Long, ByVal IDName As String, Optional ByVal StepNumber As Long = 1) As Long
Dim rs As ADODB.Recordset
Dim oCnn As ADODB.Connection
Dim sSql As String

80 On Error GoTo ErrHnd
81 Set rs = New ADODB.Recordset
82 Set oCnn = New ADODB.Connection

84 sSql = "Select IDValue From NextID Where IDName='" & IDName & "'"
85 rs.Open sSql, "FILEDSN=ODAdmin"

87 If rs.EOF = False Then
88 GetNextID = rs!IDValue
89 sSql = "Update NextID Set IDValue=" & (GetNextID + StepNumber) & " Where IDName='" & IDName & "'"
90 Else
91 sSql = "Insert NextID (IDName,IDValue) Values ('" & IDName & "'," & StepNumber & ")"
End If

94 oCnn.Open "FILEDSN=ODAdmin"
95 oCnn.Execute sSql

97 GetObjectContext.SetComplete
98 GetNextID = GetNextID + StepNumber
99 Set rs = Nothing
100 Set oCnn = Nothing
101 Exit Function
ErrHnd:
103 GetObjectContext.SetAbort
104 GetNextID = -1
105 Set rs = Nothing
106 Set oCnn = Nothing
End Function

执行到95行时NextID表被锁定,但我想在执行到85行时锁定NextID表,解决并发的问题,
请问各位有什么办法?
...全文
123 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
ken_hz 2001-06-22
  • 打赏
  • 举报
回复
喂,没人知道吗??????????????????
????????????????????????
??????????????????????????
ken_hz 2001-06-22
  • 打赏
  • 举报
回复
我的意思是执行到85行时其它进程不能读取NextID这张表。
ken_hz 2001-06-22
  • 打赏
  • 举报
回复
To superjs(真剑神):
你给的方法好象不灵哦。
superjs 2001-06-22
  • 打赏
  • 举报
回复
rs.Open sSql, "FILEDSN=ODAdmin",true,true
资源下载链接为: https://pan.quark.cn/s/9e7ef05254f8 在 IT 领域,数据库管理极为关键,尤其是对于广泛使用的 MySQL 这类关系型数据库管理系统而言。mysqldump 是一款功能强大的命令行工具,它能够帮助用户备份和导出 MySQL 数据库的结构与数据。无论是开发人员还是系统管理员,mysqldump 都是不可或缺的工具,它支持在不同环境间迁移数据,还可用于定期备份,有效防止数据丢失。 若要导出整个数据库,可在命令行中执行以下命令:mysqldump -u [username] -p[password] [database_name] > [dump_file.sql]。其中,-u 参数用于指定数据库用户名,-p 后面紧跟着密码(若省略密码,系统会在命令行提示输入),[database_name] 是要导出的数据库名称,> 是重定向符号,用于将输出结果保存到 [dump_file.sql] 文件中。mysqldump 不仅能导出完整数据库,还能导出单个表或多张表。例如,仅导出数据库中的某张表时,命令为:mysqldump -u [username] -p[password] [database_name] [table_name] > [dump_file.sql]。 mysqldump 还具备诸多选项,可用于定制导出过程。例如,--skip-triggers 可跳过触发器的导出;--no-create-info 只导出数据,不含创建表的 SQL 语句;--lock-tables 能在导出时锁定所有表,确保数据一致性。实际操作中,可根据具体需求灵活组合这些选项。 在备份策略方面,mysqldump 也发挥着重要作用。数据库备份通常分为全量备份和增量备份。全量备份是完整复制数据库全部内容,而增量备份仅备份自上次备份后发生更改的部分。m

7,786

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧