Выполнение из оператора выберите * в возвращаемой ошибке

if(myChar=="\n")
           ^  ^

Вы сравниваете myChar неправильно. Попробуйте это вместо:

if(myChar == '\n') 
             ^  ^

Вторая проблема заключается в том, что getchar возвращает int, а не char. Возможно, вы можете переписать его так:

int myChar;
while((myChar = getchar()) != EOF && myChar != '\n')
{
    /* Your stuff. */
}

EDIT

В свете комментариев я думаю, что некоторые операции stdio до этого while оставляют \n в буфере .

Вместо scanf("%d", &radix) попробуйте:

scanf("%d ", &radix);
         ^

Это пространство сделает scanf съедать оставшиеся пробелы (включая новую строку).

0
задан marc_s 27 February 2019 в 17:31
поделиться

2 ответа

Это создаст пустую таблицу с именем ETMP_TESTE со структурой таблицы SAJ.EASJOBJETO.

CREATE TABLE ETMP_TESTE AS
SELECT *
FROM SAJ.EASJOBJETO
WHERE 1 = 0;

Это не обрабатывает ограничения и первичные ключи и тому подобное, но оно даст вам структуру таблицы. 1 = 0 гарантирует, что данные не копируются.

Если вам нужны первичные ключи и тому подобное, посмотрите на извлечение DDL для EASJOBJETO. Большинство SQL IDE имеют эту встроенную функциональность. Вы можете отредактировать его, чтобы исправить имя таблицы, запустить скрипт и получить все.

0
ответ дан EvilTeach 27 February 2019 в 17:31
поделиться

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

CREATE TABLE SAJ.ETMP_TESTE 
AS   SELECT *  
FROM SAJ.ESAJOBJETO O 
WHERE CDOBJETO = 'P800000000J03'
0
ответ дан scaisEdge 27 February 2019 в 17:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: