返回顶部
首页 > 资讯 > 精选 >CLR函数如何压缩NTEXT类型字段
  • 747
分享到

CLR函数如何压缩NTEXT类型字段

2023-06-17 21:06:32 747人浏览 八月长安
摘要

小编给大家分享一下CLR函数如何压缩NTEXT类型字段,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!CLR(公共语言运行库)和Java虚拟机一样也是一个运行时环境,它负责资源管理(内存分配和垃圾收集),并保证应用和底层操作

小编给大家分享一下CLR函数如何压缩NTEXT类型字段,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

CLR(公共语言运行库)和Java虚拟机一样也是一个运行时环境,它负责资源管理(内存分配和垃圾收集),并保证应用和底层操作系统之间必要的分离。为了提高平台的可靠性,以及为了达到面向事务的电子商务应用所要求的稳定性级别,CLR还要负责其他一些任务,比如监视程序的运行。按照.net的说法,在CLR监视之下运行的程序属于"受管理的"(managed)代码,而不在CLR之下、直接在裸机上运行的应用或者组件属于"非受管理的"(unmanaged)的代码 。可以在 SQL Server 实例中创建可在 Microsoft .NET Framework 公共语言运行时 (CLR) 中创建的程序集中进行编程数据库对象。可以充分利用公共语言运行时所提供的丰富的编程模式的数据库对象包括聚合函数、函数、存储过程、触发器以及类型。下面给大家举个sql server 2005 使用clr函数压缩ntext类型字段例子:

vs2005为数据新建一个数据库工程。

