易截截图软件、单文件、免安装、纯绿色、仅160KB

SQL SERVER中 利用方法生成流水号

/*
  功能:利用函数创建流水号如:
        fx201005260001,
        fx201005260002,
        fx201005270001
  作者:陈永建
  创建时间:2010-05-26
 
*/
use master
go
if(db_id('NumberDB')is not null)
drop database NumberDB
go
create database NumberDB
GO
USE NumberDB
go
if(object_id('number')is not null)
drop table number
go
create table number
(
 id varchar(50) not null,
 CreateDate datetime not null
)
go
select * from number
--创建函数生成流水号
if(object_id('fun_CreateNum')is not null)
drop function fun_CreateNum
go
--@profix 前缀
--@dateFormat 日期格式如20050512 :获取当天的日期
--@length 长度:根据你的实际需求来填写你的长度(交易量少则长度短些)
create function fun_CreateNum(@profix varchar(10),@dateFormat varchar(20),@length int)
returns varchar(100)
as
begin
  declare @MyNo varchar(100)
  select @MyNo= max(id) from number where datediff (dd,CreateDate,getdate())=0 --得到当天最大流水号
  --isnull(目标参数,设置的值):如果目标参数为空则变为设定值
  set @MyNo=convert(int,isnull(right(@MyNo,@length),0))+1 --如果今天有记录,则在最大的流水号上加1
  --replicate(设定值,重复次数): 将设定值重复
  set @MyNo=right(replicate(0,@length)+@MyNo,@length)--将@MyNo前加0后截取相应的位数
  set @MyNo=@profix+@dateFormat+@MyNo--拼接成流水号
  return @MyNo
end
go
--调用函数
--convert(varchar(20),getdate(),112):112将日期格式设置为如:20050512格式
select dbo.fun_CreateNum('fx',convert(varchar(20),getdate(),112),5)
--将流水号插入数据表中
insert into number values(dbo.fun_CreateNum('fx',convert(varchar(20),getdate(),112),5),getdate())
go
select * from number


相关文档:

SQL Server 日期和时间函数


 
1、常用日期方法(下面的GetDate() = '2006-11-08 13:37:56.233')
(1)DATENAME ( datepart ,date )
   返回表示指定日期的指定日期部分的字符串。Datepart详见下面的列表.
SELECT DateName(day,Getdate()) –返回8
(2)DATEPART ( datepart , date )
    返回表示指定日期的指 ......

sql工具

最近在用sqlcmd工具进行数据备份,今天在换到sql2000时突然不能用。原来2000是没有这个工具的:
sql2005:
sqlcmd -S 服务器名或服务器地址 -U 用户 -P 密码 -i "引用的sql语句文件"
sql2000:可以用osql代替,功能一样
osql -S 服务器名或服务器地址 -U 用户 -P 密码 -i "引用的sql语句文件" ......

Sql server Case when

select
 WorksheetID,worker,WorkDate,merchantName ,merchantNo ,manager
, case when insCount>0 then '新装' else '' end InsStr
,case when repCount>0 then '换装' else '' end RepStr
,case when UnInsCount>0 then '撤机' else '' end UnInsStr
,case when FaultCount>0 then '故障处理' els ......

SQL Server 2005中的T SQL增强(2) 快照隔离

快照隔离 Snapshot Isolation
1、写入程序不会阻碍读取程序
2、新的隔离级别提供了以下优点:
1) 提高了只读应用程序的数据可用性
2) 允许在OLTP环境中执行非阻止读取操作
3) 可对写入事务进行自动的强制冲突检测
3、演示代码
CREATE DATABASE demo2
GO
USE demo2
ALTER DATABASE demo2 SET allow_snapsho ......

sql查询同一字段值是否存在相同记录

SELECT *
from Ds_WasteBook
WHERE (Ds_WasteBook_Desc IN
          (SELECT Ds_WasteBook_Desc
         from Ds_WasteBook
         GROUP BY Ds_WasteBook_Desc
  &nb ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号