Как правильно через OLE DB законнектится к dbf?

mod
Дата: 22.12.2005 15:09:19
Пытаюсь законнектится:

FilePathTextBox.Text="c:\my\mn.dbf"

Dim connectionString As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &
FilePathTextBox.Text & ";Extended Properties='dBASE IV'"

Using connection As New OleDb.OleDbConnection(connectionString)

Выдаётся ошибка мол нету там ничего(файл там. путь доставал через OpenFileDialog)... Что не так?

Заодно может кто подскажет как выхватить mn.dbf из строки?
mod
Дата: 22.12.2005 17:46:50
Разобрался в чём беда...
FilePathTextBox.Text содержит c:\my\my.dbf
Надо же c:\my и my.dbf отдельно как разбить? Скажем в две переменные FiltePath и FileName?
vladgrig
Дата: 22.12.2005 17:52:41
System.IO.Path.GetFileName
mod
Дата: 23.12.2005 15:23:09
Спасибо. Помогло...
mod
Дата: 26.12.2005 11:27:18
Новая пробелема: DELETE тока помечает на удаление, но не удаляет... Как быть?
vladgrig
Дата: 26.12.2005 11:41:05
автор
Как быть?

привести строки команд создания адаптера\команды на удаление... (чем больше кода будет приведено, тем легче будет что то посоветовать)
mod
Дата: 26.12.2005 14:04:48
Вот код прграммы:
Dim ShortFileName As String = System.IO.Path.GetFileName(FilePathTextBox.Text)
Dim ShortDirectoryName As String = System.IO.Path.GetDirectoryName(FilePathTextBox.Text)
Dim connectionString As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ShortDirectoryName & ";Extended Properties='dBASE IV'"
Dim DeleteResult, UpdateResulte As Integer
Dim Conductor As Integer = 0
Using connection As New OleDb.OleDbConnection(connectionString)
Try
Dim command As New OleDb.OleDbCommand
command.Connection = connection
command.CommandType = CommandType.Text
connection.Open()
Me.Height = Me.Height + 20
ResultLabel.Text = "Результат:"
command.CommandText = "DELETE FROM " & ShortFileName & " WHERE FIO IS NULL"
command.ExecuteNonQuery()
Me.Height = Me.Height + 20
DeleteLabel.Text = "Удалено записей:" & DeleteResult
Он просто, как выяснилосб помчает строки на удаление. А надо их удалять...
Потом в DBU(утиля такая) просмотиваю - там они помечены на удаления. Приходится делать Pack... Смысл теряется...
Andrew
Дата: 26.12.2005 14:33:49
command.CommandText = "DELETE FROM " & ShortFileName & " WHERE FIO IS NULL"
command.ExecuteNonQuery()
после этого
command.CommandText = "PACK " & ShortFileName
command.ExecuteNonQuery()

ЗЫ: PACK требует екслюзивнй доступ
mod
Дата: 26.12.2005 15:07:40
Пробовал я PACK. Написал он мне что не входит оно в список команд...
mod
Дата: 26.12.2005 15:11:52
Вот такую ошибку он выдал (нету в SQL pack)