Обнаружены символы за пределами инструкции sql access

1
2
3
4
5
INSERT INTO Teachers (КодУчителя, Фамилия, Имя, Отчество, Предмет, НомерТелефона) VALUES(1, Антипина, Светлана, Бронислововна, БД, 23432);
INSERT INTO Teachers (КодУчителя, Фамилия, Имя, Отчество, Предмет, НомерТелефона) VALUES(2, Наговицына, Елена, Александровна, Информ, 21122);
INSERT INTO Teachers (КодУчителя, Фамилия, Имя, Отчество, Предмет, НомерТелефона) VALUES(3, Сычева, Наталья, Витальевна, Информ, 21132);
INSERT INTO Teachers (КодУчителя, Фамилия, Имя, Отчество, Предмет, НомерТелефона) VALUES(4, Сычёв, Даниил, Витальевич, Физра, 23444);
INSERT INTO Teachers (КодУчителя, Фамилия, Имя, Отчество, Предмет, НомерТелефона) VALUES(5, Чепырина, Валентина, Александровна, Экология, 23422);

 
Whippi
 
(2003-01-13 15:56)
[0]

Что за фигня:

Написал простенький запрос к Аксесовской базе:



SELECT Изделия.*, Компоненты.*, Состав.*

FROM Изделия, Компоненты, Состав;

WHERE Изделия.ИЗД=Состав.ИЗД

AND Компоненты.КОМП=Состав.КОМП;



и выдало такую ошибку: Обнаружены символы за пределами инструкций SQL.

Но вот не вижу где ошибка. Ткните носом пожалуйста :))


 
Delirium^.Tremens
 
(2003-01-13 15:58)
[1]

Русские символы


 
Zz_
 
(2003-01-13 16:04)
[2]

FROM Изделия, Компоненты, Состав
;


 
Whippi
 
(2003-01-13 16:11)
[3]

2Delirium^.Tremens:

Какие русские символы,пишу просто:

SELECT Изделия.*, Компоненты.*, Состав.*

FROM Изделия, Компоненты, Состав;
прокатывает, только добавляю:

WHERE Изделия.ИЗД=Состав.ИЗД

AND Компоненты.КОМП=Состав.КОМП;


Выдает:Обнаружены символы за пределами инструкций SQL.

2Zz_


> FROM Изделия, Компоненты, Состав ;



А у меня что?


 
stone
 
(2003-01-13 16:13)
[4]

после FROM Изделия, Компоненты, Состав не надо ставить ;


 
Whippi
 
(2003-01-13 16:20)
[5]

Блиииииииииин,

спасибо за науку, впредь акуратнее буду примеры сдирать :))


#1 11.05.2020 13:59:47

SuperDelfi
Участник
Зарегистрирован: 11.05.2020
Сообщений: 1

Обнаружены символы за пределами инструкции

Необходимо было перехватить код, только что добавленной строки, использовал @@Identity т.к база данных находится на access

INSERT INTO [Автошкола]
([Фамилия], [Имя], [Отчество], [Пол], [Гражданство], [Дата_рождения], [Кол-во], [Категория], [Дата_приёма_на_работу], [Код_прохождения], [Код_принятия], [Код_должности], [Адрес_проживания], [Телефон])
VALUES        (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);
SELECT @@IDENTITY

Выдаёт ошибку о том что «Обнаружены символы за пределами инструкции»
Крик души!

Неактивен

#2 11.05.2020 20:53:43

deadka
Администратор
Зарегистрирован: 14.11.2007
Сообщений: 2415

Re: Обнаружены символы за пределами инструкции

На данном форуме разбираются вопросы по MySQL, Вам имеет смысл обратиться на форум по Microsoft Access.


Зеленый свет для слабаков, долги отдают только трусы, тру гики работают только в консоли…

