Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 04:49 21.05.24 
Компютри и Интернет
   >> Бази данни
*Кратък преглед

Тема update v MySQL  
Авторano (Нерегистриран)
Публикувано11.09.02 18:45



Искам да напиша нещо такова

UPDATE table1 SET pole1='bla-bla' WHERE pole2=table2.pole15

обаче МySQL-a казва , че table2 му е непозната

къде бъркам?
В книгата на Дюбоа за синтаксиса на UPDATE пише, че след WHERE следва were_expr.
какво му е на "pole2=table2.pole15"?



Тема Re: update v MySQLнови [re: ano]  
Автор netKo ()
Публикувано12.09.02 11:01



normalno e da dava greshka.

moje bi shte e po-lesno, ako kajesh kakvo tochno se opitvash da napravish. kakuv e smisulut na table2.pole15 Taka napisano tova niama smisul, koy red na pole15 imash predvid?

There are only 10 types of people in this world: those who understand binary and those who don't


Тема podrobnostiнови [re: netKo]  
Авторano (Нерегистриран)
Публикувано12.09.02 13:44



Имам една таблица с инфо за клиенти - info_za_klienti. Едно от полетата е телефона - tel, а друго - името му - ime.
Иамам и др. таблица с информация за проведени телефонни разговори - tel_razgovori. Едно от полетата е тел. номер, с който е говорено - tel.
Искам по телефонния номер да разпозная дали разговора е бил с клиент и ако е така да попълня полето govoreno_s в tel_razgovori с името на клиента.
Виждаше ми се смислено да направя така:

UPDATE tel_razgovori
SET govoreno_s=info_za_klienti.ime
WHERE info_za_klienti.tel = tel_razgovori.tel

но явно има някакъв проблем.



Тема Re: podrobnostiнови [re: ano]  
Автор NDeu (минаващ)
Публикувано12.09.02 15:16



Мисля, че в MySQL няма да мине, но пробвай

UPDATE tel_razgovori
SET govoreno_s=(select ime from info_za_klienti where info_za_klienti.tel=tel_razgovori.tel )


Но-о-о...!
Не е зле да попрочетеш нормализациите



Тема Re: podrobnostiнови [re: NDeu]  
Авторano (Нерегистриран)
Публикувано12.09.02 15:47



не минава



Тема Re: update v MySQLнови [re: ano]  
Авторano (Нерегистриран)
Публикувано12.09.02 16:01



Ами да: http://www.mysql.com/doc/en/TODO_future.html

"1.8.3 Things That Must be Done in the Near Future
Atomic multi-table updates:
UPDATE items,month SET items.price=month.price
WHERE items.id=month.id;"


обаче не мога да чакам да излезе MySQL 3.24.



Тема Re: podrobnostiнови [re: ano]  
Автор gonzales ()
Публикувано12.09.02 16:05



да, не минава. моят опит показва, че mysql не позволява в update изрази да има обръщения към друга таблица, въпреки че в документацията не съм срещал подобно ограничение (salle да ме поправи ако греша).
проблема се решава така:

SELECT razgovori.*, klient.name FROM razgovori LEFT JOIN klient on (razgovoti.tel=klient.tel) ......

идеята надявам се е ясна (понаучил съм и аз нещо от тоя форум :-)



Тема Re: update v MySQLнови [re: ano]  
Автор netKo ()
Публикувано12.09.02 19:10



Zashto naistina shte dibrirash informacia (vij zabelejkata za normalizaciayata).

Ako taka sa ti postroeni tablicite i v daden moment iskash da vidish dali sred telefonnite povikvaniya ima takiva i s klienti, pravish go LEFT OUTER JOIN (kakto beshe pokazan).

Ako vse pak durjish da imash informaciata dublirana, shte se grijish pri vseki nov zapis ili promiana na zapis, podhodiashto da promeniash i zapis v drugata tablica

There are only 10 types of people in this world: those who understand binary and those who don't


Тема Re: update v MySQLнови [re: ano]  
Автор salle (Един такъв)
Публикувано12.09.02 20:23



3.24 няма да има - почти 100% съм сигурен :)

4.1 е версията която поддържа "подзаявки" и от доста време е в процес на разработка ... но е прекалено рано дори за alpha




*Кратък преглед
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2024 Dir.bg Всички права запазени.