模拟测试:

QQ数据库管理

一、创建数据库并添加关系和测试数据

 ##创建QQ数据库,完成简单的测试

 #创建数据库
DROP DATABASE IF EXISTS MyQQ;
CREATE DATABASE MyQQ;
USE MyQQ; #在数据库创建基本数据表 #创建User表
DROP TABLE IF EXISTS `User`;
CREATE TABLE `User`(
qqID INT(11) NOT NULL PRIMARY KEY COMMENT 'QQ号码',
`passWord` VARCHAR(50) NOT NULL COMMENT 'QQ密码',
lastLogTime DATETIME DEFAULT NOW() COMMENT'最后一次登录时间',
onLine INT(4) DEFAULT 0 COMMENT '登录状态:0离线 1在线 2隐身',
`level` INT(4) DEFAULT 1 COMMENT 'QQ等级'
)COMMENT="QQ用户表"; #创建用户信息表
DROP TABLE IF EXISTS BaseInfo;
CREATE TABLE BaseInfo(
qqID INT(11) NOT NULL PRIMARY KEY COMMENT 'QQ号码',
NickName VARCHAR(50) COMMENT '昵称',
Sex INT(4) DEFAULT 0 COMMENT '性别:0女 1男',
Age INT(4) COMMENT '年龄',
Province VARCHAR(50) DEFAULT '北京' COMMENT '省份',
City VARCHAR(50) COMMENT '城市',
Address VARCHAR(255) COMMENT '地址',
Phone VARCHAR(11) COMMENT '联系电话'
)COMMENT="用户信息表"; #创建QQ好友关系表
DROP TABLE IF EXISTS Relation;
CREATE TABLE Relation(
qqID INT(11) NOT NULL COMMENT 'QQ号码',
RelationQQID INT(11) NOT NULL COMMENT 'QQ好友',
RelationStatus INT(4) DEFAULT 0 NOT NULL COMMENT '好友状态:0好友 1黑名单'
)COMMENT="QQ好友"; ##创建表关系(外键) ALTER TABLE BaseInfo
ADD CONSTRAINT fk_baseinfo_user FOREIGN KEY (qqID)
REFERENCES `User`(qqID); ALTER TABLE Relation
ADD CONSTRAINT fk_qqid_user FOREIGN KEY (qqID)
REFERENCES `User`(qqID); ALTER TABLE Relation
ADD CONSTRAINT fk_reid_user FOREIGN KEY (RelationQQID)
REFERENCES `User`(qqID); ##添加测试数据 #User表数据
INSERT INTO USER(qqID,PASSWORD,lastLogTime,onLine,`level`)
VALUES(8855678,'guest0221','2008-02-21 16:28:20',1,6),
(54789625,'add512#&','2008-01-16 17:01:35',2,11),
(88662753,'admin0219','2017-07-01 21:08:35',0,5); #BaseInfo表数据
INSERT INTO BaseInfo(qqID,NickName,Sex,Age,Province,City,Address,Phone)
VALUES(8855678,'独行侠',1,38,'北京','海淀区','上地',''),
(54789625,'蝴蝶飞飞',1,16,'北京','朝阳区','亚运村',''),
(88662753,'青青草',0,20,'河南省','安阳','汤阴',''); #Relation表数据
INSERT INTO Relation(qqID,RelationQQID,RelationStatus)
VALUES(54789625,88662753,0),
(88662753,8855678,1),
(54789625,8855678,0);

二、实现查询,修改,删除等操作

