几段SQLServer语句和存储过程IF (@@fetch_status <> -2) -- Missing BEGIN SET @sql=N'SET @maxlen=(SELECT max(len(cast('+@fld+' as nvarchar))) FROM '+@tbl+')' --PRINT @sql EXEC SP_EXECUTESQL @sql,N'@maxlen int OUTPUT',@maxlen OUTPUT --print @maxlen SET @sql=N'SET @sample=(SELECT TOP 1 cast('+@fld+' as nvarchar) FROM '+@tbl+' WHERE len(cast('+@fld+' as nvarchar))='+convert(nvarchar(5),@maxlen)+')' EXEC SP_EXECUTESQL @sql,N'@sample varchar(30) OUTPUT',@sample OUTPUT --for quickly --SET @sql=N'SET @sample=convert(varchar(20),(SELECT TOP 1 '+@fld+' FROM '+ --@tbl+' order by 1 desc ))' PRINT @sql print @sample print @tbl EXEC SP_EXECUTESQL @sql,N'@sample nvarchar(30) OUTPUT',@sample OUTPUT INSERT INTO #tc SELECT *,ltrim(ISNULL(@maxlen,0)) as MaxLenUsed, convert(nchar(20),ltrim(ISNULL(@sample,' '))) as Sample,' ' Comment FROM #t where TableName=@tbl and FieldName=@fld END FETCH NEXT FROM read_cursor INTO @tbl,@fld END CLOSE read_cursor DEALLOCATE read_cursor GO 上一篇:在SQLSERVER2005中实现素数计算 下一篇:SQLServer2005的一般部署步骤 更多相关文章
|
推荐文章
精彩文章
|