sql 存储过程生成sql 插入语句
在查询分析器以“文本显示结果”方法执行
exec UspOutputData 你的表名
得到导出数据的语句,但image,text,ntext,sql_variant 列不出现在语句,以后改进。
存储过程UspOutputData如下:
CREATE PROCEDURE dbo.UspOutputData
@tablename sysname
AS
declare @column varchar(1000)
declare @columndata varchar(1000)
declare @sql varchar(4000)
declare @xtype tinyint
declare @name sysname
declare @objectId int
declare @objectname sysname
declare @ident int
set nocount on
set @objectId=object_id(@tablename)
if @objectId is null -- 判斷對象是否存在
begin
print 'The object not exists'
return
end
set @objectname=rtrim(object_name(@objectId))
if @objectname is null or charindex(@objectname,@tablename)=0 --此判断不严密
begin
print 'object not in current database'
return
end
if OBJECTPROPERTY(@objectId,'IsTable') <> 1 -- 判斷對象是否是table
begin
print 'The object is&nbs
相关文档:
如何开启SQL CLR
开启SQL CLR有两步操作,如下所示:
1. 开启SQLCLR,在sql server2005中执行如下脚本,开启SQL CLR功能
EXEC sp_configure 'show advanced options' , '1';
go
reconfigure;
go
EXEC sp_configure 'clr enabled' , '1'
go
reconfigure;
-- Tu ......
视图可以被看成是虚拟表或存储查询。可通过视图访问的数据不作为独特的对象存储在数据库内。数据库内存储的是 SELECT 语句。SELECT 语句的结果集构成视图所返回的虚拟表。用户可以用引用表时所使用的方法,在 Transact-SQL 语句中通过引用视图名称来使用虚拟表。使用视图可以实现下列任一或所有功能:
将用户限定在表 ......
触发程序(trigger)是一种特殊型态的预存程序,当您使用Insert、Update或Delete命令来修改资料列时,Microsoft SQL Server会自动执行您所定义的触发程序。
触发程序(trigger) 是一种特殊的预存程序,执行特定的陈述式(Update、Insert 或 Delete)就可以啟动触发程序。触发 ......
作者:敖士伟
一张有group by后可能很多重复行,这时用not in等基于唯一列的分布算法会存在问题。
我的解决办法是:
一张表有一个id int的主键,对其它列进行group by,分页思想是:把max(id)做group by后的唯一列,还是用not in的分布思想。
例:
select top 4 sum(int_TZ2_id) as id,dt_TZ2_date,vchar_TZ2_Pin ......
函数
SQLServer和Oracle的常用函数对比
1.绝对值
S:select abs(-1) value
O:select abs(-1) value from dual
2.取整(大)
S:select ceiling(-1.001) value
O:select ceil(-1.001) value from dual
3.取整(小)
S:select floor(-1.001) value
O:select floor(-1.001 ......