mySQL - VIEWS :)

12 отговора 505 прегледа
#1

mySQL - VIEWS :)

Опа компанията, хмм Salle, какво мислиш за "симулация" на VIEW като нещо такова, изобщо тези "TEMPORARY TABLE " колко са временни? до края на сесията със сървъра ли?

CREATE TEMPORARY TABLE tmp1
SELECT * FROM real_table WHERE id>100 AND conditions.....

просто идейка... може и да са глупости :) има ли някаква специфична разлика във скоростта например (макар, че няма много логика) да се ползват временни таблици, ако в рамките на една сесия с mySQL-a примерно се правят по-сложни неща... Ти какво милисш за "TEMPORARY TABLE" - иците и кога би ми препоръчал да ги ползвам - принципно.

П.С. знам, че въпросът ми пак е общ..

Отговор
в отговор на Waflata #2

ъх, никак не е общ.....

мене ме вълнува абсолютно същото, и се чудех точно как да попитам...))

[линк]

Редактирано от Topбaлaн на

Отговор
в отговор на Topбaлaн #3

Re: ъх, никак не е общ.....

хех, то е ясно, че няма, въпросът е дали може да се ползва нещо друго което предлага MySQL-а, което горе-долу да има подобни характеристики... :)

Отговор
в отговор на Waflata #4

Re: ъх, никак не е общ.....

ми - временни таблици....май това се ползва...

[линк]
Отговор
в отговор на Topбaлaн #5

Re: ъх, никак не е общ.....

----------==----------------
From MySQL Version 3.23, you can use the TEMPORARY keyword when you create a table. The temporary table is visible only to the current connection, and will be deleted automatically when the connection is closed. This means that two different connections can both use the same temporary table name without conflicting with each other or with an existing table of the same name. (The existing table is hidden until the temporary table is deleted.) From MySQL 4.0.2 on, you must have the CREATE TEMPORARY TABLES privilege to be able to create temporary tables.
----------==----------------

не става, тя си е само за сесията на конкецията :)

Отговор
в отговор на Wflata #6

Re: ъх, никак не е общ.....

това е иделайно за някои цели, но за други не става....
VIEW има и други приложения....

я ако имаш ICQ се обади - 44441095

[линк]
Отговор
в отговор на Waflata #7

Re: mySQL - VIEWS :)

view-то е чиста проба абстракция, която се ползва в някои бази данни за лесно реализиране на допълнителна функционалност (ограничаване на права, капсулиране на сложни SQL-и и т.н.)

т.е. дали ще имаш view v_test "select * from t_test" и после "select * from v_test" или правиш направо "select * from (select * from t_test)" е все-едно и също - тук зависи само от това, как ще се оправи оптимизатора на базата

специално в Oracle, view-to се пази само като дефиниция и не съществува до момента, в който не направиш заявка към него

Отговор
в отговор на AcidMemory #8

Re: mySQL - VIEWS :)

сигурно си прав....

може би му се спестява някакво проверяване за грешки на view-то...но едва ли е толкоз важно....

само, че като си свикнал да го ползваш и го няма, тогава ти е по кофти....чустваш се дискомфортно...

[линк]
Отговор
в отговор на AcidMemory #9

Re: mySQL - VIEWS :)

Идеята е именно капсулирането на голи и сложни заявки :) за това иде реч. Нещо напълно необходимо за една по-сложна структура на базата данни, и разбира се VIEW-тата доста улесняват нещата, но тук говорим специално за MySQL, и че най-вероятно заместител на такива за момента няма. Дри и нещо с подобна фунционалност ;). Но кой знае :>

Отговор
в отговор на Waflata #10

е, хайде сега ...

нищо не ти пречи да си дефинираш view-тата, които ти капсулират сложните заявки, в текст, който после да конкатенираш след from-а в SQL клаузата ...

Отговор
в отговор на Topбaлaн #11

за грешките във view-то

проверяването на грешките става при създаването на view-то, т.е. веднъж създадено дефиницията му е валидна, докато не се смени дефиницията на обект, от който е зависимо самото view - тогава трябва recompile

Отговор
в отговор на AcidMemory #12

Re: за грешките във view-то

ахам, това имах предвид...
ако е стринг - това се прави всеки път при изпълняване на заявката

[линк]
Отговор
в отговор на AcidMemory #13

Re: е, хайде сега ...

are sa glkuposti, nali goworim za kapsulirane na slojni zaqwki i crosowe... VIEW-tata spestqwat towa :)

Отговор