SQL Server批量向表中插入多行数据语句
因自己学习测试需要,需要两个有大量不重复行的表,表中行数越多越好。手动编写SQL语句,通过循环,批量向表中插入数据,考虑到避免一致问题,设置奇偶行不同。个人水平有限,如有错误,还望指正。
语句如下:
1 --批量向表中插入大量数据语句(奇偶不同)
2
3 --判断测试表是否存在,存在则先删除再创建
4 if exists(select 1 from sysobjects where xtype='u' and name='table_test' )
5 drop table table_test
6 create table table_test(
7 id int,
8 name char(50),
9 address char(50),
10 gender char(10)
11 )
12
13 declare @n int
14 declare @name varchar(50)--使用变量
15 declare @name1 varchar(50)--设置奇数用
16 declare @name2 varchar(50)--设置偶数用
17 declare @addre varchar(50)--使用变量
18 declare @sql varchar(200)
19 set @n=0
20 set @addre='的家'
21 set @name=' '
22 set @name1='Tom'
23 set @name2='Jarry'
24 while @n<998--不要2999,也不要1999,只要998,没错,只要998
25 begin
26 set @n=@n+1
27 if @n%2=1--奇数行
28 begin
29 set @name=@name1+convert(varchar,@n)--名字与编号组合,避免name列重复
30 set @addre=@name+@addre--地址由名字跟“的家”组合,避免不同
31 set @sql='insert into table_test (id,name,address,gender) values('+convert(int,@n)+','+@name+','+@addre+',''male'')'
32 set @addre='的家'--由于@address已经赋新值,手动恢复初始值,避免重复赋值导致字符超长
33 print(@sql)
34 exec(@sql)
35 end
36 else--偶数行
37 begin
38 set @name=@name2+convert(varchar,@n)
39 set @addre=@name+@addre
40 set @sql='insert into table_test (id,name,address,gender) values('+convert(int,@n)+','+@name+','+@addre+',''female'')'
41 set @addre='的家'
42 print(@sql)
43 exec(@sql)
44 end
45 end
这样便可以按照需求向表中批量插入多行。
我自己尝试插入了18750000行。
NiCE
SQL Server批量向表中插入多行数据语句的更多相关文章
- SQL Server 向堆表中插入数据的过程
堆表中 IAM 记录着的数据页,表的各个数据页之间没有联系.也就是说一个页面它不会知道自己的前一页是谁,也不知道自己的后一页是谁. 插入数据时先找到IAM页,再由pfs(page free spac ...
- 6-03使用SQL语句一次型向表中插入多行数据
通过将现有表中的数据添加到已存在的表中: INSERT INTO <表名><列名> SELECT<列名> FROM<源表名> 将UserInfo的数据添 ...
- SQL中将某个表中的多行数据在一个字段显示
项目需求:将某个表中的多行数据在一个字段显示,如下: 比如表A中有字段 ID,NAME, 表B中有字段ID,PID,DES, 表A,表B中的数据分别如下: ID NAME1 张三2 李四 ID PID ...
- mssql 一次向表中插入多条数据的方法分享 (转自:http://www.maomao365.com/?p=6058)
转自:http://www.maomao365.com/?p=6058) <span style="font-size:16px;font-weight:bold;"> ...
- MySQL 向表中插入、删除数据
一.向表中插入一条信息 1.查看表中的数据 mysql> SELECT * FROM user; +----+---------+----------+ | id | account | pas ...
- Sql server中用现有表中的数据创建Sql的Insert插入语句
之前,在Codeproject发表过一篇关于用现有表中数据创建Insert的Sql语句的存储过程,今天将其搬到这里来,注意本存储过程仅适用于SQL SERVER. 介绍 一些时候,你想导出一些现有表中 ...
- SQL SERVER数据库的表中修改字段的数据类型后,不能保存
在数据库里面建了一个表,可是由于对SQL SERVER的建表功能不熟悉,不知道把主键设成什么是好,就先设置了个TEXT类型,可是后来朋友们告诉我说,TEXT类型容易让数据文件变得很大,还 是改成一 ...
- Sql Server 2008 R2数据库中插入中文变成了问号
通过Insert语句插入数据库中,结果中文都变成了乱码.原因是在数据库中有一个属性需要设置,可以通过Sql server manager studio来进行设置,也要可以通过代码来设置 ...
- SQL SERVER数据库的表中修改字段属性被阻止“Prevent saving changes that require table re-creation”
1.启动SQL SERVER,选择工具—>选项,去掉“ 阻止保存要求重新创建表的更改”前面的勾. 2.选择设计器 3.去掉“阻止保存要求重新创建表的更改”前面的对号,点击OK. 重新启动SQL ...
随机推荐
- PyQt(Python+Qt)学习随笔:QAbstractScrollArea的viewPort(视口)理解
老猿Python博文目录 老猿Python博客地址 在学习Designer中ItemViews类部件时,这些部件都有个父类QAbstractScrollArea,该父类是Qt滚动区域的低级抽象.该区域 ...
- PyQt(Python+Qt)学习随笔:布局控件layoutStretch属性
在Qt Designer中布局控件有4个,分别是Vertical Layout(垂直布局).Horizontal Layout(水平布局).Grid Layout(网格布局).Form Layout( ...
- 从Excel获取整列内容进行批量扫描
实习工作原因,需要测试excel表里面ip地址是否存在漏洞,扫了一眼,呕,四五百个IP,光是挨个进行访问,都是一个浩大的工程,所以准备开始摸鱼认真工作 思路是:excel按列提取->将IP按行存 ...
- mac中nvm的安装和使用
nvm 是 Mac 下的 node 管理工具,如果是管理 Windows 下的 node,可以使用 nvmw 或 nvm-windows . 一.若电脑中已安装node,需先卸载.参考学习的文档:ht ...
- 博流BL602&BL604开发板介绍
在2020松山湖论坛上,博流智能科技(南京)有限公司销售副总裁刘占领介绍了基于RISC-V核的低功耗.高可靠Wi-Fi+BLE二合一SoC芯片BL602.主要应用领域包括人工智能与工业互联网,特别是电 ...
- 你来说一下springboot的启动时的一个自动装配过程吧
前言 继续总结吧,没有面试就继续夯实自己的基础,前阵子的在面试过程中遇到的各种问题陆陆续续都会总结出来分享给大家,这次要说的也是面试中被问到的一个高频的问题,我当时其实没答好,因为很早之前是看到spr ...
- sql 执行语句函数
# sql 语句执行函数 def get_access(request): uid=request cursor=connection.cursor() cursor.execute("se ...
- gnuplot取消曲线标题
plot 'File.dat' using 1:2 notitle或者 plot 'File.dat' using 1:2 title ""
- 轮廓检测论文解读 | Richer Convolutional Features for Edge Detection | CVPR | 2017
有什么问题可以加作者微信讨论,cyx645016617 上千人的粉丝群已经成立,氛围超好.为大家提供一个遇到问题有可能得到答案的平台. 0 概述 论文名称:"Richer Convoluti ...
- Unity 3D里相机的平滑跟随(转)
1 using System.Collections; 2 using System.Collections.Generic; 3 using UnityEngine; 4 public class ...