SQL CLR 集成
一、配置 SQL Server,使之允许 CLR 集成:
1.单击“开始”按钮,依次指向“所有程序”、Microsoft SQL Server 2005 和“配置工具”,然后单击“外围应用配置器”。
2.在 SQL Server 2005 外围应用配置器工具中,单击“功能的外围应用配置器”。
3.选择您的服务器实例,展开“数据库引擎”选项,然后单击“CLR 集成”。
4.选择“启用 CLR 集成”。
此外,您可以在 SQL Server 中运行以下查询(此查询需要 ALTER SETTINGS 权限):
USE [database]
sp_configure 'clr enabled', 1;
GO
RECONFIGURE;
GO
二、创建 SQL Server Project,配置数据库连接信息。右键打开该项目属性,选择“database ”,将Permission Level设为“unsafe”
三、
项目创建后添加一个.cs 文件,如下演示如何进行表值函数扩展
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SqlServer.Server;
using System.Diagnostics;
using System.Data.SqlTypes;
using System.Collections;
public partial class FuncTest
{
//表值函数定义.第一个方法 (InitMethod) 赋予 SqlFunction 属性,用于将它指定为该表值函数的入口点
//此方法必须返回 IEnumerable 或 IEnumerator 对象。该对象包含将用于填充返回表的数据。
//执行该函数时,SQL Server 将循环访问 IEnumerator 对象中的每个对象,并使用它来填充数据行。
//为此,它要将该对象传递到该类中的第二个方法 FillRow。此方法会将该对象转换成返回表中的某一行。
//此方法在 SqlFunction 属性的 FillRowMethodName 参数中指定
//部署项目后在数据库中会生成相应的表值函数dbo.ReadEventLog
[SqlFunction(TableDefinition = "logTime datetime,Message nvarchar(4000),Category nvarchar(4000),InstanceId bigint",
Name = "ReadEventLog", FillRowMethodName = "F
相关文档:
固定长度(char)与可变长度(varchar)字符数据类型
char[(n)]
长度为n个字节的固定长度且非Unicode的字符数据。n必须是一个介于1和8,000之间的数值。存储大小为n个字节。char在SQL-92中的同义词为character。
varchar[(n)]
长度为n个字节的可变长度且非Unicode的字符数据。n必须是一个介于1和8,000之间的数值。存储大小为 ......
一、适合读者对象:数据库开发程序员,数据库的数据量很多,涉及到对SP(存储过程)的优化的项目开发人员,对数据库有浓厚兴趣的人。
二、介绍:在数据库的开发过程中,经常会遇到复杂的业务逻辑和对数据库的操作,这个时候就会用SP来封装数据库操作。如果项目的SP较多,书写又没有一定的规范,将会影响以后的系统维护 ......
SQL语句导入导出
/******* 导出到excel
EXEC master..xp_cmdshell 'bcp SettleDB.dbo.shanghu out c:\temp1.xls -c -q -S"GNETDATA/GNETDATA" -U"sa" -P""'
/*********** 导入Excel
SELECT *
from OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
'Data Source="c:\test.xls";User ID=Admin;Password=;Extended propert ......