Ламерский вопрос по SQL

zrab

Возьмем, например, MySQL. С помощью нее можно писать какие- либо программы или просто создавать, изменять и удалять таблицы, а для более практических целей надо уже совмещать MySQL c С++, с Java и т.д. ?
З.Ы. Когда смотрел документацию, ничего кроме ф-й для запросов не нашел.

skvoria

Смотря что ты подразумеваешь под программами.
Например, mysql может выполнять арифметические операции

zrab

Смотря что ты подразумеваешь под программами.
Например, mysql может выполнять арифметические операции
Да, например,

SELECT (1+2)*4;
Но я имею ввиду более сложные. К примеру, можно ли писать какие-либо функции, которые в самом SQL не заданы, и использовать их?

Boris1980

Для начала

select (1+2)*4
from dual;

SELECT (1+2)*4
Бизнес логику приложений можно реализовывать посредством хранимых процедур/функций и триггеров. Смотри в сторону PL/SQL.
Но все равно понадобится написание какого-либо клиента к базе данных с приемлемым интерфейсом.

Realist

Не знаком именно с MySQL, но в принципе жизнь устроена так:
Ты можешь реализовывать свои собственные функции.
Мало ли, тебе надо выбрать не сумму значений, стоящих в данном столбце, а, скажем, дисперсию. Впрочем, дисперсия может быть и стандартной функцией.
Ну или там тебе надо, чтоб при добавлении чего-нить в одну таблицу из другой таблицы что-нить удалялось.
Но программу ты на этом не напишешь (ну, если ты не извращенец какой). Тебе же все-равно нужно на чем-то писать внятный интерфейс для пользователя, определять логику работы с ним и прочее.

zrab

Но программу ты на этом не напишешь (ну, если ты не извращенец какой). Тебе же все-равно нужно на чем-то писать внятный интерфейс для пользователя, определять логику работы с ним и прочее.
Ясно, так я и думал, спасибо.
Бизнес логику приложений можно реализовывать посредством хранимых процедур/функций и триггеров

Значит, только хранимых. ОК, спасибо.

Papazyan


Но программу ты на этом не напишешь (ну, если ты не извращенец какой). Тебе же все-равно нужно на чем-то писать внятный интерфейс для пользователя, определять логику работы с ним и прочее.
Ясно, так я и думал, спасибо.

Бизнес логику приложений можно реализовывать посредством хранимых процедур/функций и триггеров
Значит, только хранимых. ОК, спасибо.
Есть специализированные базы данных, где SQL и внутренний язык тесно интегрированы и позволяют писать программы большой сложности, в крайнем случае, взаимодействовать с внешним миром через С/Java/Socket интрефейс. Но они платные.

skvoria

Для начала code:
select (1+2)*4
from dual;
<занудствую>
Хм, ну поскольку речь идет о mysql, то прав.
From dual вызовет ошибку.
</занудствую>

pitrik2

<занудствую>
Хм, ну поскольку речь идет о mysql, то прав.
From dual вызовет ошибку.
</занудствую>
<тоже занудствую>
PL/SQL тож к mysql не относится
</тоже занудствую>

grnat

причем здесь Оракл?

kindr-16

skvoria

Видимо в пятой версии добавили.

pitrik2

Видимо в пятой версии добавили.
а может просто создал сам такую таблицу
потому и команда сработала

Andbar

а может просто создал сам такую таблицу
потому и команда сработала
где ты видишь выбор БД?

olegusmaximus

Visual FoxPro?

pitrik2

где ты видишь выбор БД?
ну я предположил по аналогии с примером
ERROR 1146: Table 'u19209.dual' doesn't exist
а тут было бы
ERROR 1146: Table 'root.dual' doesn't exist
а раз нету, значит таблица создана была

Andbar

а тут было бы
ERROR 1146: Table 'root.dual' doesn't exist
а раз нету, значит таблица создана была
впервые слышу, чтобы в мускуле можно было что-то делать без выбора базы данных.

sinet

ну я предположил по аналогии с примером
Там база данных выбиралась последним параметром mysql.
А в примере колобка выбора базы нет.

skvoria

а тут было бы ERROR 1146: Table 'root.dual' doesn't exist
Не ссорьтесь, горячие кавказские парни.
Четверка без базы пишет ERROR 1046: No Database Selected
А пятерка реально в теме, что такое dual (проверил).
Оставить комментарий
Имя или ник:
Комментарий: