sql生成数据库的序列号
-- =============================================
-- Author: <Author,yaoyao,Name>
-- Create date: <Create Date,20130515,>
-- Description: <Description,生成自定义ID,生成规则:1~5个字母前缀加5~10位数字>
-- =============================================
ALTER PROCEDURE [dbo].[proGetCustomID]
@TableName VARCHAR(50),
@FieldName VARCHAR(50),
@BeginChar VARCHAR(5),
@NumberLen INT=10--默认10
AS
BEGIN
IF @NumberLen<5 or @NumberLen>10 set @NumberLen=10; DECLARE @CustomID VARCHAR(10),@MaxID VARCHAR(15),@strSql NVARCHAR(200);
set @strSql='select @tempid = MAX('+@FieldName+') FROM '+@TableName;
exec sp_executesql @strSql,N'@tempid VARCHAR(15) out',@MaxID out --参数赋值
--print @MaxID; IF @MaxID IS NULL
BEGIN
SET @CustomID='';
END
ELSE
BEGIN
SET @MaxID = CONVERT(INT,REPLACE(@MaxID,@BeginChar,''));--CONVERT(INT,SUBSTRING(@MaxID,LEN(@BeginChar)+1,10));
SET @CustomID=@MaxID+1;
--print @CustomID WHILE(LEN(@CustomID)<@NumberLen)
BEGIN
SET @CustomID=''+@CustomID
END
END SELECT @BeginChar+@CustomID;
END
/// <summary>
/// 生成自定义ID
/// </summary>
/// <param name="tableName">表名</param>
/// <param name="fieldName">生成id的字段</param>
/// <param name="beginChar">1~5位字母</param>
/// <returns></returns>
public static string CreateID(string tableName, string fieldName, string beginChar)
{
SqlParameter[] parameters = {
new SqlParameter("@TableName", SqlDbType.VarChar, 20),
new SqlParameter("@FieldName", SqlDbType.VarChar, 20),
new SqlParameter("@BeginChar", SqlDbType.VarChar,10)};
parameters[].Value = tableName;
parameters[].Value = fieldName;
parameters[].Value = beginChar;
return DbHelperSQL.GetSingleByPro("proGetCustomID", parameters).ToString();
}
sql生成数据库的序列号的更多相关文章
- MS SQL生成数据库字典脚本
开发一个项目时都会有一个蛋疼的问题——写数据库需求文档,然后根据这个文档来建数据库,如果后来需求改了,要改数据库还要改文档,有时忙着忙着就忘改了,导致文档是过期的.那么我们自己写个脚本在数据库运行直接 ...
- PowerDesigner 16.5对SQL Server 2012 生成数据库时"不支持扩展属性"问题
团队合作设计一套系统数据模型,创建了PDM后,Table.View.Store Procedure等都创建好了,且创建了多个Schema方便管理这些数据库对象,但Table.view.Column等对 ...
- VS2010 根据模型生成数据库 打开edmx.sql文件时 vs出现无响应的解决方案
今天在VS2010 sp1+sql server 2008 R2+Win7操作系统下测试ADO.NET 实体数据模型时 ,遇到这样一个问题. 首先建好实体模型,然后"根据模型生成数据库&qu ...
- 如何用asp.net MVC框架、highChart库从sql server数据库获取数据动态生成柱状图
如何用asp.net MVC框架.highChart库从sql server数据库获取数据动态生成柱状图?效果大概是这样的,如图: 请问大侠这个这么实现呢?
- 利用PowerDesigner绘制PDM生成SQL Server数据库
PowerDesigner是个很强大的建模工具,可以利用它绘制各种图形,本文利用该工具绘制PDM,进而生成SQL Server数据库. 比如绘制一个简单的学生选课.教师授课管理系统的PDM: pk表示 ...
- sql server数据库备份单个表的结构和数据生成脚本
1.使用场景:sql server数据库备份单个表的结构和数据,在我们要修改正式系统的数据的一天或者多条某些数据时候,要执行update语句操作,安全稳健考虑,最好先做好所修改的表的结构和数据备份! ...
- Powerdesigner逆向工程从sql server数据库生成pdm【转】
Powerdesigner逆向工程从sql server数据库生成pdm 第一步:打开"控制面板"中的"管理工具" 第二步:点击"管理工具" ...
- core 中ef 连接sql server数据库 在类库中 自动生成 model
首先 介绍 Scaffold-DbContext "Server=.;database=sdd;User Id=sa;Password=123456;" Microsoft.Ent ...
- 用PowerDesign反向生成数据库Sql语句问题
在用Pd15反向生成数据库时,生成的Sql语句在Sql Server Manager Studio里面报错,根本就执行不了.数据库用的是Sql Server 2008 R2.经过一番修 ...
随机推荐
- Java知多少(25)再谈Java包
在Java中,为了组织代码的方便,可以将功能相似的类放到一个文件夹内,这个文件夹,就叫做包. 包不但可以包含类,还可以包含接口和其他的包. 目录以"\"来表示层级关系,例如 E:\ ...
- Top useful .Net extension methods
Special extension methods were released in C# 3.0. Developers have continuously been looking for way ...
- 解决Xcode删除文件后missing file警告
在用xcode开发的时候,删除不用的文件后, 编译的时候会有missing file的警告,原因是由于SVN或git造成的,有几种方法可以解决. 1.命令行进入missing file目录,然后运行 ...
- Fiddler 安装与配置
可以直接访问官网下载安装包 https://www.telerik.com/download/fiddler ,安装后需要配置浏览器的代理服务器为 Fiddler: 以谷歌浏览器为例:[设置]---[ ...
- [Linux] 修改系统默认编码
locale 命令 locale 命令用以设置程序运行的语言环境. locale 设置语言环境的命名规则为 Language_area.charset,例如 en_US.utf8 表示语言为英语,地区 ...
- [Android] 基于 Linux 命令行构建 Android 应用(一):关于 Android 项目
关于 Android 项目 项目是保存源代码和资源文件的容器. 谷歌提供的 Android SDK 工具只能对具有固定目录结构的项目进行编译和打包.因此强烈建议使用 Eclipse + ADT 或者 ...
- ng4.0 使用[innerHTML]动态插入的富文本如何设置样式
方法一:在css中设置样式 for CSS added to the component :host ::ng-deep mySelector { background-color: blue; } ...
- [原]openstack-kilo--issue(十五) WARNING keystonemiddleware.auth_token Authorization failed for token Could not find token
在创建vm的时候在controller node报错: -- :: INFO neutron.wsgi [req-a815cde4-f49c-4d23-b9c3-030bfc2a75d4 ] /Jan ...
- C# 读写Excel的一些方法,Aspose.Cells.dll
需求:现有2个Excel,一个7000,一个20W,7000在20W是完全存在的.现要分离20W的,拆分成19W3和7000. 条件:两个Excel都有“登录名”,然后用“登录名”去关联2个Excel ...
- FileInputFormat看这一段源码
这是FileInputFormat中的一个方法,看一下它的功能,多看源码,理解hadoop,同时提高自己的java编程能力: private static String[] getPathString ...