VB-SQL-Access 2000

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
PAHA
Начинающий
Начинающий
 
Сообщения: 12
Зарегистрирован: 25.01.2005 (Вт) 1:46
Откуда: Великие Луки

VB-SQL-Access 2000

Сообщение PAHA » 16.04.2005 (Сб) 18:14

Попогите плиз что делаю не так!!!


через рекордсет все работает а SQL нет
Код: Выделить всё
.Adodc2.RecordSource = "UPDATE Поступление SET Остаток=3 WHERE АРТ=3"
.Adodc2.Refresh

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 16.04.2005 (Сб) 18:36

Ты уверен, что Поступление и Остаток это имена полей, а не их Caption?
Lasciate ogni speranza, voi ch'entrate.

PAHA
Начинающий
Начинающий
 
Сообщения: 12
Зарегистрирован: 25.01.2005 (Вт) 1:46
Откуда: Великие Луки

Сообщение PAHA » 16.04.2005 (Сб) 18:51

Поступление - таблица
Остаток - столбец
Арт - код строки

Если предложение SELECT то все работает если UPDATE или DELETE нет :( во как

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 16.04.2005 (Сб) 19:02

Сразу и не заметил.
А ты мне объясни, как результат UPDATE или DELETE может быть рекордсетом? Он же ничего не возвращает.

Что по твоему должен вернуть указанный код?
Lasciate ogni speranza, voi ch'entrate.

PAHA
Начинающий
Начинающий
 
Сообщения: 12
Зарегистрирован: 25.01.2005 (Вт) 1:46
Откуда: Великие Луки

Сообщение PAHA » 16.04.2005 (Сб) 19:07

в этом все и дело что нужно не через рекордсет а просто изменить или удалить запись
везде когда DELETE делают вроде серез какойто Execute куда его запихнуть не знаю :(

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 16.04.2005 (Сб) 19:10

Контролом никогда не пользовался, я обычно делал это так:
cnn.Execute "DELETE FROM ..."
где cnn - объект ADODB.Connection
Lasciate ogni speranza, voi ch'entrate.

PAHA
Начинающий
Начинающий
 
Сообщения: 12
Зарегистрирован: 25.01.2005 (Вт) 1:46
Откуда: Великие Луки

Сообщение PAHA » 16.04.2005 (Сб) 19:21

Тоесть типа
Код: Выделить всё
Option Explicit

Private DEL()

Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset

With cn
    'Если база 2000, то провайдер такой:
    .Provider = "Microsoft.Jet.OLEDB.4.0"
        'указываем путь к нашей базе
    .ConnectionString = "mb2.mdb"
    'открываем конекшн
    .Open
End With

'Устанавливаем свойства рекордсета и открываем его

With rs
    .ActiveConnection = cn
    .LockType = adLockReadOnly
    .CursorType = adOpenDynamic
    'делаем выборку взависимости от введенных чисел
    .Source = "DELETE ля ля ля "
    .Open
End With

'убиваем объекты
Set rs = Nothing
Set cn = Nothing

End Sub

PAHA
Начинающий
Начинающий
 
Сообщения: 12
Зарегистрирован: 25.01.2005 (Вт) 1:46
Откуда: Великие Луки

Сообщение PAHA » 16.04.2005 (Сб) 19:25

да забыл такой код ругается на Set не понятными словами :lol: :lol:

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 16.04.2005 (Сб) 19:29

Я бы сделал по другому.
Код: Выделить всё
Dim cnn As ADODB.Connection
...
Set cnn = New ADODB.Connection
cnn.Open "Microsoft.Jet.OLEDB.4.0;Data Source=C:\db1.mdb"
cnn.Execute "DELETE ..."
cnn.Close
Set cnn = Nothing
Lasciate ogni speranza, voi ch'entrate.

PAHA
Начинающий
Начинающий
 
Сообщения: 12
Зарегистрирован: 25.01.2005 (Вт) 1:46
Откуда: Великие Луки

Сообщение PAHA » 16.04.2005 (Сб) 19:34

Все спасибо разобрался на код внимания не обращай, это не мой так вставил что подруку попалось :lol: :lol:


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex-бот и гости: 29

    TopList