а затем наживать на Button1. В результате обработки события Button1.Click должен создаваться каталог ADOX
(MS Access.2007) и одноименная таблица для каждого человека. В итоге, сколько человек, столько таблиц.
В предложенном коде: создается каталог ADOX (MSAccess2007) и генерируется таблица с именем для каждого тестируемого.
Когда первый раз написал этот код, то создавался каталог и таблица с заданными полями, а теперь не создается таблица,
не говоря о том, чтобы имени таблицы присваивалось имя человека.
Добавлены через /Меню/ - /Add Reference/- /.NET/ - System.Windows.Forms
Вопросы такие: 1. Почему не создается таблица и 2. Как сделать так, чтобы имя человека из TextBox1 становилось именем таблицы в каталоге MSAccess.
- Код: Выделить всё
Imports System.Data.OleDb
Imports System.Windows.Forms
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.Text = "Oracul"
TextBox1.Clear()
Button1.Text = "Далее"
Dim cat As New ADOX.Catalog
Try
cat.Create("Provider=Microsoft.ACE.OleDb.12.0; " & _
"Data Source=""C:\oracul.accdb""")
Catch ex As Runtime.InteropServices.COMException
MessageBox.Show("База данных уже существует")
Finally
End Try
End Sub
Public Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
REM нажатие на кнопку происходит каждый раз для идентификации человека и создания одноименной
REM таблицы с его данными
Dim CON As New OleDbConnection("Provider=Microsoft.ACE.OleDb.12.0; " & _
"Data Source=""C:\oracul.accdb""")
CON.Open()
Dim COMMAND As New OleDbCommand("CREATE TABLE member (Questions char(20), object1 char(20), object2 char(20), object3 char(20), " & _
"object4 char(20), object5 char(20), object6 char(20), object7 char(20), object8 char(20)) WHERE member.Text = TextBox1.Text", CON)
Try
COMMAND.ExecuteNonQuery()
MessageBox.Show("Done")
Catch ex As Exception
MessageBox.Show("Таблица не создана")
End Try
CON.Close()
End Sub
End Class