Пример VB-5. Создание новой базы данных

В этом примере создается новая база данных сервера. На рис. 23.15 представлена форма (в режиме разработки), в следующей далее таблице приведены свойства элементов формы.

Рис. 23.15

Форма для создания новой базы на сервере (в режиме разработки)

Тип элемента Свойство, которое изменено (используется в коде) Значение Примечание
UserForm Name Form1 Имя формы, на которое можно ссылаться в коде.
  Caption Тестирование SQL-DMO (5) Заголовок.
Frame Name Frame1  
  Caption Базы данных SQL Server Текст – заголовок для Combo1.
ComboBox Name Combo1 Список для отображения (и выбора) наименований баз данных.
Frame Name Frame2  
  Caption Создание базы данных Текст – заголовок для текстового окна и кнопки Command2.
CommandButton Name Command2 Кнопка для создания новой базы данных.
  Caption Создать  
CommandButton Name Command1 Кнопка для окончания работы с приложением.
  Caption Выход  

В листинге 23.5 приведен код модуля формы, а на рис. 23.16 и 23.17 форма показана в режиме выполнения. В процедуре загрузки формы формируется список баз данных сервера. В процедуре Command2_Click создается новая база данных (строка 35) с именем, вводимым пользователем в текстовом окне Text1(рис. 23.16). В этой же процедуре вызывается процедура для перезагрузки списка Combo1, который уже отображает имя новой базы данных (рис. 23.17).

Листинг 23.5 Модуль формы для создания новой базы на сервере

1: Dim sqlOb As SQLDMO.SQLServer

2: Dim obj1 As Object

3:

4: Private Sub Form_Load()

5:

6: Set sqlOb = New SQLDMO.SQLServer

7: sqlOb.Connect "VOVA", "sa", ""

8:

9: Set obj1 = sqlOb.Databases

10:

11:

12: For Each dbs In obj1

13: Combo1.AddItem dbs.Name

14: Combo1.Text = dbs.Name

15: Next dbs

16:

17: End Sub

18:

19:

20: Private Sub Command1_Click()

21: Unload Me

22: End Sub

23:

24: Private Sub Command2_Click()

25: Dim mSQLServer As SQLDMO.SQLServer

26: Dim mDatabase As SQLDMO.Database

27: Dim mDBFile As SQLDMO.DBFile

28:

29: Set mSQLServer = New SQLDMO.SQLServer

30: mSQLServer.Connect "VOVA", "sa", ""

31:

32: Set mDatabase = New SQLDMO.Database

33: mDatabase.Name = Text1.Text

34:

35: mSQLServer.Databases.Add mDatabase

36:

37:

38: Text1.Text = ""

39:

40: Form_Load

41:

42: End Sub

Рис. 23.16

Форма для создания новой базы на сервере (режим выполнения)

Рис. 23.17

Форма для создания новой базы на сервере (в режиме выполнения). В окне списка отображается только что созданная база данных.