Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 | 2 | 3 | 4 |

 

  Вопрос: Внимание! Конкурс!! Добавлено: 15.11.06 13:44  

Автор вопроса:  nat-z

Ответить

  Ответы Всего ответов: 55  

Номер ответа: 16
Автор ответа:
 nat-z



Вопросов: 13
Ответов: 85
 Профиль | | #16 Добавлено: 21.11.06 00:27
Напиши как ты прописываешь БД, в дизайнере или кодом, если кодом то в каком событии, и зачем нужен dBase

Есть старинная чужая программа на Clipper c dBase. Она работает. Мне надо написать новую, но одновременно с жизнью старой. Поэтому либо:
а) писать все навсегда в VB под формат dBase. Наверно будет медленно работать.
б) постепенно переписывать функции из стар программы в новую. При этом работает и старая. Но надо будет регулярно качать из формата в формат и обратно. Причем достаточно автоматизированно и надежно, чтобы бухгалтера не нахомутали.

И если у меня заработает dbf (во что я уже слабо верю) как мне переписать таблицу в файл Dbf (допустим уже созданный и пустой (только как его очистить?). Я на основе разных примеров написала так:
 ;Dim cn1, cn2 As New ADODB.Connection
Dim rs1, rs2 As New ADODB.Recordset
Cn1.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & GBmenu.Pth0 & "\" & “GB.mdb”
Cn2.Open ";Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dsn=”gbind.dbf”)
Rs1.Source = ("SELECT * FROM GBIND WHERE NPP=1";)
Do Until rs1.EOF
   Rs2.AddNew
   For i = 0 To rs2.Fields.Count - 1
      Rs2.Fields(i) = rs1.Fields(i)
   Next i
   Rs2.Update
   Rs1.MoveNext
Loop

Это правильно?

Ответить

Номер ответа: 17
Автор ответа:
 nat-z



Вопросов: 13
Ответов: 85
 Профиль | | #17 Добавлено: 21.11.06 00:30
Просто тебе надо регистрировать Msxbse35.dll. odbcjt32.dll - вообще не при чем.

У меня на компе есть Msjet35, msjint35, msjter35, msrd2x35, msrepl35, msjtor35. И больше ничего!
У меня XP. Это плохо?
И что – никто ничего не знает?
Только не надо про Tim Accrss to DBF – это мне уже рассказывали!!

И новые вопросы. Есть например xxx.mdb и в нем таблицы gbm1, gbm2 и проч. Как можно сжать (т е сократить удаленные записи) например таблицу gbm2 из программы? Как можно полностью очистить например таблицу gmb1 (опять же из программы)?

Ответить

Номер ответа: 18
Автор ответа:
 Shark



ICQ: 284036855 

Вопросов: 35
Ответов: 155
 Web-сайт: www.ma26.ru
 Профиль | | #18
Добавлено: 21.11.06 00:51
По моему нужно поставить галочки в пункте References на Microsoft Activex data Object. Сжать базу через Ado по моему нельзя, нужно dao. Таблицу нужно очистить или удалить?

Ответить

Номер ответа: 19
Автор ответа:
 nat-z



Вопросов: 13
Ответов: 85
 Профиль | | #19 Добавлено: 21.11.06 10:10
По моему нужно поставить галочки в пункте References на Microsoft Activex data Object. Сжать базу через Ado по моему нельзя, нужно dao. Таблицу нужно очистить или удалить

Что такое DAO и ADO я еще не читала. А что из них лучше?
А таблицы (не все а по выбору) надо и сжимать и чистить. Но не удалять! И не удалять сам файл.

Ответить

Номер ответа: 20
Автор ответа:
 nat-z



Вопросов: 13
Ответов: 85
 Профиль | | #20 Добавлено: 21.11.06 10:15
По зачетным очкам: у меня и у АлександрР - по 2, avdey - 1, Shark - 0.5. Остальные идут плотной группой - по 0. Так что шансы у всех есть, до Нов Года далеко.
И из неотвеченных вопросов - по подкл dBase,
по <... src-... TITLE=xxxx> в VB (или аналог).

Ответить

Номер ответа: 21
Автор ответа:
 Shark



ICQ: 284036855 

Вопросов: 35
Ответов: 155
 Web-сайт: www.ma26.ru
 Профиль | | #21
Добавлено: 21.11.06 12:44
Так у тебя mdb открывается, DAO и ADO это подходы к работе с БД, ADO чуть сложнее, но больше возможностей. Если ADODB.Connection то ты используешь ADO. А если ты используешь элемент Data то это DAO. Сначала подключить надо, а потом разьиратся. Если mdb сжимать то создается новый маленький файл и исходный надо заменить на него. Насчет очистки я посмотрю

Ответить

Номер ответа: 22
Автор ответа:
 nat-z



Вопросов: 13
Ответов: 85
 Профиль | | #22 Добавлено: 21.11.06 13:37
Так у тебя mdb открывается, DAO и ADO это подходы к работе с БД, ADO чуть сложнее, но больше возможностей. Если ADODB.Connection то ты используешь ADO. А если ты используешь элемент Data то это DAO

Это уже +1.
Т е если у меня на форме элемент Data1, то это обязательно только DAO и слова с "ADO..." использовать нелься?
А то что я в старом вопросе писала значит у меня ADO? и правильно у меня в этом примере написано, без ошибок? Вопрос на +2балла...
Dim cn1 As New ADODB.Connection
Dim rs1 As New ADODB.Recordset
Cn1.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & GBmenu.Pth0 & "\" & “GB.mdb”
Rs1.Source = ("SELECT * FROM GBIND WHERE NPP=1";)
Do Until rs1.EOF
   Next i
   Rs1.MoveNext
Loop

Ответить

Номер ответа: 23
Автор ответа:
 Shark



ICQ: 284036855 

Вопросов: 35
Ответов: 155
 Web-сайт: www.ma26.ru
 Профиль | | #23
Добавлено: 21.11.06 13:45
Их можно использовать совместно будет два подключения к бд,
Dim cn1 As New ADODB.Connection
Dim rs1 As New ADODB.Recordset
Cn1.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & GBmenu.Pth0 & "\" & “GB.mdb”
Rs1.Source = ("SELECT * FROM GBIND WHERE NPP=1";)
Do Until rs1.EOF
   Next i
   Rs1.MoveNext
Loop
этот текст к DAO вообще не относятся, если у тебя есть DATA то он просто не работает.
Еще по моему нужно Rs1.open

Ответить

Номер ответа: 24
Автор ответа:
 Shark



ICQ: 284036855 

Вопросов: 35
Ответов: 155
 Web-сайт: www.ma26.ru
 Профиль | | #24
Добавлено: 21.11.06 13:52
Еще сразу не заметил зачем Next i, Rs1.Open перед циклом

Ответить

Номер ответа: 25
Автор ответа:
 Shark



ICQ: 284036855 

Вопросов: 35
Ответов: 155
 Web-сайт: www.ma26.ru
 Профиль | | #25
Добавлено: 21.11.06 13:54
И еще по моему надо тему перенести в другой раздел, а то администратор будет ругатся

Ответить

Номер ответа: 26
Автор ответа:
 nat-z



Вопросов: 13
Ответов: 85
 Профиль | | #26 Добавлено: 21.11.06 14:30

На оператор: cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & GBmenu.Pth0 & "\" & “GB.mdb”
выдало: "Object required"

А вообще вся конструкция (надо открыть таблицу GBIND и выбрать поля Name, Comment из записей, в которых NPP=1 и все это в файле с формируемым именем: GBmenu.Pth0 & "\" & “GB.mdb”):

Private Sub Form_Load()
Dim i As Integer
Dim ttt, ttt1 As String 'Characters
'' .Source "SELECT NAME, COMMENT FROM GBIND WHERE GBIND.NPP=1"
'Set rs = cn.Execute("SELECT NAME, COMMENT FROM GBIND WHERE GBIND.NPP=1";)

'rs.Open "SELECT NAME, COMMENT FROM GBIND WHERE GBIND.NPP=1", cn
''cn.Open (DSN = "GBIND";)
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & GBmenu.Pth0 & "\" & “GB.mdb”
rs.Source = ("SELECT * FROM GBIND WHERE NPP=1";)
rs.Open
Do Until rs.EOF
   rs.MoveNext
Loop

PS Вот решу хоть этот вопрос и сразу открою новую тему, только опять здесь, а то за забором не отвечают!!

Ответить

Номер ответа: 27
Автор ответа:
 Shark



ICQ: 284036855 

Вопросов: 35
Ответов: 155
 Web-сайт: www.ma26.ru
 Профиль | | #27
Добавлено: 21.11.06 14:43
Строчки перед которыми стоит ' это комментарии они значения не имеют, они просто не работают.
Строчки с " это просто текст он отдельно не используется
насчет "Object required" проверь References на Microsoft Activex data Object

Ответить

Номер ответа: 28
Автор ответа:
 nat-z



Вопросов: 13
Ответов: 85
 Профиль | | #28 Добавлено: 21.11.06 14:54
По моему нужно поставить галочки в пункте References на Microsoft Activex data Object.

Поставила 2.7 (а раньше стояло 2.5). И 2 строки - еще и Library.

Ответить

Номер ответа: 29
Автор ответа:
 -АлександР-



Вопросов: 55
Ответов: 1008
 Web-сайт: sham.clan.su
 Профиль | | #29
Добавлено: 21.11.06 14:55
остались прежние т к я что-то не могу найти Msxbse35.dll
windoes\system32\Msxbse35.dll

А кстати в VB есть что-то как в HTML <totle>, чтобы при наведении курсора на кнопку или что другое открывалось облачко с текстом подсказки?
tooltiptext

форма начинает загружатся и в этот момент не все компоненты работают правильно,
Это здесь абсолютно не при чем.

Эта ошибка происходит вообще скорее при writeproperties. А не load или Activate если уж на то пошло... ;)

остались прежние
А вот сейчас обихусь и уйду

Ответить

Номер ответа: 30
Автор ответа:
 nat-z



Вопросов: 13
Ответов: 85
 Профиль | | #30 Добавлено: 21.11.06 14:57
Строчки перед которыми стоит ' это комментарии
- это я знаю, я сама их и поставила - перебирала много разных вариантов.

А как вообще мне тупо открыть файл xxx.mdb, выбрать из таблицы yyy поля ttt1, ttt2 записей с условием lll ? Что я неправильно в своем примере написала?

Ответить

Страница: 1 | 2 | 3 | 4 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам