⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 module1.bas

📁 本人自己编写的!!!!!看看这样做的怎么样
💻 BAS
字号:
Attribute VB_Name = "Module1"
'Public fMainForm As frmMain
Public flag As Integer   '登录成功标志
Public bflagadd As Integer '书籍操作标志
Public flagadd As Integer '读者操作标志
Public brflagadd As Integer '借还书标志
Public FileName As String '图片文件名

Public Function ConnectString() As String
   ConnectString = "FileDSN=D:\04-7班王静(20042501011)\data\xsbook.dsn;UID=sa"
End Function

Public Sub SaveToDB(diskFile As String, jszh As String)
    Dim byteData() As Byte '定义数据块数组
    Dim NumBlocks As Long  '定义数据块个数
    Dim FileLength As Long '标识文件长度
    Dim LeftOver As Long '定义剩余字节长度
    Dim SourceFile As Long '定义自由文件号
    Dim i As Long '定义循环变量
    Const BLOCKSIZE = 4096
    Dim cnn As ADODB.Connection
    Dim ADORst As New ADODB.Recordset 'ADODB Recordset 对象
    Dim Fld As ADODB.Field 'ADODB Field 对象

       Set cnn = New ADODB.Connection
        cnn.Open ConnectString
        ADORst.Open "xs", cnn, adOpenDynamic, adLockOptimistic '打开一个ADO动态集 表名为table
   Do While Trim(ADORst("借书证号").Value) <> Trim(jszh) And Not ADORst.EOF
   ADORst.MoveNext
   Loop
   If Not ADORst.EOF Then
   Set Fld = ADORst("照片")
   Else
   Exit Sub
   End If
         SourceFile = FreeFile '提供一个尚未使用的文件号
    Open diskFile For Binary Access Read As SourceFile '打开文件
    FileLength = LOF(SourceFile) '得到文件长度
    If FileLength = 0 Then '判断文件是否存在
    Close SourceFile
    MsgBox diskFile & " 无 内 容 或 不 存 在 !"
    Else
    NumBlocks = FileLength \ BLOCKSIZE '得到数据块的个数
    LeftOver = FileLength Mod BLOCKSIZE '得到剩余字节数
    Fld.Value = Null
    ReDim byteData(BLOCKSIZE) '重新定义数据块的大小
    For i = 1 To NumBlocks
    Get SourceFile, , byteData() ' 读到内存块中
     Fld.AppendChunk byteData() '写入FLD
    Next i
        ReDim byteData(LeftOver) '重新定义数据块的大小
    Get SourceFile, , byteData() '读到内存块中
             Fld.AppendChunk byteData() '写入FLD
    Close SourceFile '关闭源文件
    ADORst!FileLen = FileLength
    ADORst.Update
    ADORst.Close
    cnn.Close
    End If
    End Sub


  Public Sub getfromDB(diskFile As String, jszh As String)
   Dim byteData() As Byte '定义数据块数组
    Dim NumBlocks As Long  '定义数据块个数
    Dim FileLength As Long '标识文件长度
    Dim LeftOver As Long '定义剩余字节长度
    Dim SourceFile As Long '定义自由文件号
    Dim i As Long '定义循环变量
    Const BLOCKSIZE = 4096
    Dim cnn As ADODB.Connection
    Dim ADORst As New ADODB.Recordset 'ADODB Recordset 对象
    Dim Fld As ADODB.Field 'ADODB Field 对象
       Set cnn = New ADODB.Connection
        cnn.Open ConnectString
        ADORst.Open "xs", cnn, adOpenDynamic, adLockOptimistic '打开一个ADO动态集 表名为table
   Do While Trim(ADORst("借书证号").Value) <> Trim(jszh) And Not ADORst.EOF
   ADORst.MoveNext
   Loop
   If Not ADORst.EOF Then
   Set Fld = ADORst("照片")
   Else
   Exit Sub
   End If
         SourceFile = FreeFile '提供一个尚未使用的文件号
    Open diskFile For Binary As SourceFile  '打开文件
    FileLength = ADORst!FileLen '得到文件长度
    If IsNull(FileLength) Or FileLength = 0 Then '判断文件是否存在
    Close SourceFile
    MsgBox diskFile & " 无 内 容 或 不 存 在 !"
    Else
    NumBlocks = FileLength \ BLOCKSIZE '得到数据块的个数
    LeftOver = FileLength Mod BLOCKSIZE '得到剩余字节数
        ReDim byteData(BLOCKSIZE) '重新定义数据块的大小
    For i = 1 To NumBlocks
    byteData() = Fld.GetChunk(BLOCKSIZE) '读取FLD
    Put SourceFile, , byteData() ' 写数据到文件
    
    Next i
        ReDim byteData(LeftOver) '重新定义数据块的大小
        byteData() = Fld.GetChunk(LeftOver) '读取FLD
    Put SourceFile, , byteData() ' 写数据到文件
         Close SourceFile '关闭源文件
         ADORst.Close
    cnn.Close
    End If
  End Sub
  
  
  Sub Main()
flag = 0
frmmain.Show
End Sub

Public Sub EnterToTab(Keyasc As Integer)
    If Keyasc = 13 Then
        SendKeys "{TAB}"
    End If
End Sub

Public Function ExecuteSQL(ByVal SQL As String, MsgString As String) _
   As ADODB.Recordset
   Dim cnn As ADODB.Connection
   Dim rst As ADODB.Recordset
   Set cnn = New ADODB.Connection
   cnn.Open ConnectString
   Set rst = New ADODB.Recordset
       rst.Open Trim$(SQL), cnn, adOpenKeyset, adLockOptimistic
       Set ExecuteSQL = rst
        End Function


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -