关于数据库的insert插入语句

关于数据库的insert插入语句,第1张

建立ACCESS数据库db1mdb,在其中建立数据表user,字段分别为:

u_uid(自动)

u_user(用户名:文本型)

u_pass(密码:文本型) 
建立接收registerasp中发送过来的表单数据,并插入到数据表user中的注册成功显示页面:result2asp代码如下: 

<%@ language=vbscript %> 
<!-- #include file="con1asp"--> 
<html > 
<head> 
<meta >

插入书写方式:

1、INSERTINTOt1(field1,field2) VALUE(‘001‘,‘002‘);

最好的做法明确插入的每一列,列于查错,而且漏列的几率会降低。

2、INSERTINTOt1(field1,field2)values(‘001‘,‘002‘),(‘003‘,‘004‘);

能够批量插入数据最好批量插入,但是数据过于庞大时,最好分批次批量插入。

3、INSERTINTOt2(field1,field2)SELECTcol1,col2FROMt1WHERE;

这里由于可以指定插入到talbe2中的列,以及可以通过相对较复杂的查询语句进行数据源获取,可能使用起来会更加的灵活,但我们也必须注意,在指定目标表的列时,一定要将所有非空列都填上,否则将无法进行数据插入。

容易出错的地方,当我们写成如下方式3的变形简写格式:

变形: INSERTINTOt2SELECTid,name,addressFROMt1。

此时,如果略掉了目标表的列的话,则默认会对目标表的全部列进行数据插入,且SELECT后面的列的顺序必须和目标表中的列的定义顺序完全一致才能完成正确的数据插入,这是一个很容易被忽略的地方,值得注意。

扩展资料

[WITH<common_table_expression>[,n]]INSERT{    [TOP(expression)[PERCENT]]

[INTO]

{<object>|rowset_function_limited

[WITH(<Table_Hint_Limited>[n])]

}

{    [(column_list)]

[<OUTPUTClause>]

{VALUES({DEFAULT|NULL|expression}[,n])[,n  ]

|derived_table

|execute_statement

|<dml_table_source>

|DEFAULTVALUES

}

}

}[;]

在该结构中,INSERT为该语句的实际 *** 作,INTO关键字无真正含义,目的是为增强这个语句的可读性。INTO关键字为可选,建议在语句中加入该关键字。在使用EntityFramework添加数据时,执行的INSERT语句是没有使用INTO关键字的。

参考资料来源:百度百科-SQLINSERTINTO

1、不指定表字段插入:
INSERT INTO 表名称 VALUES (值1, 值2,)
2、指定表字段插入
INSERT INTO table_name (列1, 列2,) VALUES (值1, 值2,)

INSERT INTO 语句 添加一个或多个记录至一个表。这叫作追加查询语法 多重记录追加查询:INSERT INTO target [(field1[, field2[, ]])][IN外部数据库]
SELECT field1[, field2[, ]]
FROM tableexpression单一记录追加查询:INSERT INTO target [(field1[, field2[, ]])]
VALUES (value1[, value2[, ])INSERT INTO 语句可分为以下几个部分:部分说明target欲追加记录的表或查询的名称。field1, field2如果后面跟的是 target 参数,则为要追加数据的字段名;如果后面跟的是 source 参数,则为从其中获得数据的字段名。Externaldatabase进入外部数据库的路径。有关路径的描述,请参阅 IN 子句。source复制记录的来源表或查询的名称。tableexpression从其中得到要插入的记录的表名。这个变元可能是一个单一的表名,也可能是一个由 INNER JOIN, LEFT JOIN或 RIGHT JOIN 运算组成的复合体,或是一个储存的查询。value1,value2欲插入新记录的特定字段的值。每一个值将依照它在列表中的位置,顺序插入相关字段:value1 将被插入至追加记录的 field1 之中,value2 插入至 field2,依此类推。必须使用逗点将这些值分隔,并且将文本字段用引号 (' ') 括起来。
说明 可以使用 INSERT INTO 语句来添加一个单一记录至一个表中,如以上所示使用单一记录追加查询语法。在这个例子中,代码指定了该记录每一字段的名称和值。必须指定追加数值的记录的每一个字段和那个字段的值。如果您没有指定每一个字段时,缺省值或 Null 值将被插入至没有数据的字段之中。这些记录将被添加至表的尾部。通过使用 SELECT FROM 子句如以上所示的多重记录追加查询语法,也可以从另一表或查询使用 INSERT INTO追加一组记录。在这个示例中,SELECT 子句将指定追加字段至指定的 target 表。source 或 target 表可以指定一个表或查询。如果查询被指定,Microsoft Jet数据库引擎会把记录追加到由该查询指定的所有表中。INSERT INTO 是可选的,但当使用时,请置於 SELECT 语句之前。如果你的目标表包含一个 主键,,你一定要把唯一的非 Null 值追加到主键字段中,否则 Microsoft Jet 数据库引擎不会追加记录。如果你要把把记录追加到带有 AutoNumber字段的表中,还想重编追加的记录,请不要在你的查询中包含 AutoNumber字段。如果您要保持字段中的原始值,请将自动编号加在您的查询之中。使用 IN 子句,可追加记录至另一个数据库中的表。要创建新表请用 SELECTINTO 语句代替制表查询的创建。若要在运行追加查询之前找出哪些记录是被追加的,首先执行和查阅一个使用相同的选择条件之选定查询所获得的结果。追加查询为从一个或多个表中复制记录至另一个表。您追加的表包含记录将不会被追加查询所影响。除了从另一表中来追加现存的记录,可以指定在单一追加记录之中使用 VALUES 子句来指定对每一字段的值。如果您省略字段列表,VALUES 子句在表之中必须包含每一字段的值;否则, INSERT运算将会失败。使用额外的 INSERT INTO 语句与一个 VALUES 子句来创建您要的每一个额外的记录。

INSERT INTO 语句可以有两种用法:

1、第一种形式无需指定要插入数据的列名,只需提供被插入的值即可:

INSERT INTO table_name
VALUES (value1,value2,value3,)

2、第二种形式需要指定列名及被插入的值:

INSERT INTO table_name (column1,column2,column3,)
VALUES (value1,value2,value3,)

其他SQL语句:

创建新数据库:CREATE DATABASE

修改数据库:ALTER DATABASE

创建新表:CREATE TABLE

变更(改变)数据库表:ALTER TABLE

删除表:DROP TABLE

创建索引(搜索键):CREATE INDEX

删除索引:DROP INDEX

删除主键:Alter table tabname drop primary key(col)

选择:select from table1 where 范围

插入:insert into table1(field1,field2) values(value1,value2)

删除:delete from table1 where 范围

更新:update table1 set field1=value1 where 范围

查找:select from table1 where field1 like ’%value1%’

排序:select from table1 order by field1,field2 [desc]

总数:select count as totalcount from table1

求和:select sum(field1) as sumvalue from table1

平均:select avg(field1) as avgvalue from table1

最大:select max(field1) as maxvalue from table1

最小:select min(field1) as minvalue from table1

如果a2和a3没有非空限制,则可以每次insert时只写a1的值:
insert into A values ('4')union allselect '5' from dualunion allselect '6' from dual; 或者使用循环


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13043910.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-29
下一篇 2023-05-29

发表评论

登录后才能评论

评论列表(0条)

保存