数据库设计规范(命名规范)

数据库建设技术文档规范 数据库建设技术,数据库设计技术文档,设计到数据库的很多内容,很好学习 立即下载
1 目的 
规范数据库设计。 
2 概述 
从数据库的设计原则 设计文档几方面论述数据库设计的规范思想及命名规则。 
3 数据库应用结构 
根据对一般业务系统的分析,将数据库和程序系统统一进行整体描述,展示数据库的 
表之间以及与程序模块间的关系。 
3.1 数据表和程序模块的分类 
根据“处理特点”,将数据表和程序模块进行分类如下: 
数据表分类:业务数据表、基本编码表、辅助编码表、系统信息表、累计数据表、结 
算数据表、决策数据表。 
程序模块分类:初始化、业务处理、完整性检测与修正、结算处理、统计处理。 
3.1.1 数据表分类说明 
业务数据表:记录业务发生的过程和结果。如,合同、出仓单、申请单、凭证。 
基本编码表:描述业务实体的基本信息和编码。如,产品、客户、供应商、雇员。 
辅助编码表:描述属性的列表值。如,合同类型、职称、民族、付款方式。 
系统信息表:存放与系统操作、业务控制有关的参数。如,用户信息、权限、用户配 
置信息、成本核算方式。 
累计数据表:存放业务的当前值和累计值。如,当前库存、当前存款、累计销售、累 
计支出、应收账款。 
结算数据表:存放各个时期末的结存数。如,月末库存、月末银行存款、应收账款月 
结。
决策数据表:存放各个时期内发生的统计值。如,月销售统计、月回款统计、出入库 
统计。 
3.1.2 程序模块分类说明 
初始化:系统运行前对系统进行数据的初始化。如,库存初始化。 
业务处理:业务过程的控制和结果记录。如,合同录入、费用审批、出入库。 
完整性检测与修正:对累计数据表进行检查并自动修正。如对当前库存、当前存款、 
累计销售的检查和重新计算。 
结算处理:计算并记录各个时期末的结存数。库存月结、应收账款月结。 
统计处理:计算并记录各个时期内发生的统计数。如,统计月销售、统计月回款、统 
计出入库。 
3.2 数据表间的关系 
业务数据表<-->基本编码表 主-外键关系。如,合同表<-->客户编码表; 
业务数据表<-->辅助编码表 主-外键关系。如,合同表<-->付款方式; 
业务数据表、累计数据表、结算数据表:累计数据表=结算数据表(上期末) + 业务数 

