Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

БД. Можно ли записать данные в формате string?

Денис Черемных Гуру (2837), на голосовании 1 месяц назад
Короче есть 2 таблицы: Вещь и Цвет, они связаны. Получается, что когда мы запоняем таблицу [Вещь], нам нужно указать ID Цвета. Но, вопрос в том, можно ли сделать так, чтобы вместо ID выводился string формат. Тоесть не ID, а сразу значение под ним в запросе и в бд. Использую NeonConsole(Postgre)
Голосование за лучший ответ
Несмачный Дмитрий Профи (871) 2 месяца назад
Вообще то да, можно, но для этого вам надо изучить сам язык SQL, в процессе вы поймете что вам надо (а то вы сперва говорите о ЗАПОЛНЕНИИ таблицы, а потом о том, чтобы цвет ВЫВОДИЛСЯ, совершенно непонятно, что вы, собственно, хотите). SQL очень гибкий язык, заточенный на работу с таблицами, в нем можно реализовать практически все, но в первую очередь надо понимать что вы хотите сделать. Ответить на вопрос "как именно" в вашем случае невозможно - вы не привели ни структуры таблиц ни названия полей - ничего...
Роман ЛетневМастер (1038) 2 месяца назад
sql не является языком, это лишь структура данных. Не нужно его называть языком программирования.
Несмачный Дмитрий Профи (871) Роман Летнев, ? Структура данных это например: таблица, стек, дерево, список... А SQL это именно язык. Structured Query Language. Его даже полноценным языком программирования с натяжкой можно назвать - там и ветвление есть и подпрограммы и переменные... А уж языком обработки данных его не просто можно, но и нужно называть. Вы с базой данных SQL не путаете?
Юрий Семыкин Искусственный Интеллект (204773) 2 месяца назад
Вывод любой внутренней конструкции в строку называется "сериализация". Она вам нужна. Надеюсь, вы достаточно догадливы, чтобы поискать и выяснить, что это такое.
Владимир Ворников Профи (926) 2 месяца назад
Да, можно. Но нужно ли, это другой вопрос. Ваш вопрос касается больше NeonConsole, не все пользуются данным сайтом и его интерфейсами и поэтому имеют право не знать. Итак, на вопрос, можно ли чтобы вместо ID подставлялось имя цвета, да - сделайте имя цвета вместо ID, первичным ключом в таблице Цвет, а в таблице Вещь, ID цвета поменяйте на имя цвета. Насчёт нужно ли - нет, первичными ключами являются уникальные цифровые идентификаторы. А результат который Вы хотите получить в виде значений из таблицы Вещь, дополненных именем цвета, выполняется без внесений изменений в Ваши существующие таблицы запросом:
 SELECT В.*, Ц.< имя цвета > 
FROM Вещь В
JOIN Цвет Ц ON В.< ID цвета > = Ц.< ID цвета >;
Похожие вопросы