【学习笔记】2017年7月18日MySQL测试:模拟QQ数据库的更多相关文章

  1. 路冉的JavaScript学习笔记-2015年1月23日

    1.JavaScript的数据类型 A.原始类型:包含数值.字符串.布尔值.空值(null)和未定义值(undefined). Js原始类型均为不可改变类型.对不可变类型调用任何自带方法都不会改变原始 ...

  2. 通用Mapper新特性:ExampleBuilder 2017年12月18日

    package tk.mybatis.mapper.test.example; import org.apache.ibatis.session.SqlSession; import org.juni ...

  3. 4月18日 MySQL学习

    正式开始了数据库的学习 昨天下好的MySQL 今天正式开始学习的,介绍了多种数据库软件,当然 学习的这个是开源的 免费的. DBMS(数据库管理系统)这就是我们学习的数据库的软件 数据库分为关系型数据 ...

  4. Html标记语言学习一2017年6月12日

    今天主要学习了 frame的用法. <frameset> 可以将网页分成几个不同的部分 使用 cols  和  rows 两种标记.前者是列,后者是行 <frame/>  单标 ...

  5. 路冉的JavaScript学习笔记-2015年2月5日

    1.为Js原始值创建临时对象,并进行属性引用 var s="text"; s.len=4;//这里Js调用new String(s)的方法创建了一个临时对象,用来属性引用 cons ...

  6. Git学习(二)(2015年11月18日)(2016年1月29日)

    2015年11月18日Git学习: .Shell 删除文件夹及其所有文件 rd/s/q 文件目录 ---------------当前为先创建本地Git库后与网上Git服务器关联------------ ...

  7. 2017年8月9日学习内容存放 #socket通信介绍

    2017年8月9日学习内容存放 #socket通信介绍 ''' OSI七层 应用 表示 会话 传输 网络 ip 数据链路 mac 物理层 网线 http smtp dns ftp ssh snmp i ...

  8. 深度学习DeepLearning技术实战(12月18日---21日)

    12月线上课程报名中 深度学习DeepLearning(Python)实战培训班 时间地点: 2020 年 12 月 18 日-2020 年 12 月 21日 (第一天报到 授课三天:提前环境部署 电 ...

  9. 【2017年9月10日更新】ABP配套代码生成器(ABP Code Generator)帮助文档,实现快速开发

    ABP代码生成器介绍 ABP Code Generator 针对abp这个框架做了一个代码生成器,功能强大.分为两大功能点,一个是数据层,一个是视图层. 数据服务层:通过它,可以实现表设计.领域层初始 ...

随机推荐

  1. mysql设计-优化

    mysql表复制 1.复制表结构 create table student like user; 2.复制表内容 insert into t3 select * from t1; mysql索引 1. ...

  2. (C/C++) Link List - C 語言版本

    基本Link List 用C語言實現 先附上標頭檔 /** * @author Chen-Hao Lin * @email westgate.skater@gmail.com * @website h ...

  3. 洛谷 P1503 鬼子进村

    题目背景 小卡正在新家的客厅中看电视.电视里正在播放放了千八百次依旧重播的<亮剑>,剧中李云龙带领的独立团在一个县城遇到了一个鬼子小队,于是独立团与鬼子展开游击战. 题目描述 描述 县城里 ...

  4. Xilinx FPGA使用——ROM初始化文件

    在调用ROM的IP Core时,需要对其进行初始化,利用MATLAB生成其初始化数据文件. 工具:ISE 14.7.MATLAB.notepad++ 废话不多说,直接上MATLAB代码,生成了一个10 ...

  5. angular-ui-select (系列二)远程搜索,页面方框显示的值跟传给后台的值不一样解决方案

    三:下拉单选远程搜索: 一个重点是: 这个方法,就是让我们去远程搜索的 refresh="ctrl.refreshAddresses($select.search)" refres ...

  6. elementui 给 左侧功能栏 加上 el-scroll 时 , el-main 会 挤压 左侧导航栏..

    解决方法... el-main 给上 style='width:0'........... 并不会影响 el-main 布局...

  7. 关于zipfile解压出现的字符编码问题

    使用zipfile解压文件时,出现了中文乱码问题,具体解决方法有两个,直接上代码吧. def deco_zip(path, file_path): os.mkdir(file_path) # 方式一 ...

  8. Oracle权限关于with admin option和with grant option的用法

    1.with admin option with admin option的意思是被授予该权限的用户有权将某个权限(如create any table)授予其他用户或角色,取消是不级联的. 如授予A系 ...

  9. 剑指offer——面试题11:旋转数组的最小数字

    #include"iostream" using namespace std; int GetMinNumber(int *data,int len) { ,right=len-, ...

  10. How to download Heavy Duty Diagnostic Caterpillar SIS 2018 software

    Maybe you find there are supplied Caterpillar SIS 2018 software free download in search engine, that ...