2013-11-20 7 views
0

Я получаю эту ошибку Missing semicolon (;) at end of SQL statement. когда я запускаю этот код:Отсутствует точка с запятой (;) в конце инструкции SQL. Запятая уже существует

Dim cmd3 As OleDbCommand = New OleDbCommand("INSERT INTO Tickers (Quarter_Balance_Sheets) VALUES (Scrapalbe) WHERE Ticker = A;", con) 
cmd3.ExecuteNonQuery() 

Что я делаю неправильно?

ответ

4

Отредактированы ..

К сожалению. После повторного чтения вы не можете использовать WHERE в инструкции INSERT, освободить предложение WHERE или сделать инструкцию UPDATE.

INSERT INTO ... WHERE недействительный запрос.

Если вставка Вы разместили имеет правильные значения и столбцы, обновление должно быть:

Dim cmd3 As OleDbCommand = New OleDbCommand("UPDATE Tickers SET Quarter_Balance_Sheets = 'Scrapalbe' WHERE Ticker = 'A';", con) 
cmd3.ExecuteNonQuery() 
+0

Я получаю ту же ошибку, если она удалена. – gromit1

+0

Что будет выглядеть инструкция UPDATE? – gromit1

+1

@ gromit1 смотреть редактирование. – Jaxedin

3

Недостающие котировки WHERE Ticker = 'A' и в VALUES ('Scrapalbe')

редактирования: @Engerlost прав, where не применяется к insert; вам все еще нужна цитата, но падение where... полностью

+0

Я попробовал ваше предложение, и я получил ту же ошибку. 'Отсутствует точка с запятой (;) в конце инструкции SQL.' – gromit1

+0

@LarsTech Я использую Microsoft Access. Это то, что вы имели ввиду? – gromit1

+0

@EricPetroelje Я все равно получаю ту же ошибку, когда я пытаюсь «WHERE Ticker =« A'' »и« VALUES («Scrapalbe») ' – gromit1

0

проблема в вашем запросе вы используете, где в вашем вставить заявление.

запрос является,

insert into Tablename (val1, val2, ...) values(val1, val2,....)