sqlserver 的prepare方法使用问题
1.如果先prepare 后添加参数,这样一部分数据类型可以不用设置其size大小,例如char
2.如果先添加参数再prepare,就必须设置参数的类型,大小,精度才能通过,比如char,varchar,decimal类型,而int,float有固定字节类型的数据类型则可不用设置大小。
3.关于SqlServer的timestamp类型:该类型为SqlServer的时间戳类型,创建表的时候可以没有列名,例如
create table zh(a1 int,timestamp);
在进行插入操作的时候不能插入timestamp列,它会自动插入一个二进制类型8个字节的数据,或者插入default。
插入的值会发现是1900年的时间,这个据MSDN解释是这个时间不同于系统时间,而是为了区分该行数据有没有被更改,该行数据一旦被更改,则timestamp列的时间会自动更新。
在数据库里该列是以binary存储,MSDN解释:可为空的该列相当于binary(8),不可为空的该列相当于varbianry(8)
在取列数据的时候,需要将数据转换成datetime类型
sql语句:利用cast或者convert ,convert(datetime,timestamp_c)
程序里:利用转换方法Convert.ToDateTime
相关文档:
Sqlserver中Compute By子句用法分析
2007年04月20日 星期五 08:05
使用Compute by子句和行统计函数(count,sum,max,avg,min等),可以统计排序中结果完全相同的列,统计值作为查询结果以附加行的形式显示,
语法:Compute avg|count|max|min|sum by 表达式
1、举一个例子
比如有一个数据表:表名为person,三个字段分别 ......
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/yf520gn/archive/2008/09/26/2982363.aspx
SELECT * from TB_MILES_CB_ORDER
WHERE convert(varchar(100),ORDER_DATE,102)= ?
ORDER BY ORDER_NO
SELECT CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM
SELECT CONVERT(varchar(100), GETDATE ......
由于工作需求,要对负责的产 品做点性能优化,在网上找到了相关的东西,拿 出来与大家分享:
看到很多朋友对数据库的理解、认识还是没有突破一个瓶颈,而这个瓶颈往往只是一层窗纸,越过了你将看到一个新世界。
04、05年做项目的时候,用SQL Server 2000,核心表(大部分使用频繁的关键功能每次都要用到)达到了800万数据 ......
=================分页==========================
/*分页查找数据*/
CREATE PROCEDURE [dbo].[GetRecordSet]
@strSql varchar(8000),--查询sql,如select * from [user]
@PageIndex int,--查询当页号
@PageSize int--每页显示记录
AS
set nocount on
declare @p1 int
declare @current ......