2013-11-28 2 views
0

кажется легким, но я не так, как это не работает, он дал Сообща ошибке (Ошибку синтаксиса в инструкции INSERT INTO заявления) ..SQL INSERT INTO заявления не работает VBA

Call Connect_to_db 

strSQL = "INSERT INTO Table2 (Name, StaffNumber , Title , Number , ext , Nationalty , Section , Sector , Side , Department , Civil , Job_title) Values ('" & addName.TExt & "', " & Val(addStaffID.TExt) & ", '" & addTitle.TExt & "', " & Val(addNumber.TExt) & " , " & Val(addExt.TExt) & " , '" & addNation.TExt & "', '" & addSection.TExt & "', '" & addSector.TExt & "', '" & addSide.TExt & "', '" & addDept.TExt & "' , " & Val(addCivil.TExt) & ", '" & addJob.TExt & "' )" 
Debug.Print strSQL 
cn.Execute strSQL 

MsgBox ("Data Added to the Database") 

Call Close_db 

Всех типов данных текст, за исключением (StaffNumber, ext, Number, Civil) - номер

Я считаю, что мне нужно, чтобы Trim перед каждым, но я не думаю, что это причина проблемы.

+0

Можете ли вы поделиться сгенерированный SQL? 'Debug.Print strSQL' – Sam

+0

INSERT INTO Table2 (Name, StaffNumber, Title, Number, ext, Nationalty, Section, Sector, Side, Department, Civil, Job_title) Значения ('Ali', 55, 'Mr.', 54654, 454, «KUW», «Риск», «COM», «Рынок», 1251, «Супервизор») @Sam – SQB

+2

национальность или национальность? –

ответ

0

Вы не указали значение Job_title в предложении VALUES. Также у вас есть окошки Department и Civil.

Вот как это должно быть:

INSERT INTO Table2 
    ([NAME], 
    StaffNumber, 
    Title, 
    Number, 
    ext, 
    Nationalty, 
    Section, 
    Sector, 
    Side, 
    Department, 
    Civil, 
    Job_title) 
VALUES 
    ('" & addName.TExt & "', 
    " & Val(addStaffID.TExt) & ", 
    '" & addTitle.TExt & "', 
    " & Val(addNumber.TExt) & ", 
    " & Val(addExt.TExt) & ", 
    '" & addNation.TExt & "', 
    '" & addSection.TExt & "', 
    '" & addSector.TExt & "', 
    '" & addSide.TExt & "', 
    '" & addDept.TExt & "', 
    " & Val(addCivil.TExt) & ", 
    ADD_JOB_TITLE_VALUE_HERE) 
+0

Я обновляю код .. но ту же ошибку – SQB