如何同时往数据库中插入多条记录???
现在我要一下子添加很多(除了两个字段不同其他部分都相同的)记录,这两个不同的字段的值我用CheckBox框选了很多可以直接提供,需要用asp解决,有人说用INSERT,但...
现在我要一下子添加很多(除了两个字段不同其他部分都相同的)记录,这两个不同的字段的值我用CheckBox框选了很多可以直接提供,需要用asp解决,有人说用INSERT,但是不行
请说具体点 展开
请说具体点 展开
5个回答
展开全部
不同数据库之间略有不同,以几大主流数据库(oracle,sqlserver,mysql)为例。
oracle(以插入三条为例),结尾分号不可省略,否则会报错。
insert into test values (1,'张三');
insert into test values (2,'李四');
insert into test values (3,'王五');
sqlserver(以插入三条为例),语法同oracle,但结尾分号可有可无。
mysql(以插入三条为例),语法同前两者,结尾分号不可省,但还有其他方法,代码如下:
insert into test values (1,'张三'),(2,'李四'),(3,'王五');
2015-09-01 · 知道合伙人数码行家
可以叫我表哥
知道合伙人数码行家
向TA提问 私信TA
知道合伙人数码行家
采纳数:25897
获赞数:1464976
2010年毕业于北京化工大学北方学院计算机科学与技术专业毕业,学士学位,工程电子技术行业4年从业经验。
向TA提问 私信TA
关注
展开全部
采用这样语句插入:
INSERT INTO 充值表 (字段1,字段2,字段3,...) VALUES (值1,值2,值3,...),(值1,值2,值3,...),(值1,值2,值3,...);
如果list中有10条记录,那么则VALUES 后就跟10个括号,用逗号隔开,按照这种格式构造插入的SQL语句,最后再一次执行就好了。
INSERT INTO 充值表 (字段1,字段2,字段3,...) VALUES (值1,值2,值3,...),(值1,值2,值3,...),(值1,值2,值3,...);
如果list中有10条记录,那么则VALUES 后就跟10个括号,用逗号隔开,按照这种格式构造插入的SQL语句,最后再一次执行就好了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
'向数据库写入数据
SUB writeData()
dim recCnt,i
dim fieldName1,fieldName2,fieldName3
dim conn
dim sqlStr,connStr
connStr="Provider=SQLOLEDB.1;Initial Catalog=myDatabase;Data Source=myhon;User Id=sa;PASSWORD="
set conn=Server.CreateObject("ADODB.Connection")
conn.open connStr '建立数据库连接
recCnt=request.form("stu_num").count '取得共有多少条记录
'批量录入数据
for i=1 to recCnt
fieldName1=trim(request.form("fieldName1")(i))
fieldName2=trim(request.form("fieldName2")(i))
fieldName3=trim(request.form("fieldName3")(i))
sqlStr="insert into myTable(fieldName1,fieldName2,fieldName3) values('"
sqlStr=sqlStr & fieldName1 & "','"
sqlStr=sqlStr & fieldName2 & "','"
sqlStr=sqlStr & fieldName3 & "')"
'response.write sqlStr
conn.execute(sqlStr)
next
END SUB
'显示成批录入的界面
SUB InputData()
dim recCnt,i
%>
<form name="bathInputData" action="" method="post">
<%
recCnt=cint(request.form("recCnt"))
for i=1 to recCnt
%>
<input type="text" name="fieldName1">
<input type="text" name="fieldName2">
<input type="text" name="fieldName3">
<%
next
%>
<br>
<input type="submit" name="action" value="提交">
</form>
<%
END SUB
'指定要批量录入多少条记录
SUB assignHowMuch()
%>
<!------指定要录入多少条记录-------------->
<form name="form1" action="" method="post">
您要录入的记录的条数:<input type="text" name="recCnt">
<input type="submit" name="action" value="下一步>>">
</form>
<%
END SUB
if request.form("action")="下一步>>" then
Call InputData() '显示成批录入界面
elseif request.form("action")="提交" then Call writeData() '向数据库批量写入数据
else
Call assignHowMuch() '显示指定录入多少条记录的界面
end if
%>
SUB writeData()
dim recCnt,i
dim fieldName1,fieldName2,fieldName3
dim conn
dim sqlStr,connStr
connStr="Provider=SQLOLEDB.1;Initial Catalog=myDatabase;Data Source=myhon;User Id=sa;PASSWORD="
set conn=Server.CreateObject("ADODB.Connection")
conn.open connStr '建立数据库连接
recCnt=request.form("stu_num").count '取得共有多少条记录
'批量录入数据
for i=1 to recCnt
fieldName1=trim(request.form("fieldName1")(i))
fieldName2=trim(request.form("fieldName2")(i))
fieldName3=trim(request.form("fieldName3")(i))
sqlStr="insert into myTable(fieldName1,fieldName2,fieldName3) values('"
sqlStr=sqlStr & fieldName1 & "','"
sqlStr=sqlStr & fieldName2 & "','"
sqlStr=sqlStr & fieldName3 & "')"
'response.write sqlStr
conn.execute(sqlStr)
next
END SUB
'显示成批录入的界面
SUB InputData()
dim recCnt,i
%>
<form name="bathInputData" action="" method="post">
<%
recCnt=cint(request.form("recCnt"))
for i=1 to recCnt
%>
<input type="text" name="fieldName1">
<input type="text" name="fieldName2">
<input type="text" name="fieldName3">
<%
next
%>
<br>
<input type="submit" name="action" value="提交">
</form>
<%
END SUB
'指定要批量录入多少条记录
SUB assignHowMuch()
%>
<!------指定要录入多少条记录-------------->
<form name="form1" action="" method="post">
您要录入的记录的条数:<input type="text" name="recCnt">
<input type="submit" name="action" value="下一步>>">
</form>
<%
END SUB
if request.form("action")="下一步>>" then
Call InputData() '显示成批录入界面
elseif request.form("action")="提交" then Call writeData() '向数据库批量写入数据
else
Call assignHowMuch() '显示指定录入多少条记录的界面
end if
%>
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
必须要调用存储过程。
存储过程语句为:delete from 表1
insert in 表1 (select * from 表2)
基本的原理就是如上了,不仅可以插入多条记录,还可选取多个字段插入。
存储过程语句为:delete from 表1
insert in 表1 (select * from 表2)
基本的原理就是如上了,不仅可以插入多条记录,还可选取多个字段插入。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用asp循环调用sql
或者调用存储过程
一般用存储过程效率高
或者调用存储过程
一般用存储过程效率高
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询