国产成人精品18p,天天干成人网,无码专区狠狠躁天天躁,美女脱精光隐私扒开免费观看

MySQL建表規范有哪些

發(fā)布時(shí)間:2021-07-27 11:43 來(lái)源:億速云 閱讀:0 作者:Leah 欄目: Mysql 歡迎投稿:712375056

本篇文章給大家分享的是有關(guān)建表規范有哪些,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習,希望大家閱讀完這篇文章后可以有所收獲,話(huà)不多說(shuō),跟著(zhù)小編一起來(lái)看看吧。

一、MySQL建表規范

1.1、準入規范級別

必須:為強制要求,必須遵守,如有特殊需求需要評審

強烈建議:盡量遵守,如無(wú)法遵守請給出備注說(shuō)明

建議:為最佳實(shí)踐,開(kāi)發(fā)人員可以根據實(shí)際情況有所調整

1.2、設計類(lèi)核心規則

表字符集選擇UTF8 【必須

生產(chǎn)庫存儲引擎使用INNODB 必須

不在數據中存儲圖片、文件,不使用大文本類(lèi)型必須

使用外鍵,由程序保證數據一致性必須

禁止使用存儲過(guò)程、觸發(fā)器 必須

每張表數據量控制在2000W以下 ,如預計會(huì )超出,需提前做好拆分或者歸檔遷移計劃強烈建議

1.3、命名規范

庫名、表名、字段名、索引名使用小寫(xiě)字母,以下劃線(xiàn)_分割 【必須

庫名、表名、字段名、索引名不使用保留字 (關(guān)鍵字)【必須

庫名、表名、字段名不超過(guò)15個(gè)字符,需見(jiàn)名知意 【建議

索引命名:【強烈建議

唯一索引:“ux_表名_字段名前3字母[_字段名前3字母]”

非唯一索引:“ix_表名_字段名前3字母[_字段名前3字母]”

1.4、字段類(lèi)規范

所有字段均定義為NOT NULL 【必須

字符串統一單引號引用,而不是雙引號【必須

使用UNSIGNED存儲非負整數 【必須

使用DECIMAL存儲精確浮點(diǎn)數 【必須

使用TINYINT來(lái)代替ENUM類(lèi)型 【必須

拆分TEXT、BLOB類(lèi)型字段,或者獨立建表 【必須

使用UNSIGNED INT存儲ipv4 地址,而不是CHAR(15) 【強烈建議

非中文字段使用varchar存儲變長(cháng)字符串 【強烈建議

盡可能將字符轉化為數字 存儲【建議

使用TIMESTAMP存儲操作時(shí)間 *【建議

1.5、索引類(lèi)規范

單張表索引數量不超過(guò)5,單個(gè)索引字段數不超過(guò)5  【強烈建議

避免冗余索引 【強烈建議

重要的SQL必須被索引 【強烈建議

       UPDATE、DELETE語(yǔ)句的WHERE條件列

       ORDER BY、GROUP BY、DISTINCT的字段

       多表JOIN的字段

 主鍵的選擇要慎重 【強烈建議】 

      首選使用非空的唯一鍵, 其次選擇自增列或發(fā)號器

      不使用更新頻繁的列,盡量不選擇字符串列,不使用UUID MD5 HASH、

能不建立索引盡量不用索引 【強烈建議

     不在null列上加索引

     不在低基數列上建立索引,例如“性別” 

二、建表SQL審核平臺

2.1、說(shuō)明

此系統為了學(xué)習與減輕DBA的審核建表SQL的工作而做。達到自動(dòng)審核基本規則問(wèn)題

<1>優(yōu)點(diǎn):

<1>減少了DBA手動(dòng)審核表的工作

<2>平臺化操作,方便

<3>通過(guò)python自動(dòng)匹配與審核規范

<2>缺點(diǎn):

<1>、只有建表SQL審核

<2>、比較簡(jiǎn)單,后期可以使用inception,來(lái)審核建表SQL+上線(xiàn)SQL+備份等,請關(guān)注博客 http://blog.itpub.net/28823725/  后期會(huì )調研與應用

<3>審核說(shuō)明:

利用python程序來(lái)分析

分為:error,suggest錯誤類(lèi)別

按字段錯誤進(jìn)行展示

<4>其他說(shuō)明:

<1>此系統寫(xiě)于2015年6月初左右,為了學(xué)習inception 與python 為做,分享此文章只為了學(xué)習與交流

