社区
语言基础/算法/系统设计
帖子详情
如何对一张表插入多条记录?
呸呸呸呸呸呸呸呸呸
2004-11-20 07:58:30
要插入的几条记录只有一个字段不一样(比如同一个部门下的职工姓名)有什么方法?
...全文
143
4
打赏
收藏
如何对一张表插入多条记录?
要插入的几条记录只有一个字段不一样(比如同一个部门下的职工姓名)有什么方法?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
duanhai
2004-11-20
打赏
举报
回复
{ Purpose: 用於新增數據的測試,測試環境:
開發工具:Delphi 7
操作系統:Win XP SP2
系統硬件:Intel 2.8G, 512MB
表名:Create table testdt(d1 smalldatetime) 沒有索引
新增數據:10000
新增方法:一、SQL語句,3.79s
二、AdoQuery Append Post: 8.95s
三、AdoCommand 8.70s
四、AdoQuery UpdateBatch 4.89s
History:
-----------------------------------------------------------------------------}
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ADODB, DB;
type
TForm1 = class(TForm)
EdtCount: TEdit;
Label1: TLabel;
BtnSqlInsert: TButton;
BtnPost: TButton;
Memo1: TMemo;
ADOConnection1: TADOConnection;
ADOQuery1: TADOQuery;
ADOCommand1: TADOCommand;
BtnAdoCommand: TButton;
BtnUpdateBatch: TButton;
procedure BtnSqlInsertClick(Sender: TObject);
procedure BtnPostClick(Sender: TObject);
procedure BtnAdoCommandClick(Sender: TObject);
procedure BtnUpdateBatchClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
dtStart, dtEnd: Double;
implementation
{$R *.dfm}
procedure TForm1.BtnSqlInsertClick(Sender: TObject);
const
InsertSQL = 'insert into testdt(d1) values(%s) ';
var
i0: Integer;
iRecord: Integer;
strSQL: string;
begin
iRecord := StrToIntDef(EdtCount.text, 0);
SetLength(strSQL, 2000);
strSQL := '';
dtStart := Now;
for i0 := 1 to iRecord do
begin
if i0 mod 50 = 0 then
begin
ADOQuery1.Close;
ADOQuery1.Sql.Text := strSQL;
ADOQuery1.ExecSQL;
strSQL := '';
end;
strSQL := strSQL + Format(InsertSQL, [QuotedStr('2004-10-1')]);
end;
dtEnd := Now;
Memo1.Lines.Add(Format('%f', [(dtEnd - dtStart) / (1 / (24 * 3600))]));
end;
procedure TForm1.BtnPostClick(Sender: TObject);
var
i0: Integer;
iRecord: Integer;
begin
iRecord := StrToIntDef(EdtCount.text, 0);
ADOQuery1.Open;
ADOQuery1.DisableControls;
dtStart := Now;
for i0 := 1 to iRecord do
begin
ADOQuery1.Append;
ADOQuery1.FieldByName('d1').AsDateTime := 2004-10-1;
ADOQuery1.Post;
end;
dtEnd := Now;
ADOQuery1.EnableControls;
Memo1.Lines.Add(Format('%f', [(dtEnd - dtStart) / (1 / (24 * 3600))]));
end;
procedure TForm1.BtnAdoCommandClick(Sender: TObject);
var
i0: Integer;
iRecord: Integer;
begin
iRecord := StrToIntDef(EdtCount.text, 0);
dtStart := Now;
for i0 := 1 to iRecord do
begin
ADOCommand1.Parameters.ParamByName('d1').Value := 2004-10-1;
ADOCommand1.Execute;
end;
dtEnd := Now;
ADOQuery1.EnableControls;
Memo1.Lines.Add(Format('%f', [(dtEnd - dtStart) / (1 / (24 * 3600))]));
end;
procedure TForm1.BtnUpdateBatchClick(Sender: TObject);
var
i0: Integer;
iRecord: Integer;
begin
iRecord := StrToIntDef(EdtCount.text, 0);
ADOQUERY1.LOCKTYPE := LTBATCHOPTIMISTIC;
ADOQuery1.Open;
ADOQuery1.DisableControls;
dtStart := Now;
for i0 := 1 to iRecord do
begin
ADOQuery1.Append;
ADOQuery1.FieldByName('d1').AsDateTime := 2004-10-1;
ADOQuery1.Post;
end;
ADOQUERY1.UpdateBatch();
dtEnd := Now;
ADOQuery1.EnableControls;
Memo1.Lines.Add(Format('%f', [(dtEnd - dtStart) / (1 / (24 * 3600))]));
ADOQuery1.Close;
ADOQUERY1.LOCKTYPE := LTOPTIMISTIC;
end;
end.
zdq801104
2004-11-20
打赏
举报
回复
insert into 表名(字段名1,字段名2...) values(值1,值2...)就可以了
zdq801104
2004-11-20
打赏
举报
回复
用SQL语句不就可以了吗?
呸呸呸呸呸呸呸呸呸
2004-11-20
打赏
举报
回复
帮忙啊~
insert
插入
多条
记录
、快速复制
表
、将查询结果
插入
一张
表
insert
插入
多条
记录
,快速复制
表
,将查询结果
插入
一张
表
一次查询
多条
记录
插入
另
一张
表
insert into XT_JL_SJNR(SJDM,STDM,FZ)select top 5 1,t.STDM,2 from (select newid() as nid ,STDM from XT_JL_TK where SSZJ= 2 ) as t order by t.nid
sql server
多条
记录
同时
插入
一张
表
insert into student select 'wenmo',123,1,2,3 union select 'hello',123,1,2,3 union select 'world',123,1,2,3; 转载于:https://www.cnblogs.com/xxml/p/5761420.html
Mysql复制一条或
多条
记录
并
插入
表
|mysql从某
表
复制一条
记录
到另
一张
表
Mysql复制一条或
多条
记录
并
插入
表
|mysql从某
表
复制一条
记录
到另
一张
表
一、复制
表
里面的一条
记录
并
插入
表
里面 ① insert into article(title,keywords,desc,contents) select title,keywords,desc,contents from article where article_id = 100;二、复制
表
里的
多条
数据...
一次
插入
多条
记录
的SQL语句介绍
在使用SQL数据库的时候,我们也许会需要一次像数据库中添加
多条
记录
,那么我们可以使用SQL语句来实现,该语句具体如下: --添加一条
记录
INSERT INTO tableName(col1,col2,col3) VALUES (1,2,3) --添加
多条
记录
INSERT INTO tableName(col1,col2,col3) SEL
语言基础/算法/系统设计
16,741
社区成员
33,233
社区内容
发帖
与我相关
我的任务
语言基础/算法/系统设计
Delphi 语言基础/算法/系统设计
复制链接
扫一扫
分享
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章