![]() |
|
Модераторы: LSD |
![]()
|
|
| Sliva |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 185 Регистрация: 4.5.2006 Репутация: нет Всего: нет |
У меня в таблице хранится кроссворд:
id - идентификатор слова x- координата буквы в таблице y- координата буквы в таблице len- длина слова VH- вертикально расположено или горизонтально (работаю в PL\SQL) Мне нужно вставить слово в кроссворд - должна быть функция вставки. Подскажите как? |
|||
|
||||
| HalkaR |
|
|||
![]() Пуфыстый назгул ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2132 Регистрация: 8.12.2002 Где: В Москве Репутация: нет Всего: 42 |
Так вам на чем на PL\SQL или MySQL?
|
|||
|
||||
| Sliva |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 185 Регистрация: 4.5.2006 Репутация: нет Всего: нет |
PL\SQL!
|
|||
|
||||
| Ignat |
|
|||
![]() Флудератор ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4030 Регистрация: 19.4.2004 Где: غيليندزيك مدينة Репутация: нет Всего: 73 |
-------------------- Теперь при чем :P |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 18 Всего: 538 |
Полную структуру таблиц дай, сколько их там у тебя 1 или 2.
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| Sliva |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 185 Регистрация: 4.5.2006 Репутация: нет Всего: нет |
Т.е. получается, что у меня есть таблица, в которой хранятся слова, и в которой указано к какому кроссворду они принадлежат. А мне нужно в PL\SQL написать вставку слова в кроссворд. Help! |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 18 Всего: 538 |
Я не пойму, что должна делать процедура. Никакой обработки вставляемых данных тут нет. Максимум триггером проверить что VH имеет правильное значение и вычислить LEN.
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| Sliva |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 185 Регистрация: 4.5.2006 Репутация: нет Всего: нет |
Дело в том, что программно надо написать процедуру, у которой в параметрах будет слово и его вставить в таблицу. Надо же учитывать на какую позицию вставляем: Нельзя же вставить слово на место другого слова!
А про триггеры нам еще не рассказывали |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 18 Всего: 538 |
Т.е. процедура должна перебрать все свободные места и найти нужное?
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| Sliva |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 185 Регистрация: 4.5.2006 Репутация: нет Всего: нет |
Фактически она должна вставить слово на пустое место, куда захочет пользователь - вот в чем дело
|
|||
|
||||
| Sliva |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 185 Регистрация: 4.5.2006 Репутация: нет Всего: нет |
Если быть точнее,
то я пишу следю процедуру:
|
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 18 Всего: 538 |
У тебя тут есть пара небольших синтаксических ошибок, неправильно организован цикл. Но это все лего поправимо, главное я не могу понять как у тебя хранятся в базе слова. Зачем тебе надо делать несколько инсертов в таблицу для каждого слова? И каков смысл тех проверок, что ты делаешь? -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| Sliva |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 185 Регистрация: 4.5.2006 Репутация: нет Всего: нет |
Я вставляю слово на произвольное место в кроссворде (то бишь в таблицу), но там же может стоять другое слово! Мне нужно проверить:
1. Можно ли вставить слово, т.е. есть ли свободное место; 2. Если там есть слово, то можем ли мы верно вставить слово, например: по горизонтали стоит слово "восток", а я вставляю слово "кот" по вертикали. Т.е. я МОГУ ВСТАВИТЬ, но я должна проверить, что я вставляю на последнюю букву слова "востоК". Я сижу сейчас, разбираюсь - тут по идее должна быть целая куча проверок, ifов!!! Посмотри, пожалуйста! |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 18 Всего: 538 |
Тогда я думаю лучше будет хранить не слово, а буквы (или ввести еще одну таблицу с буквами), каждую в своей ячейке. И соответсвенно при вставке делать проверки.
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| Sliva |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 185 Регистрация: 4.5.2006 Репутация: нет Всего: нет |
Я, кстати, вчера изменила таблицу. Теперь она выглядит так:
Только со вставкой замучаешься! А в моей процедуре InsertWord - тоже тогда в параметрах передавать букву или можно слово? Если w типа VARCHAR2(1), а word типа VARCHAR2(10)???? |
|||
|
||||
![]()
|
| Правила форума "Oracle" | |
|
|
Данный раздел предназначен для обсуждения проблем с Oracle Database, другие продукты Oracle здесь не обсуждаются. Просьба при создании темы, придерживаться следующих правил:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Zloxa, LSD. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Oracle | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |