Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.08.27;
Скачать: CL | DM;

Вниз

Объединение 3-х полей таблицы Paradox в одно.   Найти похожие ветки 

 
Semen   (2010-05-17 22:45) [0]

В структупе таблицы Paradox  имеются три поля: Фамилия, Имя, Отчество. Есть необходимость объединить их в одно поле - ФИО.
Возможно ли это? Все операторы SQL изучил, ничего подобного там не нашел.


 
turbouser ©   (2010-05-17 22:49) [1]

оператор конкатенации ||
т.е. "Иванов"||" "||"Иван"||" "||"Иванович" = "Иванов Иван Иванович"


 
Semen   (2010-05-18 08:29) [2]


> оператор конкатенации ||

поможет при выводе записей из таблицы.
Речь идёт - поменять структуру таблицы: из трёх полей сделать одно?


 
oldman ©   (2010-05-18 08:44) [3]

Добавить поле, пройтись в цикле, вставить данные, удалить три поля.
Любым редактором таблиц.
Программу писать не надо.


 
Sergey13 ©   (2010-05-18 09:35) [4]

> [0] Semen   (17.05.10 22:45)
> Все операторы SQL изучил, ничего подобного там не нашел.

Значит не все. ALTER TABLE неужели не встречал?
Только не советую объединять. С раздельными проще и лучше. Объединить всегда можно. И инициалы сделать вместо имени-отчества. А вот в случае одного поля разделить и "обинициалить" гораздо сложнее.


 
turbouser ©   (2010-05-18 10:09) [5]


> Semen   (18.05.10 08:29) [2]


> Речь идёт - поменять структуру таблицы: из трёх полей сделать
> одно?

Зачем такая денормализация??


 
Semen   (2010-05-18 10:25) [6]


> ALTER TABLE неужели не встречал?

Встречал, читал, однако ALTER TABLE в большинстве случаев используют чтобы изменить таблицу посредством оператора: добавить столбцы, переименовать и т.д., что можно сделать с помощью Database Desktop.
ALTER TABLE позволяет изменить структуру существующей таблицы. Например, можно добавлять или удалять столбцы, создавать или уничтожать индексы, изменять тип существующих столбцов или переименовывать столбцы и сами таблицы. Можно также изменять комментарии для таблиц и их тип.
В синтаксисе ALTER TABLE написано:
ALTER TABLE [имя таблицы]
ADD [COLUMN]
MODIFY [COLUMN]
ADD INDEX [имя_индекса]
PRIMARY KEY [тип_индекса]
ALTER [COLUMN] имя_столбца  
а как это реализовать на практике?


> Добавить поле, пройтись в цикле, вставить данные, удалить
> три поля.

Сергей Владимирович! Что добавить поле - это мне понятно, все остальное, если можно практически.


 
Sergey13 ©   (2010-05-18 10:39) [7]

> [6] Semen   (18.05.10 10:25)

А, я понял. Ты к готовым компонентам привык. Кинул компонент - объединил 3 поля в одно. Для обединения 4 полей нужно искать другой компонент.
Ну гугли тогда. Говорят ищущий да обрящет.


 
MonoLife ©   (2010-05-18 11:51) [8]

> Semen
Ну, создай пустую таблицу и с пом. того же TTable выполни
> oldman ©   (18.05.10 08:44) [3]
в новую таблицу
хотя это почти то же самое, что в [3]


 
oldman ©   (2010-05-18 12:49) [9]


> > Добавить поле, пройтись в цикле, вставить данные, удалить
> > три поля.
>
> Сергей Владимирович! Что добавить поле - это мне понятно,
>  все остальное, если можно практически.


Create fio
 replace all fio with fam+im+otch
   или
 while not eof() do fio=(fam+im+otch)
delete fam
delete im
delete otch

На русский переводи сам


 
Демо ©   (2010-05-18 12:49) [10]

1. Добавляешь столбец
2. UPDATE <TableName> SET <NewField>=<OldField1>||<OldField2>||<OldField3>
3. Удаляешь ненужные столбцы


 
Semen   (2010-05-18 22:03) [11]

Фантастика, спасибо большое всем за помощь.



Страницы: 1 вся ветка

Текущий архив: 2010.08.27;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.06 c
15-1273216756
Ivan
2010-05-07 11:19
2010.08.27
Отчет в Delphi


2-1268654563
Thesis
2010-03-15 15:02
2010.08.27
Битовая логика


2-1269192497
Мевилл
2010-03-21 20:28
2010.08.27
Индексы в delphi 2009


2-1270885260
roman2
2010-04-10 11:41
2010.08.27
Координаты точки


2-1266257727
lamer6666
2010-02-15 21:15
2010.08.27
ZQuery1AfterScroll работает долго