Bruce Music 4 your ears! | Bon... heu revois la syntaxe SQL parceque là il y as un gros manque
Tiens, je t'aide :
Code :
- 6.4.2 INSERT Syntax
- INSERT [LOW_PRIORITY | DELAYED] [IGNORE]
- [INTO] tbl_name [(col_name,...)]
- VALUES (expression,...),(...),...
- or INSERT [LOW_PRIORITY | DELAYED] [IGNORE]
- [INTO] tbl_name [(col_name,...)]
- SELECT ...
- or INSERT [LOW_PRIORITY | DELAYED] [IGNORE]
- [INTO] tbl_name
- SET col_name=expression, col_name=expression, ...
- INSERT inserts new rows into an existing table. The INSERT ... VALUES form of the statement inserts rows based on explicitly specified values. The INSERT ... SELECT form inserts rows selected from another table or tables. The INSERT ... VALUES form with multiple value lists is supported in MySQL Version 3.22.5 or later. The col_name=expression syntax is supported in MySQL Version 3.22.10 or later.
- tbl_name is the table into which rows should be inserted. The column name list or the SET clause indicates which columns the statement specifies values for:
- If you specify no column list for INSERT ... VALUES or INSERT ... SELECT, values for all columns must be provided in the VALUES() list or by the SELECT. If you don't know the order of the columns in the table, use DESCRIBE tbl_name to find out.
- Any column not explicitly given a value is set to its default value. For example, if you specify a column list that doesn't name all the columns in the table, unnamed columns are set to their default values. Default value assignment is described in section 6.5.3 CREATE TABLE Syntax.
- An expression may refer to any column that was set earlier in a value list. For example, you can say this:
- mysql> INSERT INTO tbl_name (col1,col2) VALUES(15,col1*2);
- But not this:
- mysql> INSERT INTO tbl_name (col1,col2) VALUES(col2*2,15);
- If you specify the keyword LOW_PRIORITY, execution of the INSERT is delayed until no other clients are reading from the table. In this case the client has to wait until the insert statement is completed, which may take a long time if the table is in heavy use. This is in contrast to INSERT DELAYED, which lets the client continue at once. See section 6.4.3 INSERT DELAYED syntax. Note that LOW_PRIORITY should normally not be used with MyISAM tables as this disables concurrent inserts. See section 7.1 MyISAM Tables.
- If you specify the keyword IGNORE in an INSERT with many value rows, any rows that duplicate an existing PRIMARY or UNIQUE key in the table are ignored and are not inserted. If you do not specify IGNORE, the insert is aborted if there is any row that duplicates an existing key value. You can determine with the C API function mysql_info() how many rows were inserted into the table.
- If MySQL was configured using the DONT_USE_DEFAULT_FIELDS option, INSERT statements generate an error unless you explicitly specify values for all columns that require a non-NULL value. See section 2.3.3 Typical configure Options.
- You can find the value used for an AUTO_INCREMENT column with the mysql_insert_id function. See section 8.4.3.126 mysql_insert_id().
- If you use INSERT ... SELECT or an INSERT ... VALUES statement with multiple value lists, you can use the C API function mysql_info() to get information about the query. The format of the information string is shown below:
- Records: 100 Duplicates: 0 Warnings: 0
- Duplicates indicates the number of rows that couldn't be inserted because they would duplicate some existing unique index value. Warnings indicates the number of attempts to insert column values that were problematic in some way. Warnings can occur under any of the following conditions:
- Inserting NULL into a column that has been declared NOT NULL. The column is set to its default value.
- Setting a numeric column to a value that lies outside the column's range. The value is clipped to the appropriate endpoint of the range.
- Setting a numeric column to a value such as '10.34 a'. The trailing garbage is stripped and the remaining numeric part is inserted. If the value doesn't make sense as a number at all, the column is set to 0.
- Inserting a string into a CHAR, VARCHAR, TEXT, or BLOB column that exceeds the column's maximum length. The value is truncated to the column's maximum length.
- Inserting a value into a date or time column that is illegal for the column type. The column is set to the appropriate zero value for the type.
|
---------------
A+++ Bruce - http://www.bheller.com
|