powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Проблема с созданием таблицы :(
6 сообщений из 6, страница 1 из 1
Проблема с созданием таблицы :(
    #35686391
stas123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здраствуйте, помогите пожалуйста решить проблему. Есть файл CreateTables.sql вот его содержимое:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
CREATE TABLE qwert.Rabocije
(ID        CHAR ( 11 )    NOT NULL PRIMARY KEY, 
 Imia    VARCHAR ( 20 ) NOT NULL, 
 Familija   VARCHAR ( 20 ) NOT NULL, 
 DataRozdenija   DATE         NOT NULL, 
 Zarplata      FLOAT        NOT NULL, 
 Telefon CHAR ( 11 ), 
 Dolznost  VARCHAR ( 20 ) NOT NULL, 
 RabotaetOt  DATE         NOT NULL);
 
CREATE TABLE qwert.Klient (
 ID CHAR ( 11 ) NOT NULL PRIMARY KEY,
 Imia VARCHAR ( 20 ) NOT NULL,
 Familija VARCHAR ( 20 ) NOT NULL,
 Telefon CHAR ( 11 ),
 Ulica VARCHAR ( 10 ),
 Dom INT,
 Kvartira INT,
 Registrirval CHAR ( 11 ) NOT NULL,
 RegData DATE NOT NULL DEFAULT CURRENT DATE,
  FOREIGN KEY Rabocije(Registrirval) REFERENCES qwert.Rabocije
 ON DELETE SET NULL ON UPDATE RESTRICT);

Пробую выполнить комманду:
db2 -t -f CreateTables.sql и получаю ошибку:
Код: plaintext
1.
2.
3.
4.
5.
6.
[DB/ 2 ][qwert@linux5 dbvs]$ db2 -t -f CreateTables.sql
DB21034E  The command was processed as an SQL statement because it was not a
valid Command Line Processor command.  During SQL processing it returned:
SQL0104N  An unexpected token "CREATE TABLE QWERT.RABOCIJE  (ID     "
was found following "BEGIN-OF-STATEMENT".  Expected tokens may include:
"<space>".  SQLSTATE= 42601 

Database server = DB2/LINUX 7.2.5

Подскажите пожалуйста что я делаю не правильно?
...
Рейтинг: 0 / 0
Проблема с созданием таблицы :(
    #35686395
stas123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
База IBM DB/2
...
Рейтинг: 0 / 0
Проблема с созданием таблицы :(
    #35686557
mustaccio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Файл, поди, с виндовс прислали? Посмотрите, нет ли в нем ^M (возвратов каретки).
...
Рейтинг: 0 / 0
Проблема с созданием таблицы :(
    #35686594
stas123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Гм, возможно из за этого, но я точно неуверен, посмотрел в notepad++ все символы, в конце строк везде [CR][LF], нажал преобразовать в Unix формат, теперь в конце показывает [LF] попробовал выполнить, получил ошибку:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
[DB/ 2 ][stkr6769@linux5 dbvs]$ db2 -t -f CreateTables2.sql
DB20000I  The SQL command completed successfully.

DB21034E  The command was processed as an SQL statement because it was not a
valid Command Line Processor command.  During SQL processing it returned:
SQL0629N  SET NULL cannot be specified because FOREIGN KEY "RABOCIJE"
cannot contain null values.  SQLSTATE= 42834 
Я так понимаю ошибка была именно в символе переноса каретки, а теперь эта ошибка, уже ошибка синтаксическая?
...
Рейтинг: 0 / 0
Проблема с созданием таблицы :(
    #35686598
stas123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
получил две ошибки:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
DB21034E  The command was processed as an SQL statement because it was not a
valid Command Line Processor command.  During SQL processing it returned:
SQL0629N  SET NULL cannot be specified because FOREIGN KEY "DARBUOTOJUI"
cannot contain null values.  SQLSTATE= 42834 

DB21034E  The command was processed as an SQL statement because it was not a
valid Command Line Processor command.  During SQL processing it returned:
SQL0548N  A check constraint that is defined with "CURRENT" is invalid.
SQLSTATE= 42621 
...
Рейтинг: 0 / 0
Проблема с созданием таблицы :(
    #35687084
Vladimir Kiselev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
stas123,

Немного не в тему, но:
Код: plaintext
ID        CHAR ( 11 )    NOT NULL PRIMARY KEY
БД очевидно маленькая будет?
Чем INTEGER не понравился в качестве PRIMARY KEY?
Здесь уже были дебаты по поводу индексов по целым полям и текстовым, overhead обуспечен.

А по сути всё просто (запустил на винде):
DB21034E Данная команда обрабатывалась как оператор SQL, поскольку она не
является допустимой командой процессора командной строки. При обработке SQL
было получено сообщение:
SQL0629N Нельзя задать опцию SET NULL, поскольку столбец или FOREIGN KEY
"RABOCIJE" не может содержать пустых значений. SQLSTATE=42834
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Проблема с созданием таблицы :(
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]