Skip to content

���ݿ���⿪���ĵ�

? cDataBase ��� - ���� ADO ��װ�� VB6 ���ݿ�����࣬�� 215879458@qq.com ����

? Ŀ¼


����

cDataBase �����һ��Ϊ VB6 ��Ƶ����������ݿ������װ�࣬��ȫ���� ADO (ActiveX Data Objects) ʵ�֣��ṩ�˼�����õ� API �������Ĺ���֧�֡�

? ��Ҫ����

  • ? �����ݿ�֧�� - ֧�� Access��MySQL��SQL Server��CSV �ȶ������ݿ�
  • ? ���ӳع��� - ֧�ֶ����ݿ�����ʵ���أ���̬�������ݿ����
  • ? ��ҳ��ѯ - ���÷�ҳ���ܣ�֧�� SQL Server��MySQL��Access
  • ? ��������ѯ - ֧�ֲ�������ѯ����Ч��ֹ SQL ע�빥��
  • ? ������ - ����������֧�֣��Զ��ع�����
  • ? �첽ִ�� - ֧���첽 SQL ִ�У���������
  • ? �����ת�� - �Զ��� Recordset ת��Ϊ Dictionary ����
  • ?? ���߷��� - �ḻ�Ĺ��߷������򻯳��ò���

��������

1?? ���� API ��� ?

��������ʽ������ƣ��������׶���

vb
' �� VB6 ��Ŀ������ VBMAN.dll ��ʹ��
Dim db As New VBMAN.cDataBase

' �������ݿ�
db.Connect VBMAN.enumDbType_MsSql, "127.0.0.1,1433", "sa", "password", "mydb"

' ��ѯ���ݣ���ʽ���ã�
db.Sql("SELECT * FROM users WHERE id > ?").Param("id", 100).QueryParam

' ��ȡ���
Dim i As Long
For i = 1 To db.Rows.Count
    Debug.Print db.Rows(i)("name")
Next

2?? �����ݿ�����֧�� ?

vb
' SQL Server
db.Connect VBMAN.enumDbType_MsSql, "127.0.0.1,1433", "sa", "pwd", "master"

' MySQL
db.Connect VBMAN.enumDbType_Mysql, "localhost:3306", "root", "pwd", "testdb"

' Access
db.Connect VBMAN.enumDbType_Access, "C:\data\mydb.mdb"

' CSV
db.Connect VBMAN.enumDbType_Csv, "C:\data\csvfiles"

3?? ��ҳ��ѯ֧�� ?

vb
' �� 2 ҳ��ÿҳ 10 ��
db.Sql("SELECT * FROM users").Page(2, 10).Query

' �Զ�ת��Ϊ��Ӧ���ݿ�ķ�ҳ SQL
' SQL Server: OFFSET 10 ROWS FETCH NEXT 10 ROWS ONLY
' MySQL: LIMIT 10 OFFSET 10

4?? ��������ѯ���� SQL ע�룩 ?

vb
' ʹ�ò�������ѯ����ȫ�ɿ�
db.Sql("SELECT * FROM users WHERE name = ? AND age > ?") _
    .Param("name", "����", VBMAN.adVarChar) _
    .Param("age", 18, VBMAN.adInteger) _
    .QueryParam

5?? ������ ?

vb
' ��ʼ����
db.TransBegin

' ִ�ж������
db.Sql("INSERT INTO users (name) VALUES ('user1')").Exec
db.Sql("INSERT INTO users (name) VALUES ('user2')").Exec

' �ύ����ʧ���Զ��ع���
If db.TransCommit Then
    Debug.Print "�����ύ�ɹ�"
End If

6?? ������Զ�ת�� ?

vb
' ��ѯ���Զ�ת��Ϊ Dictionary ����
db.Sql("SELECT * FROM users").Fetch

' ���ʵ�һ������
Debug.Print db.Row("name")
Debug.Print db.Row("age")

' ����������
Dim i As Long
For i = 1 To db.Rows.Count
    Debug.Print db.Rows(i)("name")
Next

7?? ���ӳع��� ?

vb
' ��������ʵ��
Dim db1 As VBMAN.cDataBase
Set db1 = db.ConnInst("db1")

' ʹ�ö���������ʵ��
db1.Sql("SELECT * FROM table1").Query

' �Ƴ�����ʵ��
db.ConnInstRemove "db1"

�ܹ����

���νṹ

cDataBase (���ݿ������)
������ Connection (ADODB.Connection) - ���ݿ�����
������ Recordset (ADODB.Recordset) - ��¼��
������ Command (ADODB.Command) - ��������ѯ����
������ Connections (Dictionary) - ���ӳ�

�����ϵͼ

���ݿ���� (cDataBase)
������ ������ (Conn)
��   ������ Recordset (Rs)
��   ������ Command (Cmd) - ��������ѯ
������ ���ӳ� (Connections)
    ������ ����ʵ�� 1 (cDataBase)
    ��   ������ ��������
    ������ ����ʵ�� 2 (cDataBase)
    ��   ������ ��������
    ������ ...

��������

��ѯ����

1. Sql("SELECT ...") - ���� SQL ���
2. Page(1, 10) - ��ѡ�����÷�ҳ
3. Query() - ִ�в�ѯ
4. Rs - ��ȡ Recordset
5. Rows - �Զ�ת��Ϊ Dictionary ����

ִ������

1. Sql("INSERT/UPDATE/DELETE ...") - ���� SQL ���
2. Param("name", value) - ��ѡ�����Ӳ���
3. Exec() / ExecParam() - ִ�в���
4. LastInsertId() - ��ѡ����ȡ������� ID

�ĵ�����

�ĵ�����
����������������ָ��
���ӹ������ݿ����Ӻ����ӳع���
��ѯ����SELECT ��ѯ����ϸ˵��
ִ�в���INSERT��UPDATE��DELETE ����
���������������ʹ��ָ��
��ҳ������ҳ��ѯ����ϸ˵��
��������ѯ��������ѯ�� SQL ע�����
���߷������ù��߷���˵��
�߼������߼����ܺ����ʵ��

������ϵ

�������
Microsoft ActiveX Data Objects 2.8 LibraryADO ���Ŀ⣬��������
Microsoft Scripting RuntimeDictionary ����֧��
ToolsList.basRecordset ת Collection ����
ToolsFso.bas������������

������

  • VB6/VBA - ��ȫ����
  • Windows - Windows XP �����ϰ汾
  • ���ݿ� - Access��MySQL��SQL Server��CSV
  • ADO �汾 - ADO 2.8 ������

����

���� VBMAN ��Ŀ����


����

���ݿ����: 215879458@qq.com


������: 2026-01-21

VB6及其LOGO版权为微软公司所有