2009-06-30 3 views
0

Как вставить запись установленное значениеКак вставить значение записи в таблицу?

Am имея 6 полей в записи установлен

Я хочу, чтобы вставить в таблицу? Как я могу вставить.

Используется запрос

INSERT INTO table values (recordset (0), recordset (1) ….. recordset (6)) 

Но Он показывает неопределенную функцию «» записи

Пожалуйста, как вставить заданное значение записи в к столу?

Запрос помощи?

+0

Пожалуйста, предоставьте подробное описание того, что вы пытаетесь выполнить. Что это за «набор записей»? Это ADO RecordSet? –

ответ

0
Dim cmdCommand As New ADODB.Command 
If recordSet.EOF = False Then 

recordSet.MoveFirst 

cmdCommand.CommandText = "insert into table (field1) values (" + recordSet.Fields(0) + ")" 
cmdCommand.Execute() 
recordSet.MoveNext 
Loop Until recordSet.EOF = True 

Имейте в виду, что вы будете нуждаться в кавычки VARCHAR полей

0

Попробуйте с recordsetname.fields («поле_формы») и проверить, что переменная recorsetname была определена. Вы также можете использовать синтаксис recordsetname! Field_name.

0

Konstantinos дает хороший ответ, но вам просто нужно быть осторожным с потенциальными проблемами SQL-инъекций.

Простейшим решением было бы просто заменить любые отдельные апострофы на два.

.CommandText = "вставить в таблицу (field1) значения ('" & Заменить (recordSet.Fields (0), "'", "'") & "')"

0

Это звучит, как вы 'пытаемся вставить несколько записей с помощью одного оператора (один INSERT для 6 записей вместо 6 INSERT для 1 записи каждого). Если это так, то INSERT syntax полностью поддерживает его.

Вот пример:

INSERT INTO MyTable 
    (row1, row2) 
SELECT 
    value1, value2 
FROM 
    OtherTable 

Когда вы смотрите на это так, что вы можете взять любой ЗЕЬЕСТ и поставить условие INSERT поверх него. Конечно, имена столбцов должны правильно выстраиваться в очередь, чтобы они работали.

Смежные вопросы