SQLSERVER2000下按任意的字段旋转的存储过程

sqlserver2000 下导出Excel数据 --命令行方法 导出为Excel EXEC master..xp_cmdshell 'bcp system_manager.dbo.family_code out c:\temp1.xls -c -q -  S"GNETDATA/GNETDATA" -U"sa" -P""' --该方法导出的Excel是文本文件,不是真正的Excel,因此打开时,office会提示扩展名与格式不兼容,但是不 阅读详情

 ----------------------------------------------------------------------------
-- 分段截取函数
----------------------------------------------------------------------------
CREATE    FUNCTION DBO.FUN_SplitStr(
@S VARCHAR(8000),      -- 包含多个数据项的字符串
@POS INT,              -- 要获取的数据项的位置
@SPLIT VARCHAR(10)    -- 数据分隔符
) RETURNS VARCHAR(128)
AS
BEGIN
IF @S IS NULL RETURN(NULL)
DECLARE @SPLITLEN INT
SELECT @SPLITLEN=LEN(@SPLIT+'A')-2
WHILE @POS>1 AND CHARINDEX(@SPLIT,@S+@SPLIT)>0 BEGIN
SELECT @POS=@POS-1,
@S=STUFF(@S,1,CHARINDEX(@SPLIT,@S+@SPLIT)+@SPLITLEN,'')
END
RETURN  LEFT(@S,CHARINDEX(@SPLIT,@S+@SPLIT)-1)
END

-------------------------------------------
--行列转换
-------------------------------------------
CREATE  PROC PRC_CORSSQUERY
@NVR_TABNAME AS NVARCHAR(1024) = '', -- 此处放表名
@NVR_XCOL AS NVARCHAR(1024) = '', -- 表头分组依据字段 (横向字段,以系统编号作为依据,内部转化,此字段只能有一个)
@NVR_YCOL AS NVARCHAR(1024) = '', -- 分组字段        (纵向字段,直接取名称列,可以有多个,多个用逗号分隔)
@NVR_STATCOL AS NVARCHAR(1024) = '', -- 被统计的字段    (值)
@NVR_WHERE AS NVARCHAR(4000)='', -- WHERE条件  (一定要带 WHERE 语句,如:WHERE 地区=''广州'' )  * 注意字符一定要用两个分号.
@NVR_TOTAL AS NVARCHAR(1024)='', -- 合计的公式( SUM,AVG ,将其放在第一列.如果多项,请用逗号分隔)
@NVR_ORDERBY AS NVARCHAR(1024)=''          -- 排序字段,如: [海关编码],[地区]
AS BEGIN

    --SET NOCOUNT ON

DECLARE @NVR_CMD AS NVARCHAR(4000)
DECLARE @NVR_XCOLNAME AS NVARCHAR(256)

DECLARE @NVR_SQL0 AS NVARCHAR(4000)
DECLARE @NVR_SQL1 AS NVARCHAR(4000)
DECLARE @NVR_SQL2 AS NVARCHAR(4000)
DECLARE @NVR_SQL3 AS NVARCHAR(4000)
DECLARE @NVR_SQL4 AS NVARCHAR(4000)
DECLARE @NVR_SQL5 AS NVARCHAR(4000)
DECLARE @NVR_SQL6 AS NVARCHAR(4000)
DECLARE @NVR_SQL7 AS NVARCHAR(4000)
DECLARE @NVR_SQL8 AS NVARCHAR(4000)
DECLARE @NVR_SQL9 AS NVARCHAR(4000)
DECLARE @NVR_SQL10 AS NVARCHAR(4000)
DECLARE @NVR_SQL11 AS NVARCHAR(4000)
DECLARE @NVR_SQL12 AS NVARCHAR(4000)
DECLARE @NVR_SQL13 AS NVARCHAR(4000)
DECLARE @NVR_SQL14 AS NVARCHAR(4000)
DECLARE @NVR_SQL15 AS NVARCHAR(4000)
DECLARE @NVR_SQL16 AS NVARCHAR(4000)
DECLARE @NVR_SQL17 AS NVARCHAR(4000)
DECLARE @NVR_SQL18 AS NVARCHAR(4000)
DECLARE @NVR_SQL19 AS NVARCHAR(4000)
DECLARE @NVR_SQL20 AS NVARCHAR(4000)

