SQL Insert

INSERT
Definizione
Aggiunge una nuova riga o le righe da una tabella o vista.

 INSERT [INTO] {[(oggetto lista_columnas)] {{((VALORI DI DEFAULT NULL | | espressione} [, ... n]) [, ... n]) | tabla_derivada | sentencia_ejecutable | VALORI DI DEFAULT}}


Descrizione delle clausole

  • INTO: Parola chiave facoltativa che può essere utilizzata tra INSERT e la tabella di destinazione.
  • Lista_columnas: un elenco di uno o più colonne in cui vengono inseriti i dati. Deve essere racchiuso tra parentesi e delimitati da virgole.
  • VALORI: Presenta un elenco di valori di dati da inserire. Ci deve essere un valore di dati per ogni colonna della lista, se specificato, o un tavolo. L'elenco dei valori deve essere racchiuso tra parentesi. I valori elenco di valori deve essere nello stesso ordine l'elenco delle colonne. L'inserimento di più di una fila di valori richiede l'elenco VALUES sono nello stesso ordine delle colonne della tabella, per avere un valore in ciascuna colonna, o elenco esplicitamente specificare la colonna in cui che memorizza ogni uno dei valori in arrivo. Il numero massimo di righe che possono essere inseriti in una singola istruzione INSERT è 1000. Per inserire più di 1000 righe, creare INSERT multiple, o eseguire una importazione bulk dei dati mediante l'utilità BCP o BULK INSERT.
  • Tabla_derivada: Qualsiasi istruzione SELECT valida che restituisce righe di dati che devono essere caricati nella tabella.
  • Sentencia_ejecutable: E 'valido qualsiasi istruzione EXECUTE che restituisce i dati con l'istruzione SELECT. Esso può contenere una chiamata a una procedura stored.
  • VALORI DI DEFAULT: Rende la nuova riga contenente i valori di default definiti per ogni colonna.

Considerazioni
Se una colonna non è incluso nell'elenco delle colonne, il motore di database deve essere in grado di fornire un valore basato sulla definizione della colonna, altrimenti, non può caricare la riga. Il motore di database fornisce automaticamente un valore per la colonna se:

  • Ha una proprietà IDENTITY. Utilizzare il successivo valore Identity incrementale.
  • Ha un valore predefinito. Utilizzare il valore predefinito della colonna.
  • Ha un tipo di dati timestamp. Esso utilizza il valore corrente di time stamp.
  • Nullable. Utilizzare un valore NULL.
  • È una colonna calcolata. Usiamo il valore calcolato.

Esempi
uno. Inserisce una riga nella tabella UnitMeasure. Poiché i valori per tutte le colonne sono forniti e compresi nello stesso ordine delle colonne della tabella, non è necessario specificare i nomi delle colonne nella lista. E 'anche buona norma dichiarare l'elenco per sempre.

 Production.UnitMeasure INSERT INTO VALUES ('F2', 'piedi quadrati', GETDATE ())

b. Stesso esempio come per l'opzione, ma specificando l'elenco di colonne.

 INSERT INTO Production.UnitMeasure (Nome, UnitMeasureCode, ModifiedDate) VALUES ('metri quadri', 'Y2', GETDATE ())

c. 5 righe inserite nella tabella Dipartimenti

 Dbo.Departments inserire nei valori (1, 'Risorse Umane', 'Margheim'), (2, 'Vendite', 'Byham'), (3, 'Finanza', 'Gill'), (4, 'acquisto', 'Barber'), (5, 'Manufacturing', 'Brewer')

d. Inserire il risultato della SELECT nella tabella EmployeeSales

 Dbo.EmployeeSales INSERT SELECT 'SELECT', e.EmployeeID, c.LastName, sp.SalesYTD FROM HumanResources.Employee AS e INNER JOIN AS sp ON Sales.SalesPerson e.EmployeeID = sp.SalesPersonID Person.Contact AS INNER JOIN c ON e . WHERE ContactID = c.ContactID e.EmployeeID come ordine '2% 'DA e.EmployeeID, c.LastName 

4 Responses to "Insert SQL"

  1. Informazioni Bitacoras.com ...

    Rate in Bitacoras.com: INSERT Definizione aggiunge una nuova riga o le righe da una tabella o vista. INSERT [INTO] {object [(lista_columnas)] {VALUES (({DEFAULT | NULL | espressione} [, N?]) [, N?]) | Tabla_derivada | sentencia_eje .....

  2. cancuneitor dice:

    Ho avuto un problema durante la creazione di un tavolo, e non ho idea di come usare i "valori predefiniti" e provo tutto quello che ho trovato nei motori di ricerca e niente.
    Ho il mio tavolo con un sacco di convalida, ma che la maggior parte mi interessa è l'ID di essere uno dei crescente utilizzo di SQL Server 2005 e già provare a mettere unica auto-incremento e tutto il resto, ma niente che nadita aumenta auto, io sono interessato a farmi fuori i miei dubbi e tutti coloro che non possono passare.

  3. tony ha detto:

    Trovare qualcosa di identità, penso che andrà un lungo

  4. Agustin dice:

    ciao ho un problema se lo faccio inserire utilizzato per qu eh vb lungo, ma ora usano VB2010 e la verità viene generato il naso come le connessioni ecc ecc ecc vorrei che hai postato qualcosa per favore .. ayudenme vogliono fare cambiamenti basse e alte in sql2008

Commento