vb数据库操作实例

2024-09-06

vb数据库操作实例(精选4篇)

1.vb数据库操作实例 篇一

用 VB 5读写注册表实例 -------------------------------------------------------------------------------- ∈紫刃陆ㄒ桓龉こ蹋?谛陆ǖ拇疤迳咸砑右韵驴丶?⑸柚孟嘤κ粜裕?br 控件名 属性 值 Label1 Caption 注册表键值: Label2 Caption 注册姓名: Lab

用VB5读写注册表实例

--------------------------------------------------------------------------------

∈紫刃陆ㄒ桓龉こ蹋?谛陆ǖ拇疤迳咸砑右韵驴丶?⑸柚孟嘤κ粜裕?br> 控件名 属性 值

Label1 Caption 注册表键值:

Label2 Caption 注册姓名:

Label3 Caption 空

Label4 Caption 注册公司:

Label5 Caption 空

Label6 Caption 空

Text1 Text 空

Text2 Text 空

Command1 Caption 写入注册表

Command2 Caption 退出

然后,在程序的声明部分添加如下代码:

Private Declare Function RegCreateKey Lib “advapi32.dll” Alias “RegCreateKeyA” (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long

Private Declare Function RegQueryValueEx Lib “advapi32.dll” Alias “RegQueryValueExA” (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, lpData As Any, lpcbData As Long) As Long

Private Declare Function RegSetValueEx Lib “advapi32.dll” Alias “RegSetValueExA” (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long

Const error_suclearcase/“ target=”_blank“ >ccess = 0&

Const error_baddb = 1009&

Const error_badkey = 1010&

Const error_cantopen = 1011&

Const error_cantread = 1012&

Const error_cantwrite = 1013&

Const error_registry_recovered = 1014&

Const error_registry_corrupt = 1015&

Const error_registry_io_failed = 1016&

Const hkey_classes_root = &H80000000

Const hkey_current_user = &H80000001

Const hkey_local_machine = &H80000002

Const REG_SZ = 1

Const regkey = ”softwareMy SoftMy program“

接着为各个控件添加代码,代码如下:

Private Sub Command1_Click

Dim keyvalue As String

Dim retvalue As Long

Dim keyid As Long

retvalue = RegCreateKey(hkey_local_machine, regkey, keyid)

keyvalue = Text1.Text

retvalue = RegSetValueEx(keyid, ”注册名“, 0&, REG_SZ, ByVal keyvalue, Len(keyvalue) + 1)

keyvalue = Text2.Text

retvalue = RegSetValueEx(keyid, ”注册公司“, 0&, REG_SZ, ByVal keyvalue, Len(keyvalue) + 1)

If Text1.Text $#@60;$#@62; ”“ And Text2. t $#@60;$#@62; ”“ Then

Label3.Caption = Text1.Text

Label5.Caption = Text2.Text

End If

End Sub

Private Sub Command2_Click()

Unload Me

End

End Sub

Private Sub Form_Load()

Dim retvalue As Long

Dim result As Long

Dim keyid As Long

Dim keyvalue As String

Dim subkey As String

Dim bufsize As Long

Label6.Caption = regkey

retvalue = RegCreateKey(hkey_local_machine, regkey, keyid)

If retvalue = 0 Then

subkey = ”注册名“

retvalue = RegQueryValueEx(keyid, subkey, 0&, REG_SZ, 0&, bufsize)

If bufsize $#@60; 2 Then

keyvalue = ”“

retvalue = RegSetValueEx(keyid, subkey, 0&, REG_SZ, ByVal keyvalue, Len(keyvalue) + 1)

Else

keyvalue = String(bufsize + 1, ” “)

retvalue = RegQueryValueEx(keyid, subkey, 0&, REG_SZ, ByVal keyvalue, bufsize)

keyvalue = Left$(keyvalue, bufsize - 1)

Text1.Text = keyvalue

End If

Label3.Caption = keyvalue

subkey = ”注册公司“

retvalue = RegQueryValueEx(keyid, subkey, 0&, REG_SZ, 0&, bufsize)

If bufsize $#@60; 2 Then

keyvalue = ”“

retvalue = RegSetValueEx(keyid, subkey, 0&, REG_SZ, ByVal keyvalue, Len(keyvalue) + 1)

Else

keyvalue = String(bufsize + 1, ” “)

retvalue = RegQueryValueEx(keyid, subkey, 0&, REG_SZ, ByVal keyvalue, bufsize)

keyvalue = Left$(keyvalue, bufsize - 1)

Text2.Text = keyvalue

End If

Label5.Caption = keyvalue

End If

End Sub

好了,存盘,按F5运行程序,在两个Text中分别写入你的“注册姓名”和“注册公司”的名称,然后单击“写入注册表”按钮,现在打开“注册表编辑器”,找到HKEY_LOCAL_MACHINESOFTWAREMy SoftMy Program,看看右边是不是生成了“注册名”和“注册公司”两个键值,是的话,恭喜你,你成功了,

用VB5读写注册表实例VB

原文转自:www.ltesting.net

2.vb数据库操作实例 篇二

关键词:程序开发;实例教学;VB教学

“实例教学”是VB教学中最常用的一种教学方法,实例教学法将知识点贯穿在实例中,通过实例的讲解达到传授知识、技能的目的。实例教学法体现了以教为中心的教学特点。而“程序开发”是一种创新型、思维开拓型的教学法,在教学活动中,以开发程序为目标,学生在教师组织、引导下,通过单个窗体的任务探究,达到对所学知识点的掌握和操作技能的培养。“程序开发”教学体现了以学为主的教学特点。VB是一门实践性强、技能性强而且极富创造性的课程,在教学过程中,要把“实例教学”和“程序开发”结合运用,以教师为主导,学生为主体,充分发挥这两种教学方法的优势,更好地完成教学任务。

教学模式

第一阶段:导入教师在还没有讲授新课之前,向学生演示几个用VB开发出来的小程序和系统。要求这些程序和系统不仅要有代表性,还要有吸引力。并告诉学生这学期学习VB的最终目的:要以一个系统程序(这里以图书管理系统为例)为主线,通过多个实例教学最终完成这个系统的开发。目的明确了,在学生心目中就会产生学习的原动力。

第二阶段:需求分析和可行性研究程序开发的目的就是使工作变得更有效率。应让学生理解到程序不是随随便便就能开发出来的,需要做大量的前期工作。教师和学生可以一起对图书管理系统做测试,即管理者要能对书籍信息、读者信息和借阅信息进行增、删、改、查及对系统进行管理,还要满足使用者对书籍进行有效的查询。综合起来就是看能不能满足用户的需求,如果不能还要补充哪些功能。让学生根据实际补充和更正,这就极大地促进了学生的积极性和能动性,使教学更加顺利和流畅。这一阶段要让学生懂得开发程序要做大量的分析工作,程序不是以做完为目的,最终要投入到使用中。

第三阶段:总体设计和详细设计总体设计,即教师要将这个大工程细分成一个个子窗体,明确每个子窗体的作用并安排布局;详细设计,即根据每个子窗体所含的知识点选择典型实例和设计任务进行系统教学,让学生将知识点运用到系统中。在以上两个设计中,主要工作是通过“实例教学”来讲解VB中的知识点,开始时先让学生以设计窗体界面为主,了解属性、方法及动作的应用。学生在学习这一块内容时有一个接受新鲜事物的过程,授课的内容不能脱离例题系统的界面,即要以例题系统的界面为中心,围绕它展开学习。调动学生将学过的内容运用于开发图书管理系统中去,学生会有非常大的热情开发属于自己的东西。这时教师应该引导学生,系统的功能并不是越多越好,能满足需要就可以了;设计时的布局要讲究合理搭配,界面的设计要让使用者感到舒服。对于代码的编写,这一过程要分三个阶段:

(1)要让学生对原系统中的代码有所掌握和理解,知道每个语句代表的意思;

(2)在教师的指导下,让学生对原代码进行适当改写以观察产生的效果,并从中得到进步;

(3)以学生自主尝试,教师引导的.方式,让学生大胆实践,使他们在尝试中体会、感受和领悟。这期间,学生的理解掌握能力和创新能力各不相同,一定会遇到一些问题。对学生存在的共性问题,可由教师统一示范,集体解决;对个别学生的个别问题可作单独辅导,并鼓励学生通过各种渠道如查阅图书、网络、杂志去收集资料和解决问题。这是学生消化和吸收知识的阶段,是学生由不会到会,由初识到熟练掌握的阶段,也是学生充分发挥各种能力的阶段,时间上可占整个教学进度的一半左右,在教学进程中是一个热烈的高潮期。

第四阶段:程序的测试由于工作量大,难免会在程序的编写中出现问题而导致不能正常运行。要举例让学生知道一些错误产生的原因。如产生“变量未定义”的原因就是控件的属性名称与代码中引用的名称不相符。可修改属性中的Name属性,也可修改程序中的代码。在这个阶段的初始,学生不会修改错误,教师要适时地进行引导说明,并统一讲解出现的共性错误,得出正确结果,让学生记忆深刻。当然错误的原因很多,不可能一一举出实例,这就要求学生互相帮助,解决更多的问题。

3.VB数据库SQL语句学习 篇三

2.Select StudentID, StudentName from student 只查询学号和姓名

3.Select StudentID as 学号, StudentName as 姓名, Sex as 性别,Class as 班级,NormalScore as平时成绩,ExperimentScore as 实验成绩, ExaminationScore as 考试成绩 from student

4.Select * from student where sex=’男’只需要查看男生的成绩

5.Select * from student where NormalScore>80只需要查看平时成绩大于80分的记录

6.Select * from student where studentname like ‘陈%’查询姓陈的同学的记录

7.Select * from student order by examinationScore根据考试成绩排序

8.Select * from student order by examinationScore排序---降序

9.Select Sum(examinationScore)as 总成绩 from student求总成绩

10.Select Avg(examinationScore)as平均成绩 from student求平均成绩

11.Select count(*)as 总记录数 from student求总记录数

12.Select Max(ExaminationScore)as 最高分 from student求最高分

13.Select Min(ExaminationScore)as 最高低分 from student求最低分

14.Select Class as 班级, Avg(ExaminationScore)as平均成绩 from student group by class各班级成绩的分类汇总

Public Class frmMain

Private ObjCnn As New OleDbConnection

Private ObjCmd As OleDbCommand

Private StrDir As String = “D:MIS1025StudentMgr.accdb”

Private Sub frmMain_Load(ByVal sender As System.Object, ByVal e As

System.EventArgs)Handles MyBase.Load

ObjCnn.ConnectionString = “Provider=Microsoft.ACE.OLEDB.12.0;Data Source=” & StrDir

ObjCnn.Open()

ObjCmd = New OleDbCommand

ObjCmd.Connection = ObjCnn

End Sub

Private Sub FindRecord(ByVal StrSQL As String)

ObjCmd.CommandText = StrSQL

Dim rd As OleDbDataReader = ObjCmd.ExecuteReader

Dim tbl As New DataTable

tbl.Load(rd)

DataGridView1.DataSource = tbl

End Sub

Private Sub CmdFind_Click(ByVal sender As System.Object,System.EventArgs)Handles CmdFind.Click

FindRecord(txtSQL.Text)

4.vb数据库操作实例 篇四

Python3,开一个线程,间隔1秒把一个递增的数字写入队列,再开一个线程,从队列中取出数字并打印到终端

代码如下:

#! /usr/bin/env python3

import time

import threading

import queue

# 一个线程,间隔一定的时间,把一个递增的数字写入队列

# 生产者

class Producer(threading.Thread):

def __init__(self, work_queue):

super().__init__() # 必须调用

self.work_queue = work_queue

def run(self):

num = 1

while True:

self.work_queue.put(num)

num = num+1

time.sleep(1) # 暂停1秒

# 一个线程,从队列取出数字,并显示到终端

class Printer(threading.Thread):

def __init__(self, work_queue):

super().__init__() # 必须调用

self.work_queue = work_queue

def run(self):

while True:

num = self.work_queue.get() # 当队列为空时,会阻塞,直到有数据

print(num)

def main():

work_queue = queue.Queue()

producer = Producer(work_queue)

producer.daemon = True # 当主线程退出时子线程也退出

producer.start()

printer = Printer(work_queue)

printer.daemon = True # 当主线程退出时子线程也退出

printer.start()

work_queue.join() # 主线程会停在这里,直到所有数字被get(),并且task_done(),因为没有调用task_done(),所在这里会一直阻塞,直到用户按^C

if __name__ == ‘__main__‘:

main()

queue是线程安全的,从多个线程访问时无需加锁,

Python多线程和队列操作实例

如果在work_queue.get()之后调用work_queue.task_done(),那么在队列空时work_queue.join()会返回。

这里work_queue.put()是间隔一定时间才往队列放东西,如果调用work_queue.task_done(),在数字1被get()后,队列空时,join()就返回,程序就结束了。

也就是程序只打印了1然后就退出了。

所以在这种使用情景下,不能调用task_done(),程序会一直循环下去。

上一篇:卫星比武教学反思下一篇:机关单位工作检讨