另Inception沒(méi)開(kāi)源多久;對比inception的請輕噴哈~

<2>后期會(huì )出Inception的相關(guān)文章

2.2、平臺流程圖


 

2.3、搭建

<1>環(huán)境搭建

django環(huán)境搭建

忽略,可參考我博客的其他文章,里面有詳細的部署命令

python2.7環(huán)境搭建

忽略

平臺搭建

cd /chunlei/django

創(chuàng )建項目:

django-admin.py   startproject  createsql_check

會(huì )產(chǎn)生目錄createsql_check

cd /chunlei/django/createsql_check

ls

createsql_check

manage.py

<2>設置配置文件

cd /chunlei/django/createsql_check/createsql_check

vi settings.py 

ALLOWED_HOSTS = ['可以訪(fǎng)問(wèn)的IP地址,也可以寫(xiě)*即不限制'] 

INSTALLED_APPS = [

    'django.contrib.admin',

    'django.contrib.auth',

    'django.contrib.contenttypes',

    'django.contrib.sessions',

    'django.contrib.messages',

    'django.contrib.staticfiles',

    'createsql_check',

]

EMPLATES = [

    {

        'BACKEND': 'django.template.backends.django.DjangoTemplates',

        'DIRS': ['/chunlei/chunlei/django/createsql_check/createsql_check/templates'],

        'APP_DIRS': True,

        'OPTIONS': {

            'context_processors': [

                'django.template.context_processors.debug',

                'django.template.context_processors.request',

                'django.contrib.auth.context_processors.auth',

                'django.contrib.messages.context_processors.messages',

            ],

        },

    },

]

TIME_ZONE = 'Asia/Shanghai'

<3>、設置django的url文件

from django.conf.urls import  include, url

from createsql_check.views import createcheck_create_table_check

from createsql_check.views import createcheck_create_sql

from createsql_check.views import createcheck_get_dba_error_suggest

from createsql_check.views import createcheck_to_mail

from createsql_check.views import to_input_confirm_info

from createsql_check.views import to_confirm

urlpatterns = [

url(r'^createcheck_create_table_check/$',createcheck_create_table_check),

url(r'^createcheck_create_sql/$',createcheck_create_sql),

url(r'^createcheck_get_dba_error_suggest/$',createcheck_get_dba_error_suggest),

url(r'^createcheck_to_mail/$',createcheck_to_mail),

url(r'^createcheck_to_input_confirm_info/$',to_input_confirm_info),

url(r'^createcheck_to_confirm/$',to_confirm),

]

<4>創(chuàng )建目錄

cd /chunlei/django/createsql_check

mkdir check_html

mkdir log

cd /chunlei/django/createsql_check/createsql_check 

 

<5>配置163郵箱

注:之前使用的是公司的郵件服務(wù),此系統搭建與百度云,就配置163郵箱服務(wù)了

將授權碼配置到郵件服務(wù)即可


 <6>開(kāi)啟

cd /chunlei/django/createsql_check

python manage.py  runserver IP:port

2.4、界面及操作

<1>RD審核建表SQL界面

 測試建表SQL

 create table table_test (id int,name1 varchar(50),primary key(id));

<2>自動(dòng)分析問(wèn)題

<3>填寫(xiě)表相關(guān)信息

RD確認ok,填寫(xiě)表相關(guān)信息,提交給DBA

<4>提交信息總覽

RD提交信息總覽,默認發(fā)送DBA,也可以填寫(xiě)抄送郵件接收人

 

 <5>發(fā)送給DBA

 

<6>DBA接收郵件

 

 <7>DBA確認

點(diǎn)擊郵件的"DBA確認"

 

填寫(xiě)庫表信息,說(shuō)明等,點(diǎn)擊通過(guò)/拒絕

提交結果

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自本網(wǎng)站內容采集于網(wǎng)絡(luò )互聯(lián)網(wǎng)轉載等其它媒體和分享為主,內容觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如侵犯了原作者的版權,請告知一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容,聯(lián)系我們QQ:712375056,同時(shí)歡迎投稿傳遞力量。

一本一道AV无码中文字幕| 亚洲欧美精品伊人久久| 日韩国产精品亚洲А∨天堂免| 国产95在线 | 亚洲| 国精产品999国精产品官网| 无码日韩人妻精品久久|