powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Заполяение талицы из текстового файла
6 сообщений из 6, страница 1 из 1
Заполяение талицы из текстового файла
    #32722276
Хоттабыч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я пытаюсь заполнить таблицу из текстового файла(LOAD DATA INFILE "tab1.txt" INTO TABLE tab1;). Один из стобцов таблицы является датой (тип DATA : гггг-мм-дд ). Я его в текстовом файле заполняю. например следующим образом:
2002-08-25
NULL
\N

При просмотре таблицы ( SELECT * FROM tab1;) соответствующий столбец выглядит:
----+--------------+---
| УВОЛЕН |
----+--------------+---
| 2002-08-25 |
| 0000-00-00 |
| 0000-00-00 |

хотя , как учат нас руководства по MySQL, должен иметь вид :

----+--------------+---
| УВОЛЕН |
----+--------------+---
| 2002-08-25 |
| NULL |
| NULL
Как нужно правильно либо заполнить текстовый файл, либо написать команду LOAD DATA .... ?
Из-за неправиьного заполнения я не могу выполнить команду SELECT ... WHERE УВОЛЕН="NULL";

WINDOWS XP, mysql-4.0.18-win
...
Рейтинг: 0 / 0
Заполяение талицы из текстового файла
    #32722305
Фотография Хрен
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
where чегототам=NULL ? Так нельзя писать. Сравнение с NULL недопустимо. Можно только

where чегототам is null

Или это у вас строка такая? "NULL" Тогда тем более непонятно что должно получиться. И откуда там могут появиться строковые значения "NULL"


почему бы вам не делать where uvolen='0000-00-00' ?
...
Рейтинг: 0 / 0
Заполяение талицы из текстового файла
    #32722419
Попробуй указать lines terminated:

Код: plaintext
1.
2.
LOAD DATA LOCAL INFILE 'tab1.txt'
INTO TABLE tab1
LINES TERMINATED BY '\r\n';
...
Рейтинг: 0 / 0
Заполяение талицы из текстового файла
    #32723098
max(id)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ты часом не через ODBC работаешь? А то у него есть такая особенность: конвертить NULL в 'ноль', т.е. в твоем случае в '0000-00-00'.
...
Рейтинг: 0 / 0
Заполяение талицы из текстового файла
    #32725666
Хоттабыч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я немного разобрался, как нужно вносит данные в текстовый файл, чтобы ини были правильно перенесены в таблицу командой LOAD DATA INFILE "textdata.txt" INTO TABLE tab1;
1. Для выполнения этой команды необходимо, чтобы текстовый файл textdata.txt находился в каталоге базы dB1, которой принадлежит заполняемая таблица tab1 ( ....\mysql\data\db1\textdata.txt )
2. Вносим в файл первое данное и нажимем кнопку табуляции, второе данное -- кнопка табуляции и т. д. ( знаки табуляции и перевода каретки являются по умолчанию в приведенной выше форме команды LOAD... соответственно разделителями данных в записи и записей между собой ). На что нужно обратить внимание -- это последнее данное в записи нужно обязательно закрыть табуляцией , и только после этого сделать переход (ENTER) на новую строку (Я не знал, что нужно так делать, и из-зо чего возник мой вопрос). Тогда код \N, стоящий последним в записи, будет провильно преобразовываться в NULL ( а не в 0000-00-00). И вообще, если не закрыть последнее поле табуляцией перед переходом на новую строку, таблица будет заполняться неправильно.
3. У меня значение вписанное в текстовый файл значение \N вносится в таблицу как и положено --NULL. а вот если вписать в текстовый файл NULL ( что тоже разрешено мануалом), он вноситься не как NULL. Причину я не знаю.

Всем, кто откликнулся -- спасибо
...
Рейтинг: 0 / 0
Заполяение талицы из текстового файла
    #32726534
Здается мне, что Вы только запутались :)
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Заполяение талицы из текстового файла
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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