必须会的SQL语句(三) 数据插入
投稿:mdxy-dxy
1.规范一些使用插入语句的小规范
1)中文字符串前 最好 加一个N
2)列名用中括号 扩起来 像这样 [列名]
2.常规写法
Insert into tableName
( [column1] , [column2] )
values
(N'中文','11ds')
3.多行一条语句插入多行
insert into 表名 ([列1],[列2])
select '值1','值2' union all --这里呢,union 和 union all的 区别
--主要是对于重复值得处理,union 会过滤掉重复行,而union all会全插进去
select '值3','值4' union
select '值5','值6'
4.复制到新表 将原有表中的数据复制到一个不存在的新表中
select * into newtable from oldtable
--仅复制表结构如何做呢?
select * into newtable from oldtable where 1<>1
select top 0 * into newtable from oldtable
5.插入其他表的数据 向一个已有表中,复制其他表的数据
insert into tablename(column,column2)
select column,column2 from oldtable
6.强行写入 强行写入标识字段。
--对于已经设置自动增长的列,默认情况我们无法对其输入值。
--可以用一下语句去强行写入。
--1)开启添加,(解除添加的限制)
Set indentity_insert tablename On
--2)可以手动插入id了
insert into 表明 (id,name) values ('1002','大二')
--3)关闭手动插入
Set indentity_insert tablename off