据表(本期内发生)。如当前库存=上月末库存数+(本月入库数-本月出库数); 
决策数据表<-->业务数据表 决策数据表的数据是由业务数据表中数据导出(统计)的; 
3.3 数据表与程序模块间的关系 
由一个例子(仓库管理)来说明数据表与程序模块之间的关系: 
. 系统使用前,由初始化模块对库存数(累计数据表)和上月末库存数(结存数据表)进 
行初始化; 
. 当有入库业务发生时,由入库模块(业务处理)将入库单录入并保存到入库单明细帐( 
业务数据表)中,同时将入库数累加到库存数(累计数据表)中; 
. 定期或不定期,库存数核算模块(检查完整性检测与修正)根据上月末的库存数(结存 
数据表)、本月已发生数(业务数据表)检查当前的库存数(累计数据表)是否符合,不符合 
则给出提示,可手工或自动进行更正(当前库存数=上月末库存数+本月入库数-本月出库数 
); . 每月初,进行上月的月结处理。月结模块(结算处理)根据上月初的库存数(结存数据 
表)、上月发生数(业务数据表)计算出上月末的库存数(累计数据表)。公式为:上月末库 
存数=上月初库存数+上月入库数-上月出库数; 
. 每个月月结后,库存业务月统计模块(统计处理)统计上月的各种库存商品的入库和 
出库数,便于查询和生成报表,也作为决策支持的数据基础。 
3.4 数据表命名时对数据表分类的考虑 
. 业务数据表:t_d_<系统标识>_<表标识>。如销售系统的合同表 t_d_SH_Contract 
或 t_d_SH_合同; . 基本编码表:t_b_[<系统标识>]_<表标识>。如客户编码表t_b_Customer 或 t_b_客 
户; . 辅助编码表:t_a_[<系统标识>]_<表标识>。如合同类别t_a_ContType 或 t_a_合同 
类别; . 系统信息表:t_s_[<系统标识>]_<表标识>。如用户表t_s_User 或 t_s_用户; 
. 累计数据表:t_t_<系统标识>_<表标识>。如当前库存表t_t_SO_Stock 或 t_t_SO_ 
库存; . 结算数据表:t_c_<系统标识>_<表标识>。如库存月结表t_c_SO_StockMonth 或 
t_c_SO_库存月结; . 决策数据表:t_w_<系统标识>_<表标识>。如月销售统计表t_w_SH_SellMonth 或 
t_w_SH_月销售统计; 注:[]内的内容表示可选。如“t_s_[<系统标识>]_<表标识>”表示t_s_SH_User 和 
t_s_User 都是符合规则的。 
4 数据库结构原则 
规定除数据库设计所遵循的范式外的一些适用原则,在遵循数据库设计范式的基础上 
,合理地划分表,添加状态和控制字段等。 
4.1 辅助编码表 
为了使辅助编码表能起到预期的效能,又不因过多的辅助编码表难以管理,故对辅助 
编码表的使用作如下规定: 
1. 当某辅助编码表的编码允许用户添加时,应设计成“独立”的数据表;否则,将不 
允许用户添加编码的各辅助编码表合并成一个“通用”的辅助编码表。 
2. “独立”的辅助编码表与主表的列采用主-外约束保证列数据完整性。 
3. “通用”的辅助编码表与各主表间没有约束关系,主表列的数据完整性由列说明的 
“域”来保证。 
4. “通用”的辅助编码表除编码和名称列外,还有一个标识列,用来标识合并前的各 
码表,该标识列+编码列作为该表的主键。 
5. 对于“独立”的辅助编码表,用户只可添加新的编码和改变名称,并且不能改变一 
个编码所代表的意义;对于“通用”的辅助编码表,原则上不允许用户修改,或只有限地 
允许修改名称。 
4.2 基本编码表 
1. 基本编码表可以有如下的标识列:内编码、外编码、助记码、简称、全称。内编码 
(唯一编码)作为主键有程序自动生成,用户不可见;外编码(唯一编码)由用户按某种 
规则自行定义,用户可见;助记码为拼音缩,方便录入,不唯一,重码时由列表选择;简 
称用于列表显示和报表,以便缩短行宽。以上的列在实现时可视情况和习惯加以删减。 
2. 当码表的列较多且也行较多时,可将上述的标识列和常用的信息存于一个表,将其 
它的信息另表存储。 
4.3 业务数据表 
1. 设有‘录入人’和‘录入日期’列,由系统自动记录。 
2. 记录单据的表中设置“自动单据号”,由两个字符开始以区分单据类型,后跟一数 
字序列表示序号。‘自动单据号’由系统自动生成,作为主表的主键,不允许用户修改。 
当有对应的纸质单据时,设置“单据号”用于记录纸质单据的单据号。 
3. 明细表中设有行序号,自动记录行的录入顺序。 
4. 设置“存档标记”列,用于抽取数据到决策数据库时的更新标记。插入新行或修改 
已有行时设置该标记;数据抽取后清除该标记。 
5. 对于用于查询过滤条件的列,不可为空,以免行“丢失”。 
6. 对于数值列,不可为空,“0”作为默认值。 
7. 对于必要的“冗余”列,如客户名称,应有相应的程序保持各“冗余”列的同一性 
,以免出现异议。 
8. 设置“过程状态”列和“记录状态”列。过程状态列用于记录如创建、审核、记账 
、冲红等状态;记录状态用于记录如有效、删除等状态。 
5 数据库命名原则 
5.1 表名 
. 业务数据表:t_d_<系统标识>_<表标识>。 
. 基本编码表:t_b_[<系统标识>]_<表标识>。 
. 辅助编码表:t_a_[<系统标识>]_<表标识>。 
. 系统信息表:t_s_[<系统标识>]_<表标识>。 
. 累计数据表:t_t_<系统标识>_<表标识>。 
. 结算数据表:t_c_<系统标识>_<表标识>。 
. 决策数据表:t_w_<系统标识>_<表标识>。 
5.2 视图 
v_<视图类型>_[<系统标识>]_<视图标识>。视图类型参见《表的分类》。 
5.3 存储过程 
p_[<系统标识>]_<存储过程标识> 
5.4 函数 
f_[<系统标识>]_<函数标识> 
5.5 触发器 
tr_<表名>_<i,u,d的任意组合> (after) 
ti_<表名>_<i,u,d的任意组合> (instead) 
5.6 自定义数据类型 
ud_<自定义数据类型标识>_<数据类型> 
5.7 Default 
df_<Default标识> 
5.8 Rule 
ru_<Rule标识> 
5.9 主键 
pk_<表名>_<主键标识> 
5.10 外键 
fk_<表名>_<主表名>_<外键标识> 

 
多元相关性分析_PAST:最简便易用的统计学分析软件教程目录 欢迎来到PAST的世界!本教程并不是将PAST的所有功能均进行详细介绍,而只是挑选与生物、医学、微生物研究相关的统计学分析内容进行讲述。根据PAST内各项分析的标签分类,将该教程具体设置如下:PAST软件介绍PAST的基本信息数据的输入和修改数据的转换和标准化图像绘制 (Plot标签)点线图和直方图散点图条形图和箱须图饼图堆叠条形图三元相图气泡图单变量统计学分析 (Univariate标... 阅读详情

相关推荐

西工大noj100题python2024第三季21-30

【代码】西工大noj100题python2024第三季21-30。

weixin_70523540的博客 1576

可迁移数据库的基本命名和实施规范

前言 数据库管理系统(DBMS)是各类信息系统的核心组成部分,常用的关系数据库系统(RDBMS)有SQLite、SQL Server、MySQL、Oracle等等。不同种类和版本的关系数据库系统在大小写区分、数据类型、SQL语法等等方面各有差异,若一个信息系统需要支持一种以上的数据库系统,那么为了可迁移而在数据库命名和实施上应该遵守必要的命名和实施规范。 ...

aoselei6295的博客 263

新手必看:瑞萨MCU选型时,QFP、QFN、BGA这些封装到底该怎么选?(附选型避坑指南)

本文详细解析了瑞萨MCU选型中QFP、QFN、BGA等封装的特点与适用场景,提供实战避坑指南。通过对比封装的空间占用、散热能力、焊接难度等核心维度,帮助工程师根据具体需求选择最合适的芯片封装,避免因选型不当导致的高成本与生产问题。

weixin_26965807的博客 421

数据库设计规范(转)

标题:数据库设计规范 版本:V2.0 修订文档历史记录: ---日期--|---版本--|--说明---- 2003.6.5 V1.0 文档初搞 2003.6.17 V2.0 对1.0 的内容重新整理 数据库设计规范 1 目的 规范数据库设计。 2 概述 ...

weixin_30267691的博客 259

STM32F103ZE精英板驱动ESP8266与DHT11构建物联网网关,实现乐联网温湿度数据实时监控

本文详细介绍了如何使用STM32F103ZE精英板驱动ESP8266与DHT11构建物联网网关,实现乐联网温湿度数据实时监控。从硬件选型、连接调试到乐联网平台配置和STM32程序开发,提供了完整的实现步骤和常见问题解决方案,适合物联网入门开发者参考。

weixin_30823001的博客 78

青龙人形机器人硬件平台设计全解析:从构型到控制系统的实战指南

本文深度解析了青龙人形机器人硬件平台的设计全流程,从需求分析、构型设计到核心系统实现。文章详细阐述了其43个自由度的仿生构型、高动态性下肢设计、灵巧作业系统以及分布式控制架构,并探讨了旋转关节与直线关节等关键技术选型,为开发者提供了从理论到实践的完整硬件设计指南。

weixin_29248313的博客 381

数据库设计原则、表&字段命名规则、索引调优建立规则

1.数据库设计14规则 1. 原始单据与实体之间的关系    可以是一对一、一对多、多对多的关系。在一般情况下,它们是一对一的关系:即一张原始单据对应且只对应一个实体。  在特殊情况下,它们可能是一对多或多对一的关系,即一张原始单证对应多个实体,或多张原始单证对应一个实体。  这里的实体可以理解为基本表。明确这种对应关系后,对我们设计录入界面大有好处。    〖例1〗:一份员工履

互联网的修罗场 9776

Linux中断子系统(二)—— 通用框架处理

1、数据结构分析 (1)中断描述符结构structirq_desc: 1)打开CONFIG_SPARSE_IRQ宏(中断编号不连续),中断描述符以radix- tree来组织,用户在初始化时进行动态分配,然后再插入radix-tree中; 2)关闭CONFIG_SPARSE_IRQ宏(中断编号连续),中断描述符以数组的 形式组织,并且已经分配好; 3)不管哪种形式,最终都可以通过linuxirq号来找到对应的中断描述符; (2)stru...

