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
相关文档:
系统环境:Windows 7
软件环境:Visual C++ 2008 SP1 +SQL Server 2005
本次目的:编写一个航空管理系统
这是数据库课程设计的成果,虽然成绩不佳,但是作为我用VC++ 以来编写的最大程序还是传到网上,以供参考。用VC++ 做数据库设计并不容易,但也不是不可能。以下是我的程序界面,后面 ......
treeview.aspx中代码如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="treeview.aspx.cs" Inherits="treeview" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999 ......
前言
本文档主要介绍与SQL调整有关的内容,内容涉及多个方面:SQL语句执行的过程、ORACLE优化器,表之间的关联,如何得到SQL执行计划,如何分 析执行计划等内容,从而由浅到深的方式了解SQL优化的过程,使大家逐步步入SQL调整之门,然后你将发现……。
&nb ......
昨天解析了dblp.xml,存入数据库,生成了若干张临时表。今天上午,对这些临时表进行处理,然后存入实验设计的表中。数据库的数据量比较大,50多M,80多万条记录。因而执行sql时,就遇到了很多问题。
1、去除重复tuple
原始dblp.xml中,同一论文的存在几个完全相同的&l ......
最近用到日期范围的查询,用到了between,但是发现如果日期带时间的话,BETWEEN '2010-1-4' AND
'2010-1-4'这样的语句是查不到数据的,后来想到了一种改进方法,供大家参考。
如下:
BETWEEN '2010-1-4' AND DATEADD(day, 1, '2010-1-4')
用了DATEADD以后,效果很不错 ......