- Insert Values
- Insert Select
- Insert Exec
- Select Into
- Bulk Insert
Insert Values是最常用的一种插入数据的方式,基本语法如下,表名之后可以指定目标列的名称,这种显式的指定目标列的名称是可选的,但是这种做法的好处是对语句的列值列名之间的关联关系进行控制,而不必单纯的依赖定义表时
各个列出现的顺序
INSERT INTO dbo.DimDate
( DataKey ,
Year ,
Qu ,
QuCN ,
Month ,
MonthCN ,
Ten ,
TenCN ,
Week ,
WeekDay ,
Day ,
Date
)
VALUES ( 0 , -- DataKey - int
0 , -- Year - int
0 , -- Qu - int
'' , -- QuCN - varchar(20)
0 , -- Month - int
'' , -- MonthCN - varchar(20)
0 , -- Ten - int
'' , -- TenCN - varchar(20)
0 , -- Week - int
'' , -- WeekDay - varchar(20)
0 , -- Day - int
'2014-09-23 13:34:16' -- Date - datetime
)
确定列值的优先级顺序:给定的值》默认值》Null
Sql2008增强了Values功能,允许在一条语句中指定由逗号隔开的多条记录
INSERT INTO dbo.Table_1 ( ID ) VALUES ( 0 ),( 1 ),( 2 )
使用Values构建虚拟表
SELECT * FROM (VALUES ( 0 ),( 1 ),( 2 )) AS a(id)
Insert Select
Insert Select 将一组由Select查询返回的结果行插入到目标表中(目标表是已经存在的表,这一点和Select Into有区别)
INSERT INTO dbo.Table_1 SELECT * FROM dbo.Table_2
Insert Exec
Insert Exec 语句可以把存储过程或动态Sql批处理返回的结果集插入到目标表
Select Into
Select Into的作用是创建一个目标表,并用返回的结果集填充它,不能用这个语句向已经存在的表中插入数据,
当指定的目标表是临时表时自动创建一个临时表,指定为用户表时创建一个用户表,
Select Into 会复制来源表的基本结构(包括列名、数据类型、是否允许NUll以及IDentity属性),不会复制的三样东西(约束、索引、触发器)
Select into的另一个优点:如果数据库的属性没有设置成完成恢复模式,Select into 就会按照最小日志记录模式来执行操作
Bulk Insert
这种方式用的比较少,用于将文件中的数据导入一个已经存在的表
示例本例从指定的数据文件中导入订单详细信息,该文件使用竖杠 (|) 字符作为字段终止符,使用 |/n 作为行终止符。
BULK INSERT Northwind.dbo.[Order Details] FROM 'f:/orders/lineitem.tbl'
WITH (
FIELDTERMINATOR = '|',
ROWTERMINATOR = '|/n'
)
向SqlServer数据库插入数据的更多相关文章
-
sqlServer数据库插入数据后返回刚插入记录的自增ID
insert into tabls1(row1,row1) values('0','0') select @@IDENTITY
-
SQLServer 批量插入数据的两种方法
SQLServer 批量插入数据的两种方法-发布:dxy 字体:[增加 减小] 类型:转载 在SQL Server 中插入一条数据使用Insert语句,但是如果想要批量插入一堆数据的话,循环使用Ins ...
-
SQLServer数据库误删数据找回
记一次SQLServer数据库误删数据找回 昨天 同事在本机清理数据库表时,连接到了生产机,误删了二十几张表,幸好是晚上加班的时候删除的,生产机上当时是一天一备份,还原备份是最后的策略,最关键的还是要 ...
-
JMeter 利用Jmeter批量数据库插入数据
利用Jmeter批量数据库插入数据 by:授客 QQ:1033553122 1. 启动Jmeter 2. 添加 DBC Connection Configuration 右键线程组-> ...
-
在function module 中向数据库插入数据
http://www.sapjx.com/abap-function-module.html 1: 应该在function module 中向数据库插入数据
-
使用mybatis向oracle数据库插入数据异常
遇到了使用mybatis向oracle数据库插入数据异常的问题, 具体的报错如下:org.springframework.jdbc.UncategorizedSQLException: ### Err ...
-
Excel向数据库插入数据和数据库向Excel导出数据
为了熟悉java里工作簿的相关知识点,所以找了“Excel向数据库插入数据和数据库向Excel导出数据”的功能来实现. 注意事项:1,mysql数据库: 2,需要导入的jar包有 jxl.jar,my ...
-
MySQL数据库插入数据出现 ERROR 1526 (HY000): Table has no partition for value xxx
MySQL数据库插入数据出现ERROR 1526 (HY000): Table has no partition for value xxx工作的时候发现无法插入数据,报错:ERROR 1526 (H ...
-
数据库插入数据返回当前主键ID值方法
当我们插入一条数据的时候,我们很多时候都想立刻获取当前插入的主键值返回以做它用.我们通常的做法有如下几种: 1. 先 select max(id) +1 ,然后将+1后的值作为主键插入数据库: 2. ...
随机推荐
-
如何发布一个Mac应用并使其成为全球付费榜第一
Readdle公司如何发布第一个 Mac App,并使之成为Mac App Store 全球付费排名第一的 Easy注:自从发布了<程序员如何优雅的挣零花钱?>后,就不断有同学询问怎么做A ...
-
使用HTML5的十大原因
你难道还没有考虑使用HTML5? 当然我猜想你可能有自己的原因:它现在还没有被广泛的支持,在IE中不好使,或者你就是喜欢写比较严格的XHTML代码.HTML5是web开发世界的一次重大的改变,事实上不 ...
-
C# WinForm窗体控件Panel修改边框颜色以及边框宽度方法
C# WinForm窗体控件Panel修改边框颜色以及边框宽度方法 1.新建组件这里可以自定义一个Panel控件起名为PanelEx 2.增加一个BoderColor属性和BoderSize属性 pr ...
-
微信小程序实现计算器功能
page { height:100%;} .calculator { width: 100%; height: 100vh; border:solid 1px; background: rgb(238 ...
-
C# SFTP
最近需要通过SFTP来获取文件. 下面是我整理的相关信息. 以下只是大致代码,大家看看就行了. 我的是window service.每天会去下载文件. 1 下载 Renci.SshNet 通过 nu ...
-
vue-router-transiton
<template> <transition name="slide-left" mode="out-in"> <router-v ...
-
canvas实例_在线画图工具
fadsfklasdjfklasjdklfjasdlk;fjasd;lfjaskl;dfjal
-
Java后端,应该日常翻看的中文技术网站<;转>;
你还在学习吗? 1.内容生产者 InfoQ中文技术第一站,佩服霍老板,真金白银地为中国程序员们生产内容. ImportNew专门面向Java的内容生产者兼聚合者,偶然也有些面向入门的小白文. 并发编程 ...
-
KNOCKOUTJS DOCUMENTATION-绑定(BINDINGS)-自定义绑定
除了ko内建的绑定,还可以自定义绑定,灵活地封装复杂的行为使之可重用. 自定义绑定 注册自定义绑定 向 ko.bindingHandles添加一个子属性来注册一个绑定. ko.bindingHandl ...
-
js格式化文件大小,单位:Bytes、KB、MB、GB
原文出自:https://blog.csdn.net/seesun2012 // 格式化文件大小 function renderSize(value){ if(null==value||value== ...