DECLARE @NVR_DATETYPE AS NVARCHAR(1)
DECLARE @INT_ID AS INT
DECLARE @NVR_GOODSUNIT AS NVARCHAR(32)
DECLARE @INT_UNIT INT

SELECT @NVR_SQL0='',@INT_ID=0,@NVR_SQL0='',@NVR_SQL1='',@NVR_SQL2='',@NVR_SQL3='',@NVR_SQL4='',@NVR_SQL5='',@NVR_SQL6='',@NVR_SQL7='',@NVR_SQL8='',@NVR_SQL9='',
@NVR_SQL10='',@NVR_SQL11='',@NVR_SQL12='',@NVR_SQL13='',@NVR_SQL14='',@NVR_SQL15='',@NVR_SQL16='',@NVR_SQL17='',@NVR_SQL18='',@NVR_SQL19='',@NVR_SQL20=''
 
DECLARE @INT_I INT
DECLARE @NVR_FLDNAME NVARCHAR(128)

SET @NVR_SQL0 = ' SELECT ' +  @NVR_YCOL
-- 横向合计
DECLARE @NVR_SPTOTAL NVARCHAR(512)
DECLARE @INT_N AS INT
DECLARE @NVR_TOTALSQL  NVARCHAR(512)

SELECT  @INT_N=0,@NVR_TOTALSQL='',@NVR_TOTAL=RTRIM(LTRIM(ISNULL(@NVR_TOTAL,'')))
IF @NVR_TOTAL <>'' BEGIN
WHILE (1=1) BEGIN
    SET @INT_N=@INT_N+1
    SELECT @NVR_SPTOTAL= DBO.FUN_SplitStr(@NVR_TOTAL,@INT_N,',')  -- 以逗号为分隔
    SET @NVR_SPTOTAL=LTRIM(RTRIM(ISNULL(@NVR_SPTOTAL,'')))
    IF  @NVR_SPTOTAL <>'' BEGIN
        IF @NVR_SPTOTAL='SUM' BEGIN
            SET @NVR_TOTALSQL=@NVR_TOTALSQL + ',' + @NVR_SPTOTAL + '(' + @NVR_STATCOL + ') AS [SUM]'
        END ELSE IF @NVR_SPTOTAL='AVG' BEGIN
            SET @NVR_TOTALSQL=@NVR_TOTALSQL + ',' + @NVR_SPTOTAL + '(' + @NVR_STATCOL + ') AS [AVG]'
END ELSE IF @NVR_SPTOTAL='MAX' BEGIN
            SET @NVR_TOTALSQL=@NVR_TOTALSQL + ',' + @NVR_SPTOTAL + '(' + @NVR_STATCOL + ') AS [MAX]'
END ELSE IF @NVR_SPTOTAL='MIN' BEGIN
            SET @NVR_TOTALSQL=@NVR_TOTALSQL + ',' + @NVR_SPTOTAL + '(' + @NVR_STATCOL + ') AS [MIN]'
        END
    END ELSE BEGIN
        BREAK
    END
END
SET @NVR_SQL0=@NVR_SQL0 + @NVR_TOTALSQL
END

SET @NVR_CMD='DECLARE CORSS_CURSOR CURSOR FOR SELECT DISTINCT ' + @NVR_XCOL + '  FROM ' + @NVR_TABNAME + ' ' + @NVR_WHERE + ' ORDER BY ' + @NVR_XCOL + ' FOR READ ONLY ' --生成游标


EXECUTE (@NVR_CMD)
OPEN CORSS_CURSOR

WHILE (1=1)  BEGIN
FETCH NEXT FROM CORSS_CURSOR INTO @NVR_XCOLNAME  --遍历游标,将列头信息放入变量@NVR_XCOLNAME
IF (@@FETCH_STATUS <>0) BREAK

SET @INT_ID=@INT_ID+1
SET @NVR_XCOLNAME=REPLACE(@NVR_XCOLNAME ,CHAR(39),CHAR(39)+CHAR(39))