weixin_38428439的博客 4871

数据库表字段命名规范

数据库表字段命名规范 摘要:当前研发工作中经常出现因数据库表、数据库表字段格式不规则而影响开发进度的问题,在后续开发使用原来数据库表时,也会因为数据库表的可读性不够高,表字段规则不统一,造成数据查询,数据使用效率低的问题,所以有必要整理出一套合适的数据库表字段命名规范来解决优化这些问题。 本文是一篇包含了数据库命名、数据库表命名、数据库表字段命名及SQL语言编码的规范文档,针对...

1627

当R语言遇见MaxENT:参数优化的艺术与自动化调参实践

本文探讨了R语言与MaxENT在生态位建模中的结合应用,重点介绍了参数优化与自动化调参的实践方法。通过caret与ENMeval工具链,研究人员可以高效处理多物种、多环境变量的大规模分析任务,提升模型性能与工作效率。文章还涵盖了从数据准备到结果可视化的全流程,为生态学家提供了实用的技术指导。

corn8的博客 455

【AI智能体】Codex + Obsidian 打造专业知识库实战详解

Codex + Obsidian 搭建并操作知识库实战详解

congge 3090

Oracle数据库设计规范篇{七}【设计篇完结】——环境参数规范(数据库参数、表空间规划、RAC、命名规范)

