Все что тут написано относится в БД FoxPro. Работаю обычно через dBASE IV(Почемуто FoxPro не хочет).
1) Никак не пойму как работать с таблицами ForPro(версия 2.0). Ведь у них нет такого понятия как База данных. У неё просто лежат таблици в одной папке. Как правильно написать код VB вместо моего
If Dir("c:\1.dbc") <> "" Then Kill "c:\1.dbc"
Set dbsNortwind = wrkJet.CreateDatabase("c:\1.dbc", dbLangCyrillic)
который в принципе то работает, но это же не правильно. Файл создается неизвестного формата, да и вообще он мне не нужен по сути. А без БД таблицу открыть нельзя. Подскажите как быть.
- Код: Выделить всё
Option Explicit
Dim wrkJet As Workspace
Dim dbsNortwind As Database
Dim tdfUslugi As TableDef
Dim rstUslugi As Recordset
Dim indLoop As Index
Dim rstEmployees As Recordset
Private Sub Command1_Click()
Set wrkJet = CreateWorkspace("", "admin", "", dbUseJet)
If Dir("c:\1.dbc") <> "" Then Kill "c:\1.dbc"
Set dbsNortwind = wrkJet.CreateDatabase("c:\1.dbc", dbLangCyrillic)
dbsNortwind.Connect = "dBASE IV;"
Set tdfUslugi = dbsNortwind.CreateTableDef("uslugi")
tdfUslugi.Connect = "dBASE IV;DATABASE=c:\nofine\dblocal"
tdfUslugi.SourceTableName = "uslugi"
End Sub
Пробовал еще так:
Set wrkJet = CreateWorkspace("", "admin", "", dbUseJet)
Set dbsNortwind = wrkJet.CreateDatabase("c:\nofine\dblocal", dbLangCyrillic)
dbsNortwind.Connect = "dBASE IV"
Set tdfUslugi = dbsNortwind.CreateTableDef("uslugi")
tdfUslugi.Connect = "dBASE IV;DATABASE=c:\nofine\dblocal"
tdfUslugi.SourceTableName = "uslugi"
так он создает файл c:\NoFine\dblocal.mdb
2)Еще не искал, но я думаю не найду. Есть файлы индексов, но там индексируются не поля, а формулы. Пример:
Индексы содержащиеся в uslugi.cdx
Name Expression
OTDEL ALLTRIM(otdel)+DTOC(date,1)
KARTA PADL(ALLTRIM(nkart),15)+DTOC(date,1)
MEDR ALLTRIM(m1)+ALLTRIM(m2)+DTOC(date,1)
Сразу подскажите как с ними работать. Надоли как то указывать файл uslugi.cdx(Он лежит в одной папке с таблицей uslugi.dbf)?
3) Дайте пожалуйста ссылочки на рускоязычные сайты где можно найти информацию о параметрах в SQL запросе которые указываются в []. Например:
select FILM.FNAME, ARTIST.ARTNAME from FILM inner join ARTIST on FILM.FID=ARTIST.FILMCODE in 'C:\CINEMA'[dBase IV;database='C:\CINEMA']
Перекачал очень много учебников но там про это ни слова.
Заранее благодарен.