Неактивен

    msm.ru

    Нравится ресурс?

    Помоги проекту!

    >
    Строка команды SQL

    • Подписаться на тему
    • Сообщить другу
    • Скачать/распечатать тему



    Сообщ.
    #1

    ,

      Junior

      *

      Рейтинг (т): 1

      Подскажите, пожалуйста, какую строку команды запроса надо ввесли в объект OleDbCommand, чтобы считать две таблицы из БД?
      Ввожу:»

      ExpandedWrap disabled

        SELECT * FROM T1;

      «+»

      ExpandedWrap disabled

        SELECT * FROM T2

      «- выдает: «Обнаружены символы за пределами инструкции SQL»

      Сообщение отредактировано: Bas


      Бобёр



      Сообщ.
      #2

      ,

        бухантер

        ******

        Рейтинг (т): 120

        так вроде ж нельзя 2 сразу то..

        Monster

        Akina



        Сообщ.
        #3

        ,

          ExpandedWrap disabled

            «SELECT * FROM T1 UNION SELECT * FROM T2;»

          Wizard

          Bas



          Сообщ.
          #4

          ,

            Цитата Akina @

            ExpandedWrap disabled

              SELECT * FROM T1 UNION SELECT * FROM T2;

            Если только структуры одинаковые.

            Цитата __Dim__ @

            чтобы считать две таблицы из БД

            ExpandedWrap disabled

              SELECT * FROM T1, T2

            Monster

            Akina



            Сообщ.
            #5

            ,

              Цитата Bas @

              Если только структуры одинаковые.

              А иначе постановка вопроса теряет всякий смысл…


              jManiak



              Сообщ.
              #6

              ,

                А мне кажется Автору нужно просто выполнить два запроса к СУБД, но он хочет впихнуть их в однй операцию :)


                __Dim__



                Сообщ.
                #7

                ,

                  Junior

                  *

                  Рейтинг (т): 1

                  Спасибо всем :)
                  В принципе вопрос появился в связи с использованием DataSet, когда необходимо загрузить все БД, хотя структуры таблиц разные. Подобный запрос делал по подобию с БД.sql, из книги: «SELECT FN,LN FROM T1;»+»SELECT VAL FROM T2», т.к. только изучаю… :unsure:

                  Monster

                  Akina



                  Сообщ.
                  #8

                  ,

                    Цитата __Dim__ @

                    необходимо загрузить все БД, хотя структуры таблиц разные

                    Ну тогда это нерешаемо… или нужно все соответствующие выбираемые поля приводить к одинаковому типу, скажем строковому.

                    ExpandedWrap disabled

                      SELECT CStr(Date) As Date, CStr(Amount) As Amount, Name

                      FROM Table1

                      UNION

                      SELECT CStr(Date(DateTime)), strValue, CStr(Articul)

                      FROM T2


                    __Dim__



                    Сообщ.
                    #9

                    ,

                      Junior

                      *

                      Рейтинг (т): 1

                      Понятно, спасибо :)

                      0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)

                      0 пользователей:

                      • Предыдущая тема
                      • Базы данных: Общие вопросы
                      • Следующая тема

                      Рейтинг@Mail.ru

                      [ Script execution time: 0,0264 ]   [ 15 queries used ]   [ Generated: 24.09.23, 15:07 GMT ]  

                      Привет!

                      Использую OleDbCommand. В качестве запроса использую несколько операций INSERT. При выполнении команды (ExecuteNonQuery()) возникает исключение. Если в команде один INSERT все проходит хорошо, если несколько ничего не получается. В качестве разделителя все использовал и ; и GO и просто строками дробил. Как решить эту проблему?

                      Спасибо.

                      Здравствуйте, <Аноним>, Вы писали:

                      А>Использую OleDbCommand. В качестве запроса использую несколько операций INSERT. При выполнении команды (ExecuteNonQuery()) возникает исключение. Если в команде один INSERT все проходит хорошо, если несколько ничего не получается. В качестве разделителя все использовал и ; и GO и просто строками дробил. Как решить эту проблему?

                      А текст исключения является Вашей комерческой тайной или вы уверены, что он не может помочь ответить на вопрос?
                      Если подключить телепатию, то могу предположить, что OleDb провайдер попросту не поддерживает такие операции.

                      … << RSDN@Home 1.2.0 alpha rev. 665>>
                      Now playing: «Тихо в лесу…»

                      Help will always be given at Hogwarts to those who ask for it.

                      Если команды пишутся через «;», то выдается исключение:
                      System.Data.OleDb.OleDbException was caught
                      Message=»Обнаружены символы за пределами инструкции SQL.»
                      Source=»Microsoft JET Database Engine»
                      ErrorCode=-2147217900
                      StackTrace:

                      Если команды пишутся без «;», то выдается исключение:
                      System.Data.OleDb.OleDbException was caught
                      Message=»Произошла одна или несколько ошибок во время обработки команды.»
                      Source=»Microsoft JET Database Engine»
                      ErrorCode=-2147217900
                      StackTrace:

                      Здравствуйте, Аноним, Вы писали:

                      Так в чём проблема выполнить раздельно?
                      Открываешь транзакцию, выполняешь в цикле все команды, закрываешь транзакцию.
                      Отлов исключений ставишь там где надо.

                      I am Jack’s Bugged Code.

                      Здравствуйте, <Аноним>, Вы писали:

                      А>Если команды пишутся через «;», то выдается исключение:

                      А>System.Data.OleDb.OleDbException was caught
                      А> Message=»Обнаружены символы за пределами инструкции SQL.»
                      А> Source=»Microsoft JET Database Engine»

                      Очень сомневаюсь, что Джет поддерживает такой способ работы, как несколько команд, разделённых точкой с запятой.

                      … << RSDN@Home 1.2.0 alpha rev. 665>>
                      Now playing: «Тихо в лесу…»

                      Help will always be given at Hogwarts to those who ask for it.

                      Здравствуйте, Аноним, Вы писали:

                      А>Использую OleDbCommand. В качестве запроса использую несколько операций INSERT. При выполнении команды (ExecuteNonQuery()) возникает исключение. Если в команде один INSERT все проходит хорошо, если несколько ничего не получается. В качестве разделителя все использовал и ; и GO и просто строками дробил. Как решить эту проблему?

                      Джет в принципе не умеет выполнять несколько команд, вызванных за раз. Команды GO там вовсе нет.
                      Сделайте два вызова.

                      Понравилась статья? Поделить с друзьями:

                      А вот и еще интересные новости по теме:

                    • Раствор кандида для обработки полости рта цена инструкция по применению
                    • Бортовой компьютер на ваз 2114 multitronics инструкция по эксплуатации
                    • Pdf руководство по эксплуатации mercedes benz
                    • Intelligent solar charge controller инструкция на русском
                    • Встраиваемый духовой шкаф bosch инструкция по эксплуатации на русском языке

                    • 0 0 голоса
                      Рейтинг статьи
                      Подписаться
                      Уведомить о
                      guest

                      0 комментариев
                      Старые
                      Новые Популярные
                      Межтекстовые Отзывы
                      Посмотреть все комментарии