需要特别说明的是,并非一定要这么命名,只是强调但是在同一开发团队甚至同一公司里,必须统一规范,在内部达成一致的认可。一般来说,ORALCE默认的日志参数是3组,大小为500M,在实际较大的生产应用中往往不够,需要至少考虑在5组以上,大小在1G以上。一般来说,生产系统大多需要开启归档,只有在特殊的场合下数据安全性无关紧要(如测试环境),才可以关闭归档。-----默认连接数是150,这对大多数应用都无法满足,大型应用一般不少于1000个。----不过这里还是要注意:并没有什么黄金参数,这些还只能是参考。

从底层逻辑去思考技术,去拥抱变化 1304

Cesium 场景特效之【全球海洋】GL2兼容版

Cesium 场景特效之【全球海洋】GL2兼容版

喜欢钻研前端和分享技术 1278

详解 MySQL 数据库对象命名规范、对象设计规范、SQL 使用规范

数据库对象命名规范 数据库对象 数据库对象是数据库的组成部分,常见的有以下几种:表(Table )、索引(Index)、视图(View)、图表(Diagram)、缺省值(Default)、规则(Rule)、触发器(Trigger)、存储过程(Stored Procedure)、 用户(User)等。命名规范是指数据库对象如数据库(SCHEMA)、表(TABLE)、索引(INDEX)、约束(CONSTRAINTS)等的命名约定。 数据库对象全局命名规范 1、命名使用具有意义的英文词汇,词汇中间以下划线

