delphi_sql_游标分页_分页dbgrid查询
alter procedure qry_page
@sqlstr nvarchar(4000), --查询字符串
@page int, --第N页
@pagesize int --每页行数
as
declare @rscounts int --记录总数
declare @pages int --页面总数
set nocount on
declare @P1 int --P1是游标的id
exec sp_cursoropen @P1 output,@sqlstr,@scrollopt=1,@ccopt=1,@RecordCount=@rscounts output
set @pages = ceiling(1.0*@rscounts/@pagesize)
if @page<=0 set @page=1
if @page>@pages set @page=@pages
--当前页面条数,不足一页
declare @curpg_counts int
if @rscounts<@page*@pagesize
set @curpg_counts=@rscounts-(@page-1)*@pagesize
else
set @curpg_counts=@pagesize
--当前页起始行,从1开始
declare @startPos int
set @startPos=(@page-1)*@pagesize+1
--获取指定记录
exec sp_cursorfetch @P1,16,@startPos,@curpg_counts
exec sp_cursorclose @P1
set nocount off
--另外返回记录总数/总页面数/当前页/每页条数
select rscounts=@rscounts,pages=@pages,pagesize=@pagesize,page=@page
--exec qry_page 'select * from user_record_in order by id',3,5
客户端访问程序
delphi版本:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, Grids, DBGrids, ExtCtrls, DB, ADODB, Mask;
type
TForm1 = class(TForm)
Panel1: TPanel;
DBGrid1: TDBGrid;
SpeedButton6: TSpeedButton;
SpeedButton7: TSpeedButton;
Label5: TLabel;
SpeedButton1: TSpeedButt
相关文档:
create table aaa
(
id int primary key ,
name varchar(30) not null
)
create table bbb
(
id int primary key ,
name varchar(30) not null
)
--交
select * from aaa
where exists
(
select * from bbb where aaa.id=bbb.id and aaa.name = bbb.name
)
--差
select *
from bbb
where not exists
(
......
有一段时间没正经的用delphi了,前两天下载了Delphi2010,用它来找找Delphi的感觉,把写的一些东西共享出来,大家共同学习一下,呵呵。
我想做一个双色球的分析软件,以下是其中实现的部分类的单元文件,其他文件后续一点一点的补齐,有不妥的地方,希望大家指正,谢谢啦!
在使用Delphi2010是,发现个问题,在用show函数 ......
-->目录
-->SQL Server 构架
-->实施细则
-->最大容量说明
最大值(数量或大小)
对象 SQL Server 7.0 SQL Server 2000
批处理大小 65,536 * 网络数据包大小1 65,536 * 网络数据包大小1
每个短字符串列的字节数 8,000 8,000
每个 text、ntext、或 image 列的字节数 2 GB-2 2 GB-2
每个 GROU ......
国外空间貌似对中文比较感冒 如果数据类型设计为 varchar 类型的话 存储的数据基本上是 "????"
很简单 将 varchar 类型 设计为 nvarchar 类型
create table cs
(
txt1 nvarchar(50) null
)
insert into cs (txt1 ) values ('测试') -- 入库时数据时 ????
insert into cs (txt ......
上节我们介绍了表连接,更确切的说是inner joins內连接.
內连接仅选出两张表中互相匹配的记录.因此,这会导致有时我们需要的记录没有包含进来。
为更好的理解这个概念,我们介绍两个表作演示。苏格兰议会中的政党表(party)和议员表(msp)。
party(Code,Name,Leader)
Code: 政党代码
Name: 政党 ......