------------------------------------------------------------------------------
-- 可添加 数量,单价,金额 同时显示.单价= ( 金额 / 数量) .
IF @INT_ID <=50
    SET @NVR_SQL1 = @NVR_SQL1 + ',SUM(CASE ' + @NVR_XCOL + ' WHEN ''' + @NVR_XCOLNAME + ''' THEN ' + @NVR_STATCOL + ' ELSE NULL END) AS [' + @NVR_XCOLNAME + ']' --构造查询
ELSE IF @INT_ID <=100
    SET @NVR_SQL2 = @NVR_SQL2 + ',SUM(CASE ' + @NVR_XCOL + ' WHEN ''' + @NVR_XCOLNAME + ''' THEN ' + @NVR_STATCOL + ' ELSE NULL END) AS [' + @NVR_XCOLNAME + ']' --构造查询
ELSE IF  @INT_ID <=150
    SET @NVR_SQL3 = @NVR_SQL3 + ',SUM(CASE ' + @NVR_XCOL + ' WHEN ''' + @NVR_XCOLNAME + ''' THEN ' + @NVR_STATCOL + ' ELSE NULL END) AS [' + @NVR_XCOLNAME + ']' --构造查询
ELSE IF  @INT_ID <=200
    SET @NVR_SQL4 = @NVR_SQL4 + ',SUM(CASE ' + @NVR_XCOL + ' WHEN ''' + @NVR_XCOLNAME + ''' THEN ' + @NVR_STATCOL + ' ELSE NULL END) AS [' + @NVR_XCOLNAME + ']' --构造查询
ELSE IF  @INT_ID <=250
    SET @NVR_SQL5 = @NVR_SQL5 + ',SUM(CASE ' + @NVR_XCOL + ' WHEN ''' + @NVR_XCOLNAME + ''' THEN ' + @NVR_STATCOL + ' ELSE NULL END) AS [' + @NVR_XCOLNAME + ']' --构造查询
ELSE IF  @INT_ID <=300
    SET @NVR_SQL6 = @NVR_SQL6 + ',SUM(CASE ' + @NVR_XCOL + ' WHEN ''' + @NVR_XCOLNAME + ''' THEN ' + @NVR_STATCOL + ' ELSE NULL END) AS [' + @NVR_XCOLNAME + ']' --构造查询
ELSE IF  @INT_ID <=350
    SET @NVR_SQL7 = @NVR_SQL7 + ',SUM(CASE ' + @NVR_XCOL + ' WHEN ''' + @NVR_XCOLNAME + ''' THEN ' + @NVR_STATCOL + ' ELSE NULL END) AS [' + @NVR_XCOLNAME + ']' --构造查询
ELSE IF  @INT_ID <=400
    SET @NVR_SQL8 = @NVR_SQL8 + ',SUM(CASE ' + @NVR_XCOL + ' WHEN ''' + @NVR_XCOLNAME + ''' THEN ' + @NVR_STATCOL + ' ELSE NULL END) AS [' + @NVR_XCOLNAME + ']' --构造查询
ELSE IF  @INT_ID <=450
    SET @NVR_SQL9 = @NVR_SQL9 + ',SUM(CASE ' + @NVR_XCOL + ' WHEN ''' + @NVR_XCOLNAME + ''' THEN ' + @NVR_STATCOL + ' ELSE NULL END) AS [' + @NVR_XCOLNAME + ']' --构造查询
ELSE IF  @INT_ID <=500
    SET @NVR_SQL10 = @NVR_SQL10 + ',SUM(CASE ' + @NVR_XCOL + ' WHEN ''' + @NVR_XCOLNAME + ''' THEN ' + @NVR_STATCOL + ' ELSE NULL END) AS [' + @NVR_XCOLNAME + ']' --构造查询
ELSE IF  @INT_ID <=550
    SET @NVR_SQL11 = @NVR_SQL11 + ',SUM(CASE ' + @NVR_XCOL + ' WHEN ''' + @NVR_XCOLNAME + ''' THEN ' + @NVR_STATCOL + ' ELSE NULL END) AS [' + @NVR_XCOLNAME + ']' --构造查询
ELSE IF  @INT_ID <=600
    SET @NVR_SQL12 = @NVR_SQL12 + ',SUM(CASE ' + @NVR_XCOL + ' WHEN ''' + @NVR_XCOLNAME + ''' THEN ' + @NVR_STATCOL + ' ELSE NULL END) AS [' + @NVR_XCOLNAME + ']' --构造查询
ELSE IF  @INT_ID <=650
    SET @NVR_SQL13 = @NVR_SQL13 + ',SUM(CASE ' + @NVR_XCOL + ' WHEN ''' + @NVR_XCOLNAME + ''' THEN ' + @NVR_STATCOL + ' ELSE NULL END) AS [' + @NVR_XCOLNAME + ']' --构造查询
ELSE IF  @INT_ID <=700
    SET @NVR_SQL14 = @NVR_SQL14 + ',SUM(CASE ' + @NVR_XCOL + ' WHEN ''' + @NVR_XCOLNAME + ''' THEN ' + @NVR_STATCOL + ' ELSE NULL END) AS [' + @NVR_XCOLNAME + ']' --构造查询
ELSE IF  @INT_ID <=750
    SET @NVR_SQL15 = @NVR_SQL15 + ',SUM(CASE ' + @NVR_XCOL + ' WHEN ''' + @NVR_XCOLNAME + ''' THEN ' + @NVR_STATCOL + ' ELSE NULL END) AS [' + @NVR_XCOLNAME + ']' --构造查询
ELSE IF  @INT_ID <=800
    SET @NVR_SQL16 = @NVR_SQL16 + ',SUM(CASE ' + @NVR_XCOL + ' WHEN ''' + @NVR_XCOLNAME + ''' THEN ' + @NVR_STATCOL + ' ELSE NULL END) AS [' + @NVR_XCOLNAME + ']' --构造查询
ELSE IF  @INT_ID <=850
    SET @NVR_SQL17 = @NVR_SQL17 + ',SUM(CASE ' + @NVR_XCOL + ' WHEN ''' + @NVR_XCOLNAME + ''' THEN ' + @NVR_STATCOL + ' ELSE NULL END) AS [' + @NVR_XCOLNAME + ']' --构造查询
ELSE IF  @INT_ID <=900
    SET @NVR_SQL18 = @NVR_SQL18 + ',SUM(CASE ' + @NVR_XCOL + ' WHEN ''' + @NVR_XCOLNAME + ''' THEN ' + @NVR_STATCOL + ' ELSE NULL END) AS [' + @NVR_XCOLNAME + ']' --构造查询
ELSE IF  @INT_ID <=950
    SET @NVR_SQL19 = @NVR_SQL19 + ',SUM(CASE ' + @NVR_XCOL + ' WHEN ''' + @NVR_XCOLNAME + ''' THEN ' + @NVR_STATCOL + ' ELSE NULL END) AS [' + @NVR_XCOLNAME + ']' --构造查询
ELSE IF  @INT_ID <=1000
    SET @NVR_SQL20 = @NVR_SQL20 + ',SUM(CASE ' + @NVR_XCOL + ' WHEN ''' + @NVR_XCOLNAME + ''' THEN ' + @NVR_STATCOL + ' ELSE NULL END) AS [' + @NVR_XCOLNAME + ']' --构造查询
END -- WHILE (1 = 1)
--直接返回结果.
IF @NVR_ORDERBY='' BEGIN  --未指定排序字段.
EXECUTE ( @NVR_SQL0 + @NVR_SQL1 + @NVR_SQL2  + @NVR_SQL3 + @NVR_SQL4 + @NVR_SQL5 + @NVR_SQL6 + @NVR_SQL7 + @NVR_SQL8 + @NVR_SQL9
+ @NVR_SQL10 + @NVR_SQL11 + @NVR_SQL12  + @NVR_SQL13 + @NVR_SQL14 + @NVR_SQL15 + @NVR_SQL16 + @NVR_SQL17 + @NVR_SQL18 + @NVR_SQL19 + @NVR_SQL20
+ N' FROM ' + @NVR_TABNAME + N' ' + @NVR_WHERE + N' GROUP BY ' + @NVR_YCOL )                                                -- 执行
END ELSE BEGIN            --指定排序字段.
EXECUTE (N'SELECT * FROM (' +  @NVR_SQL0 + @NVR_SQL1 + @NVR_SQL2  + @NVR_SQL3 + @NVR_SQL4 + @NVR_SQL5 + @NVR_SQL6 + @NVR_SQL7 + @NVR_SQL8 + @NVR_SQL9
+ @NVR_SQL10 + @NVR_SQL11 + @NVR_SQL12  + @NVR_SQL13 + @NVR_SQL14 + @NVR_SQL15 + @NVR_SQL16 + @NVR_SQL17 + @NVR_SQL18 + @NVR_SQL19 + @NVR_SQL20
+ N' FROM ' + @NVR_TABNAME + N' ' + @NVR_WHERE + N' GROUP BY ' + @NVR_YCOL  + N') AS T86C6S9R ORDER BY ' + @NVR_ORDERBY )  -- 执行
END

CLOSE CORSS_CURSOR
DEALLOCATE CORSS_CURSOR
RETURN 0 --释放游标,返回0表示成功
END

GO

2 中望CAD二次开发-绘制图形(ZRX C++) 本文讲解中望CAD二次开发,关于块的概念及基本图形的绘制 阅读详情

相关推荐

从“破解”到应用:三菱数控系统M80协议逆向分析与工业数据采集网关搭建指南

本文深入解析三菱数控系统M80协议的逆向分析方法与工业数据采集网关搭建技术。通过TCP协议实现跨平台通信,详细介绍了M80协议的数据包结构、多语言实现方案(C#、Java、C/C++)以及Linux数据采集网关的架构设计与容器化部署。为工业自动化领域的开发者提供从协议分析到企业级数据采集落地的完整解决方案。

weixin_29228781的博客 1212

SQL2000一列转一行的存储过程

IF EXISTS(SELECT 1 FROM SYSOBJECTS WHERE ID=OBJECT_ID(LineToRow) AND TYPE=P)DROP PROC LineToRowGO--20100526 表中某一字段的记录转为一行字符串输出--@fields 表示表中的一个字段,@RecordSQL 查询语句Create  proc  dbo.LineToRow (@field

xueyang214的专栏 593

VS Code+ESP-IDF开发避坑指南:头文件标红报错的5种解决方法(附CMakeLists.txt配置)

本文详细解析了在VS Code中使用ESP-IDF开发ESP32时头文件标红报错的5种解决方法,包括环境配置检查、CMakeLists.txt规范配置、路径解析策略、缓存清理技巧和高级调试手段。特别提供了CMakeLists.txt的实战配置示例,帮助开发者彻底解决头文件路径问题,提升开发效率。

weixin_33670786的博客 560

按任意的字段旋转的存储过程

---------------------------------------------------------------------------- -- 分段截取函数 ---------------------------------------------------------------------------- CREATE    FUNCTION DBO.FUN_SplitStr(...

weixin_33842304的博客 101

实战指南:在UE5中高效集成Entt(ECS)框架

本文提供了一份在虚幻引擎5中高效集成Entt ECS框架的实战指南。针对UE5项目在处理大规模动态实体时的性能瓶颈,详细讲解了如何通过数据驱动的ECS架构进行优化。内容包括前期环境准备、核心构建步骤、创建首个ECS子系统以及与UE原生系统的数据同步技巧,旨在帮助开发者快速掌握集成方法,提升游戏逻辑的执行效率。

weixin_29002209的博客 158

Allegro172版本如何在联机模式下使用skill文件操作指导

注意:如果下次重新开启Symphony模式的时候可能导致symphony_skill中的文件内容被清空,所以最好将自己常用的skill文件都写到symphony_skill.txt中去,然后做好备份,需要的时候,在开启软件后把文件放到env目录中去。在用Allegeo172版本进行PCB设计的时候,有时会用到Symphony模式进行多人实时在线协同设计,如下图。这个模式设计起来可以提升设计速度,但是也有一个缺陷,就是不能使用skill文件。如下图,当调用skill的时候就会出现如下报错。

weixin_54787054的博客 1586

mssql2000 mysql,MYSQL 与MSSQL2000 在修改表字段的区别

MYSQL 与MSSQL2000 在修改表字段的区别添加字段:MYSQLalter table tb add col2 varchar(10)MSSQL2000alter table tb add col2 varchar(10)修改字段:MYSQLalter table tb modify col2 varchar(20)MSSQL2000alter table tbalter column...

weixin_39565021的博客 144

7.6 GPU页表更新机制

本文分析了AMDGPU驱动中BO到VA映射的页表更新实现机制。核心流程通过amdgpu_vm_bo_update()函数触发,支持CPU直接写入和SDMA异步命令两种更新模式。系统根据VRAM可见性自动选择最优更新策略,处理三种主要场景:命令提交、BO迁移和BO销毁。关键实现包括DMA地址数组处理、权限标志合并和BO迁移状态转换,最终通过amdgpu_vm_update_range()完成硬件页表更新。该机制有效平衡了更新延迟与吞吐量,为GPU虚拟内存管理提供基础支撑。

图形/计算GPU的驱动与虚拟化技术分享园地 2471

MSSQL2000和2005的分页

- 如果@RecordCount为NULL值,则计算总页数(这样设计可以只在第一次计算总页数,以后调用时,把总页数传回给存储过程,避免再次计算总页数,对于不想计算总页数的处理而言,可以给@RecordCount赋值)

weixin_67271870的博客 89

Allegro172版本DFM功能介绍

Allegro172版本提供了实时DFM检查的功能,让违反要求的地方实时以DRC的形式报出来,让加工不可加工因素在设计的时候同步避免。打开Constraint,选择Manufacturing, 所有DFM相关DRC都在这。把所有下面DRC开关(DFM,DFA,DFT)都选择on,选择OK。这个规则和物理和间距规则等等都没有关系,单独的一个加工规则。这些DRC大部分是正常的,正常的可以去修改规则来消除。等待DRC刷新,板子上会出现很多DRC,类似下图。下面介绍如何调用和产生DFM规则。一直往下点击next。

weixin_54787054的博客 1340

摩尔线程嵌入式面试题及参考答案(2万字长文)

说一下你对 drm 框架的理解。 DRM(Direct Rendering Manager)是 Linux 系统中用于管理图形显示设备的一个重要框架。 从架构层面来讲,它处于内核空间,主要目的是为用户空间的图形应用程序提供一个统一的接口来访问图形硬件。DRM 包括内核态的驱动模块和用户态的库。内核态的驱动负责和硬件进行交互,比如对显存的管理、硬件寄存器的配置等。用户态的库则方便应用程序利用内核态提供的功能进行图形渲染等操作。 在图形显示的具体流程中,DRM 可以控制显示设备的分辨率、刷

大模型大数据攻城狮的专栏 1229

获取MSSQL 表结构中字段的备注、主键等信息 兼容SQL2000 和SQL2005以上版本

MSSQL2000查询语句: SELECT 表名 = case when a.colorder=1 then d.name else '' end, 表说明 = case when a.colorder=1 then isnull(f.value,'') else '' end, 字段序号 = a.colorder, 字段名 = a.name, 标识 = case when COLUMNPR...

qiandeqiande的专栏 198

B站自动答题协议分析

使用Python写了一个自动答题机器人!基于接口协议实现且包含点选验证码识别

吴秋霖的博客 2654

MSSQL2005存储过程写报表

听说MSSQL2005自带报表功能,于是我测试了一下,还算比较好用,所以我就录了一个用存储过程来写报表的例子。下载地址如下:http://tclywork.itpub.net/get/464/MSSQL2005%B4%E6%B4...

ciweiti5307的博客 239

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

获取MSSQL 表结构中字段的备注、主键等信息

1、MSSQL2000 SELECT     表名       = case when a.colorder=1 then d.name else '' end,     表说明     = case when a.colorder=1 then isnull(f.value,'') else '' end,     字段序号   = a.colorder,     字段名    

全欣 的专栏 4857

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

MYSQL 与MSSQL2000 在修改表字段的区别

添加字段:MYSQLalter table tb add col2 varchar(10)MSSQL2000alter table tb add col2 varchar(10)  修改字段:MYSQL alter table tb modify col2 varchar(20) MSSQL2000 alter table tb alter column c

老虎的专栏 683

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

在SQLServer 2000中,使用SQL语句判断某一字段是否为空

在SQLServer 2000中,使用SQL语句判断某一字段为空,用以下语句:SELECT *FROM XkzsQsIDWHERE (YouXRQ 使用SQL语句判断某一字段不为空,用以下语句:SELECT *FROM XkzsQsIDWHERE (YouXRQ  

半亩方塘 1万+

linux环境php调用sqlServer2000存储过程遇到的问题

  在linux环境中用php查询sql server并不是很常见的需求.一般来说如果一定要用sql server,编程语言我会先c#;如果一定要用php,数据库我就选mysql.   这几天的开发中,需要从一个非开源的erp系统中获取数据,它使用的数据库是sqlserver2000,并...

choutalei5350的博客 201

sqlserver存储过程分页查询

1.单表查询分页存储过程 CREATE PROCEDURE [dbo].[prcPageResult] ( @currPage int = 1, --当前页页码 (即Top currPage) @showColumn varchar(2000) = '*', --需要得到的字段 (即 column1,column2,......

风之&诉 1220

SQLSERVER2000中比较两个字段的记录存在包含关系的问题

SQLSERVER2000中有两个表A、表B,表A的字段D1内容都是汉字字符,表B的字段B1也是汉字字符,可能表A的字段D1的中间一个连续部分的内容与表B的字段B1内容完全相同,即表A的字段D1(记录)包含字段B1(记录),也即有LIKE %.....%   的情况。如何来通过比较这两个表的这两个字段的包含关系来更新表A的其它字段?表A:D1,D2,D3表B:B1,B2,B3,B4,B5谢谢!

jacky001001的专栏 1601

SQL Server 2000通用分页查询存储过程(可指定返回字段,查询条件)

作者: LikeCode 出处: CODE STUDIO <!--google_ad_client = "pub-4194432327588897";//300x250, 创建于 07-12-1google_ad_slot = "2134995712";google_ad_width = 300;google_ad_height = 250;//--> 

pciak的专栏 1222

php mssql扩展SQL查询中文字段名解决方法

一、问题:      数据库是MS SQLServer2000,要把SQLServer2000里的一张表的数据导入MySQL5,其中SQLServer2000表的字段以简体中文命名(强烈建议不要以中文做为字段名)。其实操作就是对SQLServer查询记录,插入到MySQL里。选择的脚本语言是PHP,PHP打开MSSQL和MySQL扩展,对这两个数据库操作都是很容易的问题。    问题就出现

qingflyer的专栏 5264

asp+mssql2000存储过程

1.mssql2000存储过程 /*分页调用方法:exec sp_Util_Page 440000,4,10,MID,MID,ip1,ip2,country,city,tbTempPage,1=1,mid asc输入: 1.记录条数(已有值:外部赋值,0执行count) 2.当前页数 3.每页记录数 4.主键(一定要有) 5.字段 6.表名 7.条件(不需要where)

maoyun的专栏 1250

mssql2000 mysql_把MSSQL2005转换成MSSQL2000_MySQL

bitsCN.com众所周知,mssql是不会向后兼容。要把SQL2005转换到sql2000。最大的问题是:要把用SQL2005特性实现的功能重新用SQL2000实现一遍。1.表的转换。不要用SQL2005自带的生成脚本工具转换,因为有个BUG。当你未选择“为所选数据库中的所有对象编写脚本”时,他的版本选择会出错,即使你在“为服务器版本编写脚本”中选择了SQL2000.他也会为SQL2005编写...

weixin_42509267的博客 150

JSP JTDS 连接 SQLServer 2000

JSP JTDS 连接 SQLServer 2000 jsp 如何连接 SQL server 2000 数据库了?除了jdbc 外还有一种方法,就是jtds方式连接。通过JTDS JDBC Driver连接SQL Server数据库,驱动的文件名为jtds-1.2.jar,下载路

潇湘博客 1931

SQLServer 分页存储过程

SQLServer 分页存储过程原作者:邹建(zjcxc)来源:优快云 BLOG原文地址:http://blog.youkuaiyun.com/zjcxc/archive/2003/12/29/20080.aspx /**//*--用存储过程实现的分页程序 显示指定表、视图、查询结果的第X页 对于表中主键或标识列的情况,直接从原表取数查询,其它情况使用临时表的方法 如果视图或查询结果

minisunny的专栏 966
上一篇: SQLSERVER2000中数据库物理优化
下一篇: VB.NET将CellSet转为DataTable
华芸智森
博客等级 码龄25年 571粉丝 25原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值