mysql_pw 指令 数据库创建过程
------------------pw_db数据库创建过程各表创建指令--------------------------
create database pw_db; #创建一个数据库
use pw_db; #切换到到数据库 pw_db
set sql_safe_updates = 0; #修改数据库为非安全等等编辑模式
# 创建一个记录所有联网设备表
create table all_netways
(
net_id CHAR(22) NOT NULL, #主键:网关唯一ID号,最长22字符
net_name VARCHAR(100) NOT NULL default('PW-Net9051'), #备住名称
net_type VARCHAR(100) NOT NULL default('HTPW100'), #设备类型
net_inline INT(4) DEFAULT(30) check(net_inline<100), #设备在线计数 <100,<=0表示掉线
PRIMARY KEY (net_id) #主键设置为唯一设备ID号
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
#创建所有 继电器回路类 表
create table all_relays
(
net_id CHAR(22) NOT NULL, #外键:所属网关唯一ID号,固定22字符
relay_name VARCHAR(100) NOT NULL default('继电器'), #备住名称
relay_value enum ('UNKNOW','OFF','ON') NOT NULL DEFAULT('UNKNOW'),#状态取值列表
UNIQUE(net_id,relay_name), #唯一性:同个网关下,设备回路名保持唯一
FOREIGN KEY (net_id) REFERENCES all_netways(net_id) #外键约束,所属网关必须先存在
ON DELETE CASCADE ON UPDATE CASCADE #随主表改变而改变
)engine = InnoDB DEFAULT CHARSET=UTF8;
#创建所有 输入按键回路类 表
create table all_keys
(
net_id CHAR(22) NOT NULL, #外键:所属网关唯一ID号,固定22字符
keys_name VARCHAR(100) NOT NULL default('继电器'), #备住名称
keys_value enum ('UNKNOW','OFF','ON') NOT NULL DEFAULT('UNKNOW'),#状态取值列表
UNIQUE(net_id,keys_name), #唯一性:同个网关下,设备回路名保持唯一
FOREIGN KEY (net_id) REFERENCES all_netways(net_id) #外键约束,所属网关必须先存在
ON DELETE CASCADE ON UPDATE CASCADE #随主表改变而改变
)engine = InnoDB DEFAULT CHARSET=UTF8;
#创建所有 调光回路类 表
create table all_dims
(
net_id CHAR(22) NOT NULL, #外键:所属网关唯一ID号,固定22字符
dim_name VARCHAR(100) NOT NULL default('调光'), #备住名称
dim_value INT(4) DEFAULT(0) CHECK(dim_value>=0 AND dim_value<=100),#调光值 0-100
UNIQUE(net_id,dim_name), #唯一性:同个网关下,设备回路名保持唯一
FOREIGN KEY (net_id) REFERENCES all_netways(net_id) #外键约束,所属网关必须先存在
ON DELETE CASCADE ON UPDATE CASCADE #随主表改变而改变
)engine = InnoDB DEFAULT CHARSET=UTF8;
#创建所有 空调类 表
create table all_airs
(
net_id CHAR(22) NOT NULL, #外键:所属网关唯一ID号,固定22字符
NAME VARCHAR(100) NOT NULL default('空调'), #备住名称
POWER ENUM('UNKNOW','OFF','ON') NOT NULL default('UNKNOW'), #电源开关状态
ATO ENUM('UNKNOW','ATONO','ATOYES') NOT NULL default('UNKNOW'), #控制方式 手动,自动
SPEED ENUM('UNKNOW','CLOSE','LOW','MIDDLE','HIGH') NOT NULL default('UNKNOW'),#风速
MODE ENUM('UNKNOW','CLOSE','HOT','COLD') NOT NULL default('UNKNOW'),#冷热控制方式
STMP INT(4) default(26) check(STMP>15 AND STMP<33), #设置温度
TMP INT(4) default(25) check(TMP>0 AND TMP<45), #当前温度
UNIQUE(net_id,NAME), #唯一性:同个网关下,设备回路名保持唯一
FOREIGN KEY (net_id) REFERENCES all_netways(net_id) #外键约束,所属网关必须先存在
ON DELETE CASCADE ON UPDATE CASCADE #随主表改变而改变
)engine = InnoDB DEFAULT CHARSET=UTF8;
------------------pw_db数据库创建过程各表创建指令--------------------------
------------------创建过程中临时测试指令--------------------------
drop database pw_db; #删除一个数据库 ----测试代码
drop table all_netways; #删除 表 ----测试代码
insert into all_netways #插入数据 ----测试代码
(net_id)
values
('123456789456');
insert into all_netways #插入数据 ----测试代码
(net_id)
values
('123456789457');
delete from all_netways where net_id='123456789456';#删除指定值的记录 ----测试代码
------------------创建过程中临时测试指令--------------------------
mysql_pw 指令 数据库创建过程的更多相关文章
- sql学习笔记(18)-----------数据库创建过程
手动创建数据库的步骤: 第一步:决定数据库实例的SID 数据库实例的SID用来将当前实例和以后可能创建的实例进行区分 % setenv ORACLE_SID mynewdb 第二步:建立数 ...
- Oracle XE自带数据库创建的过程
Oracle XE自带数据库如何创建的?XE.sql脚本定义实例究竟是怎样的?阅读下文,您可以找到这些问题的答案. Oracle XE自带数据库是如何创建的呢?这是很多人都提到过的问题,下面就为您详细 ...
- linux下Postgresql-9.2安装及数据库的创建过程
公司写部署手册需要,现总结一些linux下postgresql的安装及数据库创建的详细步骤吧! 1.1.1 软件安装 1.设置用户组和用户级别 Postgresql不能以root身份运行,要以其 ...
- Code First开发系列之管理数据库创建,填充种子数据以及LINQ操作详解
返回<8天掌握EF的Code First开发>总目录 本篇目录 管理数据库创建 管理数据库连接 管理数据库初始化 填充种子数据 LINQ to Entities详解 什么是LINQ to ...
- 图解JAVA对象的创建过程
前面几篇博文分别介绍了JAVA的Class文件格式.JVM的类加载机制和JVM的内存模型,这里就索性把java对象的创建过程一并说完,这样java对象的整个创建过程就基本上说明白了(当然你要有基础才能 ...
- JVM中对象的创建过程
JVM中对象的创建过程如以下流程图中所示: 对其主要步骤进行详细阐述: 为新生对象分配内存: 内存的分配方式: 指针碰撞:假设Java堆中内存是绝对规整的,所有用过的内存放在一边,空闲的内存在另一边, ...
- Java中对象创建过程
本文介绍的对象创建过程仅限于普通Java对象,不包括数组和Class对象. 1.类加载检查 虚拟机遇到一条new指令时,首先去检查该指令的参数能否在常量池中定位到一个类的符号引用,并且检查这个符号引用 ...
- 8天掌握EF的Code First开发系列之3 管理数据库创建,填充种子数据以及LINQ操作详解
本文出自8天掌握EF的Code First开发系列,经过自己的实践整理出来. 本篇目录 管理数据库创建 管理数据库连接 管理数据库初始化 填充种子数据 LINQ to Entities详解 什么是LI ...
- XMPie部署与创建过程 - 快速指南
XMPie部署与创建过程 1PhotoShop.Indesign.VS2013关系.作用.使用 .1.1目的与过程 1. Photoshop负责导出cpkg文件. 1.1 动态性 如果你想要生成动态的 ...
随机推荐
- mockito使用教程
一.什么是 Mock 测试 Mock 测试就是在测试过程中,对于某些不容易构造(如 HttpServletRequest 必须在Servlet 容器中才能构造出来)或者不容易获取比较复杂的对象(如 J ...
- 发送数据给sap和接收
1.确保已经连通sap 2.发送数据:这是以表的形式发送,而且是批量发送给sap 3.接收sap返回信息:这个比较特别,碰到时试一试 package com.yiyezhiqiu.lyh.utils; ...
- 2018-2019-20175334实验三《敏捷开发与XP实践》实验报告
2018-2019-20175334实验三<敏捷开发与XP实践>实验报告 一.实验内容及步骤 实验三 敏捷开发与XP实践-1 实验三 敏捷开发与XP实践 http://www.cnblog ...
- idea中使用Data Source and Drivers时,如果使用自己自定义的jar包
- Advanced Architecture for ASP.NET Core Web API
转自: https://www.infoq.com/articles/advanced-architecture-aspnet-core ASP.NET Core's new architecture ...
- v:bind指令对于传boolean值的注意之处
1,
- 【转】Chrome——F12 谷歌开发者工具详解
Chrome——F12 谷歌开发者工具详解 console source network
- python之nosetest
nose介绍 nose下载 nose使用 -s 能够打印用例中的print信息 ➜ func_tests git:(master) ✗ nosetests -v test_app.py:TestApp ...
- python web django 2nd level -- 待更新
练习代码位置 实例代码位置 --> app: myblog Form 利用Form表单验证,自己写的html 思路: 新建一个类 LoginForm(forms.Form) 新建对象 obj = ...
- 解决idea无法下载通过maven添加的jar包以及下载网速过慢的问题
在idea上使用Maven来添加依赖的jar包 发现无法下载jar包 总是提示某几个包下载失败 最后发现原因有两个(版本与网速的问题 对应解决如下) 一主要是因为版本的问题 我的idea是2019年1 ...