1、  首先创建存储过程;

2、  然后分别创建序列,生成基金公司编号、基金代码、活期账号、理财账号、基金账户、合同号。要求如下:

  • 基金公司编号,字母K+5位数字。
  • 基金代码,字母V+6位数字。
  • 活期账号,13位数字。
  • 理财账号,13位数字。
  • 基金账户,字母L+5位数字。
  • 合同号,字母Z+6位数字。

3、 在创建存储过程中,在添加表数据的时候,自动添加生成的主键编号。【存储过程添加数据】

 use Funds
go
//创建存储过程:基金公司编号,字母K+5位数字
-- 基金公司编号,字母K+5位数字。
alter proc Proc_Create_FundCompanyID
@ID varchar() out ---定义为输出参数
as
begin
declare @num int
select top @ID=[CompanyId] from [dbo].[FundCompany] order by [CompanyId] desc
--判断数据库中是否含有数据
if(@ID is null)
begin
set @ID='K00001'
end
else
begin
-- 截取数字部分
Set @ID =right(@ID,) ---
-- 把字符型的数字转换为整型
set @num = CONVERT(int,@ID) --- set @num =@num +;
--拼接 补齐右边的位数
set @ID = ''+convert(varchar(), @num)
select @ID Set @ID =right(@ID,)
set @ID='K'+@ID
end
end go -- 调用存储过程 declare @companyId varchar()
exec Proc_Create_FundCompanyID @companyId out
select @companyId //创建活期账号,13位数字。
--活期账号,13位数字。
----- :: 毫秒数 alter proc Proc_Create_CurrentAccount
@Account nvarchar() out
as
begin
declare @str nvarchar()
Set @str = CONVERT(nvarchar(),getdate(),)
set @str = REPLACE(@str,'-','')
set @str = REPLACE(@str,'T','')
set @str = REPLACE(@str,':','')
set @str = REPLACE(@str,'.','')
set @Account =left(@str,)+RIGHT(@str,)
end
go declare @account nvarchar()
exec Proc_Create_CurrentAccount @account out
select @account

//向表中添加数据
create proc Proc_Insert_FundCompany
@Name nvarchar(),
@Content nvarchar(),
@Money money,
@State bit
as
begin
declare @companyId varchar()
exec Proc_Create_FundCompanyID @companyId out
insert into [dbo].[FundCompany] values(@companyId,@Name,@Content,@Money,@State)
end
go exec Proc_Insert_FundCompany '呵呵100','哎呦喂',5, select * from [dbo].[FundCompany] create proc Proc_Insert_Fund
@CompanyId nvarchar()
as
begin
select --insert into (插入数据)
end go

SQL 创建存储过程,让主键自增的更多相关文章

  1. 通过SQL创建一个有主键自动递增有默认值不为空有注释的表

    -- create database db_std_mgr_sys; use db_std_mgr_sys; create table student( std_id bigint not null ...

  2. oracle数据库创建表且主键自增

    唠叨几句:几年前的知识忘却了,整理一下笔记,提供一下方便 1.创建数据库表 设置主键 create table users( userid number(10) primary key, /*主键,自 ...

  3. Oracle创建触发器实现主键自增

    CREATE OR REPLACE TRIGGER "trigger_empl" before insert on extjsTest1.t_empl for each row b ...

  4. Oracle 学习----:创建表(主键自增)

    一.创建表 create table testTable ( Id numbere, name varchar2(100), age number, createTime date, primary ...

  5. SQL Server 2008设置主键为自增

    环境:SQL Server 2008 问题:设置主键,将主键设为自增. 解决:点击table->选中表->design->选中需要设置主键的字段,单击右键"设置主键&quo ...

  6. 使用navicat操作PostPreSql创建表并设置主键自增和触发器

    使用navicat操作PostPreSql创建表并设置主键自增和触发器 1).创建递增序列 2).创建表,使用序列,设置主键递增 3)定义触发函数 自动生成时间戳函数 CREATE OR REPLAC ...

  7. sql server 2000 单主键高效分页存储过程 (支持多字段排序)

    sql server 2000 单主键高效分页存储过程 (支持多字段排序) Create PROC P_viewPage             /*              nzperfect [ ...

  8. psql 关于主键自增的问题

    在psql中往往我们需要设置一个自增的主键id字段,psql中不像SQL Server那样点选 打钩傻瓜式就能设置好的,是需要创建序列的:CREATE SEQUENCE,关键字SEQUENCE. 我们 ...

  9. (2.10)Mysql之SQL基础——约束及主键重复处理

    (2.10)Mysql之SQL基础——约束及主键重复处理 关键词:mysql约束,批量插入数据主键冲突 [1]查看索引: show index from table_name; [2]查看有约束的列: ...

  10. 使用powerdesigner建模时设置主键自增的问题

    研究了一下,其实只要双击表,选择columns,再双击在你所要设为自增型的键上(比如你的id)或者右键选择Properties,弹出一个ColumnProperties 对话框,我们看到有标识 ide ...

随机推荐

  1. 细说Handler

    今天来说说Android一个重要类吧:Handler (我写的博客风格不适合新手,因为我讨厌新手教学,我都是直奔主题,不交代前因后果) 大家都知道Handler的用法一般是线程间的通讯,当然,一个线程 ...

  2. 关于Mongo的一些坑

    和大多数人一样,从Mysql转到Mongo的过程中,思维上经历了很大的转变.下面来说几点我遇到的坑: 1.单文档16M 这个是最多人碰到的,我也碰到过,当然,幸好是因为操作有误,导致这种不正常的大量数 ...

  3. MySQL系列(二)---MySQL事务

    MySql 事务 目录 MySQL系列(一):基础知识大总结 MySQL系列(二):MySQL事务 什么是事务(transaction) 保证成批操作要么完全执行,要么完全不执行,维护数据的完整性.也 ...

  4. 用java写一个用户登陆界面

    一.课堂测试源代码及其结果截图 用java的swing写一个用户登录界面,采用网格布局.源代码如下: /** * */package LiuLijia; import java.awt.CardLay ...

  5. 8.Spark SQL

    Spark SQL 1 Why Apache Spark 2 关于Apache Spark 3 如何安装Apache Spark 4 Apache Spark的工作原理 5 spark弹性分布式数据集 ...

  6. 初学Python(九)——函数

    初学Python(九)--函数 初学Python,主要整理一些学习到的知识点,这次是函数. 函数定义: # -*- coding:utf-8 -*- #函数的定义 def my_function(x) ...

  7. python cookbook第三版学习笔记十三:类和对象(三)描述器

    __get__以及__set__:假设T是一个类,t是他的实例,d是它的一个描述器属性.读取属性的时候T.d返回的是d.__get__(None,T),t.d返回的是d.__get__(t,T).说法 ...

  8. JavaSE(七)之内部类

    上一篇我们学习了接口还有访问控制,在以后的工作中接口是我们经常要碰到的,所以一定要多去回顾.接下来介绍一下内部类.很多时候我们创建类的对象的时候并不需要使用很多次,每次只使用一次 这个时候我们就可以使 ...

  9. jquery.cityselect.js基于jQuery+JSON的省市或自定义联动效果

    一.插件介绍 最早做省市联动的时候都特别麻烦,后来在helloweba的一篇文章中看到这个插件,很不错的,后来就一直用了. 省市区联动下拉效果在WEB中应用非常广泛,尤其在一些会员信息系统.电商网站最 ...

  10. HTML的学习笔记

    一.HTML的概述(了解) a.html是什么 : hypertext markup language 超文本标记语言           超文本:音频,视频,图片称为超文本..           ...