Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
DECLARE - объясните синтаксис
|
|||
|---|---|---|---|
|
#18+
SELECT VERSION(); → 5.0.67-community-nt При декларации переменных Query Browser выдаёт ошибку. Например, пишу: Код: plaintext 1. 2. В выходные глянул книжку, но детально пока не вникнул. Вроде должно работать. Спросил других программеров. Один сказал, что в MySQL есть DECLARE, но нельзя «а коммерческое @» писать. Убрал. Такая же ошибка примерно. Другой почесал в затылке, сказал, что DECLARE можно использовать, но только в хранимых процедурах. А у меня-то не хранимая процедура, а транзакция вида Код: plaintext 1. 2. Спросил ещё раз. Сказали, что «а коммерческое @» писать наоборот надо. Вернул. Опять ошибка. Ещё раз спросил. Сказали, что вместо DECLARE в MySQL надо использовать SET. Написал тогда так: Код: plaintext 1. 2. Теперь пожалуйста, сообщите мне, дураку, так работает DECLARE или нет. И если вместо него SET, то как ему передать тип данных: Int,BigInt,Char,VarChar и так дадее? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2010, 18:20 |
|
||
|
DECLARE - объясните синтаксис
|
|||
|---|---|---|---|
|
#18+
Max Pro, авторDECLARE можно использовать, но только в хранимых процедурах ,функциях, тригерах и евентах :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2010, 18:38 |
|
||
|
DECLARE - объясните синтаксис
|
|||
|---|---|---|---|
|
#18+
Max Pro, Да, "@" перед именем локальной переменной указывать нельзя. Переменные, начинающиеся на "@" являются чем-то вроде переменных окружения для MySQL. Они могут быть глобальными для сервера или локализованы в рамках текущей сессии. Иногда без таких переменных обойтись нельзя (в случае dynamic sql). Объявлять их не нужно. Типа они не имеют (хранят любой текст). автор Код: plaintext 1. 2. Полагаю, что вы имеете в виду анонимную процедуру. В MySQL их нет - только обычные, с именем. Все, что выходит за рамки SQL-операторов, должно быть реализовано в процедуре. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2010, 22:40 |
|
||
|
DECLARE - объясните синтаксис
|
|||
|---|---|---|---|
|
#18+
Max Pro, Чтобы было проще, пример использования локальных переменных: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Внимание! В SQL-операторах внутри процедур, при конфликте имен, переменные имеют приоритет над полями таблиц. По этому стоит пользоваться псевдонимами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2010, 22:45 |
|
||
|
DECLARE - объясните синтаксис
|
|||
|---|---|---|---|
|
#18+
RXLВнимание! В SQL-операторах внутри процедур, при конфликте имен, переменные имеют приоритет над полями таблиц. По этому стоит пользоваться псевдонимами. Кроме того локальные переменные имеют приоритет над параметрами процедуры, а параметры процедуры в свою очередь над полями таблиц. Иллюстрирующий пример http://sqlinfo.ru/forum/viewtopic.php?pid=2513#p2513 To Max Pro, в начале указанной по ссылке теме рассматриваются пользовательские переменные, те которые начинаются на @ RXLПеременные, начинающиеся на "@" являются чем-то вроде переменных окружения для MySQL. Они могут быть глобальными для сервера или локализованы в рамках текущей сессии. Пользовательские переменные, начинающиеся на "@" локализованы в рамках текущей сессии (глобальными быть не могут). Глобальными являются системные переменные, начинающиеся на "@@". Хотя нельзя сказать, что системные переменные не начинаются на "@" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2010, 03:28 |
|
||
|
DECLARE - объясните синтаксис
|
|||
|---|---|---|---|
|
#18+
Спасибо, буду дальше разбираться. Перешли на MySQL в надежде на бесплатность. Какого же было удивление, когда оказалось, что для коммерческих разработок надо покупать лицензию. Я фигею, похоже MySQL далеко не идеал. Хотя теперь делать нечего, надо изучать и использовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2010, 10:15 |
|
||
|
DECLARE - объясните синтаксис
|
|||
|---|---|---|---|
|
#18+
Max Pro, www.mysql.com MySQL Software is provided under the GPL License. OEMs, ISVs and VARs can purchase commercial licenses. Как видите, если интеграция с вашим ПО не противоречит GPL, то необходимости покупать лицензию нет. Конечно, если вы используете Community Edition. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2010, 10:44 |
|
||
|
DECLARE - объясните синтаксис
|
|||
|---|---|---|---|
|
#18+
RXLMax Pro, www.mysql.com MySQL Software is provided under the GPL License. OEMs, ISVs and VARs can purchase commercial licenses. Как видите, если интеграция с вашим ПО не противоречит GPL, то необходимости покупать лицензию нет. Конечно, если вы используете Community Edition. цитата из книги «Самоучитель MySQL 5 Максим Кузнецов,Игорь Семдянов»Особенностью лицензии GPL является тот факт, что любой код, скомпилированный с GPL-кодом, попадает под GPL-лицензию, т.е. может свободно распространяться, и условием его распространения является предоставление исходных кодов. MySQL AB придерживается двойного лицензирования, позволяя пользователям бесплатно использовать СУБД MySQL под GPL-лицензией, а также предоставляет MySQL под коммерческой лицензией тем, кому необходимо использовать его в коммерческих целях, например в составе программы. Тут не совсем понятно словосочетание "скомпилированный с GPL-кодом", например, если программа не содержит исходных кодов MySQL, но содержит строку подключения к MySQL и драйвер провайдера, то считается, что она скомпилирована с GPL-кодом или нет. Это непонятно, но даётся намёк на то, что все коммерческие программы (да и не коммерческие), в том числе вэб-сайты, которые не содержат естественно ссылок на свои исходники, должны иметь покупную лицензию MySQL. Но если опубликовать исходники, то покупная лицензия не нужна. Естественно никто публиковать исходники особо желанием не горит, поэтому надо раскошеливаться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2010, 14:31 |
|
||
|
DECLARE - объясните синтаксис
|
|||
|---|---|---|---|
|
#18+
Max Pro, Вопрос спорный. С MySQL по коду вы никак не пересекаетесь, т.к. не используете исходный код MySQL в своей программе, а только заголовочные файлы и динамически подключаете библиотеку. Если бы использование GPL-библиотеки приводило бы к обязательному переходу проекта под GPL, то Linux, FreeBSD, Solaris и многие другие ОС состояли бы исключительно из GPL-программ. На деле же программа может быть под любой лицензией, даже коммерческой. Если очень хочется все же "прикрыть задницу", то есть стандартный выход: библиотека-обертка. Создается библиотека-обертка, тупо транслирующая вызовы к библиотеке MySQL один в один. Ничего сверхсекретного в ней нет - почему бы не выложить ее исходники? А сами используйте ее, динамически подключая к своей программе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2010, 21:11 |
|
||
|
DECLARE - объясните синтаксис
|
|||
|---|---|---|---|
|
#18+
Max Pro, MySQL не требует лицензии, если вы используете в разработке продукты под FOSS-лицензиями (см.полный список). Apache+PHP (там еще много в списке) подходит в этом случае. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2010, 00:45 |
|
||
|
DECLARE - объясните синтаксис
|
|||
|---|---|---|---|
|
#18+
Max ProПерешли на MySQL в надежде на бесплатность. Какого же было удивление, когда оказалось, что для коммерческих разработок надо покупать лицензию. Если прижмёт, есть постгри (PostgreeSQL). Там уж точно не заставят платить. Да ещё и производительность в довесок. Да не обругают меня любители MySQL. ЗЫ. На будущее. Для инициализации переменных есть ключевое слово DEFAULT. Например: Код: sql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2017, 22:13 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=36549874&tid=1830958]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
38ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 230ms |
| total: | 360ms |

| 0 / 0 |
