Domanda

Ci sono limitazioni nella funzionalità di viste SQL per MySQL?

es:? Si può creare una vista tabella utilizzando 'ENTRA' comandi

È stato utile?

Soluzione

Si consiglia di leggere Restrizioni Visualizzazioni per i dettagli in vista limitazioni.

Altri suggerimenti

MySQL permette JOIN comandi

MySQL CREATE VIEW sintassi

Breve risposta - sì. In due parole vedi appena nominato select (senza ordine dal ovviamente).

Come tutto il resto in SQL, la sintassi, le caratteristiche e le possibilità dipendono dal sistema di gestione di database si sta lavorando. Ma unendo le tabelle è roba piuttosto semplice. Vista non sarebbero di grande utilità senza di essa.

Per quanto riguarda JOIN, sì:

mysql> create table foo (i int);
Query OK, 0 rows affected (0.03 sec)

mysql> create table bar (i int);
Query OK, 0 rows affected (0.03 sec)

mysql> create view foobar as select foo.i as foo_i, bar.i as bar_i from foo join bar on (foo.i=bar.i);
Query OK, 0 rows affected (0.02 sec)

ma come altri hanno sottolineato le risposte, il manuale è una grande risorsa.

  1. Tavolo temporaneo:

    CREATE TEMPORARY TABLE super (id int);
    
    mysql> CREATE OR REPLACE view cat AS SELECT * FROm super;
    
    ERROR 1352 (HY000): View's SELECT refers to a temporary table 'super'
    
  2. Sistema e locali Vars:

    mysql> SELECT @sosize;//1000
    
    mysql> CREATE OR REPLACE view cat AS SELECT *,@sosize FROm super;
    ERROR 1351 (HY000): View's SELECT contains a variable or parameter
    
  3. Sottointerrogazioni:

    CREATE OR REPLACE view cat AS SELECT * FROm SELECT * FROM super;
    ERROR 1349 (HY000): View's SELECT contains a subquery in the FROM clause
    
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top