ylbtech-DatabaseDesgin:ylbtech-Model-Account(通用账户模块设计)

ylbtech-Model-Account(通用账户模块设计)

1.A,数据库关系图(Database Diagram)

1.B,数据库设计脚本(Database Design Script)
-- =============================================
-- 用户模块设计
-- 2013-8-24
-- author:yuanbo
-- =============================================
USE master
GO -- Drop the database if it already exists
IF EXISTS (
SELECT name
FROM sys.databases
WHERE name = N'ylbtech_account'
)
DROP DATABASE ylbtech_account
GO CREATE DATABASE ylbtech_account
GO USE ylbtech_account
GO
-- =============================================
-- ylb:1,账户表【主表】
-- desc
-- 1,邮箱验证成功账户才可以使用
-- 2.0,注册【填写信息】---》系统【向注册邮箱发送验证信息邮件】
-- 2.1,---》用户登录邮箱【单击验证连接】---》邮箱验证成功【开启账户】
-- =============================================
create table account
(
account_id int primary key identity(100000,1), --编号【PK,ID】
pwd varchar(40) not null, --密码
email varchar(50) unique not null, --验证邮箱
email_enabled bit default(0), --邮箱是否验证 0:已验证;1:未验证
login_enabled bit default(0) --账户状态 0:正常;1:禁用
) GO
-- =============================================
-- ylb:1.2-3,账户表【附属表】
-- desc
-- ============================================= -- ============================================= GO
-- =============================================
-- ylb:2,权限项目表【角色表】
-- desc
-- =============================================
create table account_role_project
(
project_id uniqueidentifier not null primary key, --编号【PK】
project_name varchar(40) not null, --项目名称
project_desc varchar(200), --项目描述
project_enabled bit --角色状态 0:正常;1:禁用
) GO
-- =============================================
-- ylb:2,用户和权限项目表【角色表】
-- desc
-- =============================================
create table account_role
(
role_id uniqueidentifier not null primary key,
project_id uniqueidentifier not null references account_role_project(project_id), --【FK】
account_id int references account(account_id), --【FK】
role_enabled bit --角色状态 0:正常;1:禁用
) GO
-- =============================================
-- ylb:7,邮箱验证【邮箱验证|找回密码】
-- =============================================
create table account_emailcheck
(
[guid] uniqueidentifier not null, --guid
email varchar(100) not null, --emial
[type] varchar(20) not null, --email|getpwd
pubdate datetime default(getdate()), --申请时间
account_id int references account(account_id) --【FK】
) GO
-- =============================================
-- ylb:1,
-- desc
-- =============================================
1.C,功能实现代码(Function Implementation Code)
作者:ylbtech
出处:http://ylbtech.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

ylbtech-Model-Account(通用账户模块设计)的更多相关文章

  1. [Spring cloud 一步步实现广告系统] 4. 通用代码模块设计

    一个大的系统,在代码的复用肯定是必不可少的,它能解决: 统一的响应处理(可以对外提供统一的响应对象包装) 统一的异常处理(可以将业务异常统一收集处理) 通用代码定义.配置定义(通用的配置信息放在统一的 ...

  2. Abp通用配置模块的设计

    引言 约定优于配置,配置趋于灵活 约定优于配置(convention over configuration),也称作按约定编程,是一种软件设计范式,旨在减少软件开发人员需做决定的数量,获得简单的好处, ...

  3. Java开源生鲜电商平台-通知模块设计与架构(源码可下载)

    Java开源生鲜电商平台-通知模块设计与架构(源码可下载) 说明:对于一个生鲜的B2B平台而言,通知对于我们实际的运营而言来讲分为三种方式:           1. 消息推送:(采用极光推送)   ...

  4. 解析大型.NET ERP系统 权限模块设计与实现

    权限模块是ERP系统的核心模块之一,完善的权限控制机制给系统增色不少.总结我接触过的权限模块,以享读者. 1 权限的简明定义 ERP权限管理用一句简单的话来说就是:谁 能否 做 那些 事. 文句 含义 ...

  5. ABP模块设计

    ABP模块设计 返回ABP系列 ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)”的简称. ASP.NET Boilerplate是一个用最佳实践和流行技术 ...

  6. asp.net通用查询模块设计

    asp.net通用查询模块设计 前言 自从上次狂喷了devexpress for asp.net面向互联网的app的各种不合理,好像骂的dev无处容身了,不过说实话,dev在做互联网的app时,生成的 ...

  7. thinkphp 5.0 模块设计

    模块设计 5.0版本对模块的功能做了灵活设计,默认采用多模块的架构,并且支持单一模块设计,所有模块的命名空间均以app作为根命名空间(可配置更改). 目录结构 标准的应用和模块目录结构如下: ├─ap ...

  8. Atitit 通用接口的设计与实现attilax 总结

    Atitit 通用接口的设计与实现attilax 总结 1.1. 现存的情况1 1.2. 接口返回类型,与返回序列化格式1 1.3. 异常传递 代替返回值模式1 1.4. 通用接口原理1 1.5. A ...

  9. thinkphp5.0模块设计

    5.0版本对模块的功能做了灵活设计,默认采用多模块的架构,并且支持单一模块设计,所有模块的命名空间均以app作为根命名空间(可配置更改). 目录结构 标准的应用和模块目录结构如下: ├─applica ...

随机推荐

  1. POJ 1663

    #include<iostream>//cheng da cai zi using namespace std; int main() { int time; cin>>tim ...

  2. C# 使用TimeSpan计算两个时间差

    转载:http://www.cnblogs.com/wifi/articles/2439916.html 可以加两个日期之间任何一个时间单位. private string DateDiff(Date ...

  3. 黑马程序员-- .net基础加强8之委托,事件,程序集

    ---------------------- ASP.Net+Android+IOS开发..Net培训.期待与您交流! ---------------------- 一.委托 ============ ...

  4. linux网站推荐

    推荐几个Liux中文学些网站. http://www.chinaunix.net/http://linux.cn/http://www.linuxidc.com/

  5. [hackerrank]Even Odd Query

    https://www.hackerrank.com/contests/w5/challenges 简单题,注意整数的0次方是1,奇数. #include <iostream> #incl ...

  6. 【Linux高频命令专题(15)】more

    more命令,功能类似 cat ,cat命令是整个文件的内容从上到下显示在屏幕上. more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会 ...

  7. scanf()函数用法小结

    scanf()函数是格式化输入函数,它从标准输入设备(键盘) 读取输入的信息. 其调用格式为:      scanf("<格式化字符串>",<地址表>); ...

  8. shutdown -s -t

    import java.io.*; import java.awt.*; public class HackDemo{ public static void main(String args[])th ...

  9. 持久化框架Hibernate 开发实例(二)

    1 简述 通过使用Hibernate框架,开发者可以使用面向对象的方式来进行数据库访问,从而取代 以前使用JDBC进行数据库访问的方式.通过使用Hibernate框架,web应用可以通过面向 对象的方 ...

  10. 遍历并remove HashMap中的元素时,遇到ConcurrentModificationException

    遍历并remove HashMap中的元素时,遇到ConcurrentModificationException for (Map.Entry<ImageView, UserConcise> ...