using System;  using System.Data;  using System.Data.SqlClient;  using System.Data.SqlTypes;  using Microsoft.SqlServer.Server;  using System.io;  using System.IO.Compression;  using System.Text;  public partial class Gzip  {  [Microsoft.SqlServer.Server.SqlFunction]  public static SqlChars GzipToString(SqlBytes gBytes)  {  byte[] bytes = gBytes.Value;  bytes = Decompress(bytes);  string str = Encoding.GetEncoding(936).GetString(bytes);  SqlChars sqlchars = new SqlChars(str);  return (sqlchars);  }  [Microsoft.SqlServer.Server.SqlFunction]  public static SqlBytes StringToGzip(SqlChars chars)  {  byte[] bytes = Encoding.GetEncoding(936).GetBytes(chars.Buffer);  bytes = Compress(bytes);  SqlBytes gBytes = new SqlBytes(bytes);  return (gBytes);  }  #region 采用.net系统自带Gzip压缩类进行流压缩  /// <summary> /// 压缩数据  /// summary> /// <param name="data">param> /// <returns>returns> public static byte[] Compress(byte[] data)  {  byte[] bData;  MemoryStream ms = new MemoryStream();  GZipStream stream = new GZipStream(ms, CompressionMode.Compress, true);  stream.Write(data, 0, data.Length);  stream.Close();  stream.Dispose();  //必须把stream流关闭才能返回ms流数据,不然数据会不完整  //并且解压缩方法stream.Read(buffer, 0, buffer.Length)时会返回0  bData = ms.ToArray();  ms.Close();  ms.Dispose();  return bData;  }  /// <summary> /// 解压数据  /// summary> /// <param name="data">param> /// <returns>returns> public static byte[] Decompress(byte[] data)  {  byte[] bData;  MemoryStream ms = new MemoryStream();  ms.Write(data, 0, data.Length);  ms.Position = 0;  GZipStream stream = new GZipStream(ms, CompressionMode.Decompress, true);  byte[] buffer = new byte[1024];  MemoryStream temp = new MemoryStream();  int read = stream.Read(buffer, 0, buffer.Length);  while (read > 0)  {  temp.Write(buffer, 0, read);  read = stream.Read(buffer, 0, buffer.Length);  }  //必须把stream流关闭才能返回ms流数据,不然数据会不完整  stream.Close();  stream.Dispose();  ms.Close();  ms.Dispose();  bData = temp.ToArray();  temp.Close();  temp.Dispose();  return bData;  }  #endregion  }

给数据库增加一个varbinary(MAX) 字段,把压缩以后的转移过来以后删除原来的字段。

然后使用clr函数的这两个如下

select:  SELECT top 10 dbo.GzipToString([content1]) FROM [content_02]  insert: insert into   [content_02] ([content1]) values(dbo.StringToGzip('123abc'))

看完了这篇文章,相信你对“CLR函数如何压缩NTEXT类型字段”有了一定的了解,如果想了解更多相关知识,欢迎关注编程网精选频道,感谢各位的阅读!

--结束END--

本文标题: CLR函数如何压缩NTEXT类型字段

本文链接: https://lsjlt.com/news/293038.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • CLR函数如何压缩NTEXT类型字段
    小编给大家分享一下CLR函数如何压缩NTEXT类型字段,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!CLR(公共语言运行库)和Java虚拟机一样也是一个运行时环境,它负责资源管理(内存分配和垃圾收集),并保证应用和底层操作...
    99+
    2023-06-17
  • navicat如何看字段类型
    要查看Navicat中的字段类型,您可以按照以下步骤操作: 打开Navicat并连接到您的数据库。 在左侧的导航栏中,选择您想要查...
    99+
    2023-10-26
    navicat
  • oracle如何更改字段数据类型
    要更改Oracle数据库表中的字段数据类型,可以使用ALTER TABLE语句和MODIFY子句。以下是一个更改字段数据类型的示例:...
    99+
    2023-10-19
    oracle
  • mysql如何修改字段数据类型
    要修改MySQL表中的字段数据类型,可以使用ALTER TABLE语句。下面是修改字段数据类型的示例:```ALTER TABLE ...
    99+
    2023-08-25
    mysql
  • sqlserver如何改变字段数据类型
    要改变字段的数据类型,可以使用ALTER TABLE语句加上MODIFY COLUMN子句来实现。 例如,如果要将字段"a...
    99+
    2024-04-02
  • python如何使用Zip()压缩函数
    小编给大家分享一下python如何使用Zip()压缩函数,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Zip()压缩函数zip()函数在一对一匹配连接多个迭代器方...
    99+
    2023-06-27
  • mysql如何修改字段类型
    这篇文章主要介绍mysql如何修改字段类型,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!在mysql中,可以使用“ALTER  TABLE 表名 MODIFY [COLUM...
    99+
    2024-04-02
  • mongodb如何修改字段类型
    mongodb中修改字段类型的方法:在mongodb中使用“db.tb_name.find({"status":{$type:"double"}).count()”或“db.tb_name.find(...
    99+
    2024-04-02
  • pgsql如何修改字段类型
    要修改 PostgreSQL 数据库中表的字段类型,可通过以下步骤进行操作:1. 使用 ALTER TABLE 语句更改字段类型。例...
    99+
    2023-10-07
    pgsql
  • plsql如何查看字段类型
    在PL/SQL中,可以使用以下两种方法来查看字段类型: 使用DESCRIBE命令:DESCRIBE命令用于查看表、视图或包中的对...
    99+
    2023-10-27
    plsql
  • mysql如何更改字段类型
    要更改MySQL数据库表中字段的数据类型,可以使用ALTER TABLE语句来实现。以下是一个简单的示例,显示如何将一个字段从INT...
    99+
    2024-04-02
  • impala如何修改字段类型
    要修改Impala表中的字段类型,可以使用ALTER TABLE语句。 例如,要将表中的字段类型从int修改为string,可以按照...
    99+
    2024-04-02
  • sqlite如何修改字段类型
    要修改 SQLite 数据库中现有字段的数据类型,您可以使用 ALTER TABLE 语句。以下是一个示例: -- 修改字段类型为I...
    99+
    2024-04-09
    sqlite
  • sql数据库如何查看字段类型
    在SQL数据库中,可以使用DESCRIBE或者SHOW命令来查看表中的字段类型。 例如,可以使用以下命令来查看名为"tab...
    99+
    2024-04-02
  • MySQL如何修改字段类型和字段长度
    目录mysql修改字段类型和字段长度1、修改字段类型2、修改字段长度修改数据库表的某一字段长度mysql修改字段类型和字段长度 1、修改字段类型 格式:alter table 表名 ...
    99+
    2024-04-02
  • 如何在PHP中使用压缩和解压函数
    PHP作为一种流行的编程语言,提供了许多处理文件和数据的功能。其中包括压缩和解压文件的函数。这些函数可以让开发者在PHP中轻松地压缩和解压数据,从而减少文件大小并提高传输效率。本文将介绍如何在PHP中使用压缩和解压函数。一、压缩文件在PHP...
    99+
    2023-05-19
    压缩 PHP 解压函数
  • Mysql如何修改字段名和修改字段类型
    这篇文章主要讲解了“Mysql如何修改字段名和修改字段类型”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Mysql如何修改字段名和修改字段类型”吧!1、修改字段类型、字段名、字段注释、类型长...
    99+
    2023-06-30
  • oracle如何修改数据库表字段类型
    您可以使用ALTER TABLE语句来修改Oracle数据库表的字段类型。下面是一个例子:```sqlALTER TABLE 表名 ...
    99+
    2023-09-05
    oracle 数据库
  • php如何更改数据表的字段类型
    这篇文章主要介绍了php如何更改数据表的字段类型的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇php如何更改数据表的字段类型文章都会有所收获,下面我们一起来看看吧。连接数据库首先,我们需要使用PHP连接到数据库...
    99+
    2023-07-05
  • php如何修改数据表的字段类型
    这篇文章主要介绍“php如何修改数据表的字段类型”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“php如何修改数据表的字段类型”文章能帮助大家解决问题。在 PHP 中,修改数据表的字段类型是一项非常重...
    99+
    2023-07-05
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作