uuuyy_的博客 635

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

JAVA项目命名规范和数据库设计规范

JAVA项目命名规范数据库设计的规范

中年闰土的博客 23万+

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

数据库设计规范之命名规范

命名规范     说明:指数据库对象如表(TABLE)、序列(SEQUENCE)、过程(PROCEDURE)、触发器(TRIGGER)等的命名约定。 1. 基本命名原则 (1)规则1:命名使用具有意义的英文词汇,词汇中间以下划线分隔。 (2)规则2:命名只能使用英文字母,数字,下划线,并以英文字母开头。 (3)规则3:避免用ORACLE、MySQL的保留字如desc

长期深耕于云计算、大数据、数据库领域! 5401

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

mysql id命名规范_数据库设计规范之命名规范

命名规范说明:指数据库对象如表(TABLE)、序列(SEQUENCE)、过程(PROCEDURE)、触发器(TRIGGER)等的命名约定。1. 基本命名原则(1)规则1:命名使用具有意义的英文词汇,词汇中间以下划线分隔。(2)规则2:命名只能使用英文字母,数字,下划线,并以英文字母开头。(3)规则3:避免用ORACLE、MySQL的保留字如desc,关键字如index。2. 表命名(1)规则1:同...

weixin_36116139的博客 1546

数据结构(数据库)设计规范

为什么80%的码农都做不了架构师?>>> ...

weixin_34152820的博客 2135

设计规范系列(简要)-类命名规范、数据库命名规范、页面文件命名规范

一、类命名规范 1. Entity层 :          继承关系:所有类继承自BasicEntity, 其中BasicEntity实现 java.io.Serializable接口;          命名规则: 类名称 = Object + 类后缀,其中类后缀为 Bean,如:SalesOrderBean  2. Form层 :          继承关系:所有类继承自BasicForm, 

我就是停不下来 848

数据库表设计(一):字段设计规范和命名规范

如INSERT、UPDATE、DELETE、SELECT及其子句,IF……ELSE、CASE、DECLARE等。

晓风残月淡的博客 2万+

mysql 命名规范_MYSQL 数据库命名与设计规范

MYSQL 数据库命名与设计规范更新时间:2008年12月24日 23:50:43 作者:对于MYSQL 数据库的命名与设计,需要一定的规范,所以我们要了解和快速的掌握mysql有很多的帮助。1.设计原则1) 标准化和规范化数据的标准化有助于消除数据库中的数据冗余。标准化有好几种形式,但Third Normal Form(3NF)通常被认为在性能、扩展性和数据完整性方面达到了最好平衡。简单来说...

weixin_39626089的博客 202

《Mysql设计规范》- 数据库命名规范 / 数据库基本设计规范 / 索引设计规范 / 字段设计规范 / SQL开发规范 / 数据库操作行为规范

文章目录 一、数据库命名规范 二、数据库基本设计规范 三、索引设计规范 四、字段设计规范 五、SQL开发规范 六、数据库操作行为规范 版权声明:本文为博主王佳斌原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.youkuaiyun.com/weixin_44198965/article/details/108987584 一、数据库命名规范 所有的数据库对象名称必须使用小写字母并用下划线表示,因为默认情况下,my...

gening721的博客 215

开源供应链设计规范之 -- 数据库命名规范

四、数据库命名规范1、数据库表    根据表所属的子系统/模块,命名方式为:        数据库表名 = 子系统/模块 缩写 + 表含义    其中子系统/模块的缩写首字母大写,表含义中每个单词的首字母为大写。    子系统/模块及其缩写应在《数据库设计说明书》的约定部分加以描述。    例如:代码表可统一采用”code”为表的前缀,则:code_area表示地区代码表2、表字段

老丁的专栏 4082
上一篇: Oracle索引创建原则
下一篇: 面向对象软件设计的“开—闭”原则
forlinux
博客等级 码龄21年 53粉丝 95原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值