Я работаю с asp classic. Я пытаюсь взять информацию от пользователя, а затем вставить в мою базу данных.Вставить в sql заявление - asp classic - нет значения -
ошибка «значение не указано». on line: myCon.Execute (sql);
Я думаю, что это исходит из моего заявления sql.
var myCon, myRec, sql;
myCon = new ActiveXObject ("ADODB.Connection");
myCon.Open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\Users\\abc.mdb");
var bodyType = parseInt(Request.Form("cbBodyType"));
var education = parseInt(Request.Form("cbEducation"));
var eyes = parseInt(Request.Form("cbEyes"));
var hairs = parseInt(Request.Form("cbHairs"));
var heights = parseInt(Request.Form("cbHeights"));
var religion = parseInt(Request.Form("cbReligion"));
var memberID = parseInt(Session("MemberID"));
sql = "INSERT INTO Profiles (MemberID, Religion, HairColor, Eye, Education, Height, BodyType) VALUES ("+memberID+", "+religion+", "+hairs+", "+eyes+", "+education+", "+heights+", "+education+")";
myCon.Execute(sql);
myCon.Close();
EDIT: Проблема есть логика. У меня есть, например, таблица HairColor с идентификатором и описанием. ID - это первичный ключ, а его внешний ключ - в профиле таблицы. Когда мой пользователь вводит информацию, я хотел бы восстановить значение combobox, получить идентификатор, а затем сделать INSERT INTO PROFILES.
Есть ли простой способ сделать это, вместо того чтобы использовать много «где утверждение»?
сделать любую основную отладку, как выплевывая 'sql' строки, генерируемой увидеть, как это выглядит? и если вы пытаетесь вставить тип bodytype, почему вы указываете значение «education» для этого поля? –
Я действительно отлаживал. Я разделил его и получил ту же ошибку. «нет значения» – NewPassionnate
Я думаю, что это происходит из моих двойных котировок – NewPassionnate