aboutsummaryrefslogtreecommitdiff
path: root/src/bin/pgaccess/lib/help/insert.hlp
blob: 961fe2560b8f5bde445771c0c74e585cf8e9a0be (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
.pgaw:Help.f.t insert end "INSERT" {bold} "  allows one to insert new rows into a table. One can insert a single row at time or several rows as a result of a query. The columns in the target list may be listed in any order. In every \
column not present in the target list will be inserted the default value, if column has not a declared default value it will be assumed as NULL. If the expression for each column is not of the \
correct data type, automatic type coercion will be attempted. 

" {} "Synopsis" {bold} "
" {} "
   INSERT INTO table \[ ( column \[, ...\] ) \]
   \{ VALUES ( expression \[, ...\] ) | SELECT query \}

" {code} "Usage" {bold} "
" {} "
                --Insert a single row into table films;
                --(in the second example the column date_prod is omitted 
                --therefore will be stored in it a default value of NULL):
                --
                INSERT INTO films VALUES
                ('UA502','Bananas',105,'1971-07-13','Comedy',INTERVAL '82 minute');
                
                INSERT INTO films (code, title, did, date_prod, kind)
                VALUES ('T_601', 'Yojimbo', 106, DATE '1961-06-16', 'Drama');
          

                --Insert a single row into table distributors, note that
                --only column \"name\" is specified, to the non specified
                --column \"did\" will be assigned its default value:
                --
                INSERT INTO distributors (name) VALUES ('British Lion');
          

                --Insert several rows into table films from table tmp:
                --
                INSERT INTO films
                SELECT * FROM tmp;
          

                --Insert into arrays:
                --Create an empty 3x3 gameboard for noughts-and-crosses
                --(all of these queries create the same board attribute)
                --(Refer to the PostgreSQL User's Guide for further
                --information about arrays).
                
                INSERT INTO tictactoe (game, board\[1:3\]\[1:3\])
                    VALUES (1,'\{\{\"\",\"\",\"\"\},\{\},\{\"\",\"\"\}\}');
                INSERT INTO tictactoe (game, board\[3\]\[3\])
                    VALUES (2,'\{\}');
                INSERT INTO tictactoe (game, board)
                    VALUES (3,'\{\{,,\},\{,,\},\{,,\}\}');

" {code} "Compatibility" {bold} "

SQL92 

The INSERT statement is fully compatible with SQL92. Possible limitations in features of the query clause are documented for the SELECT statement. 
"