Giter Club home page Giter Club logo

sqlstudy's People

Contributors

zhouzhouhhh avatar

Stargazers

 avatar  avatar

Forkers

carlyx

sqlstudy's Issues

Review-2018.11.17-张云皓 -灭火器表创建

create table ExtList (
	ExtID char(10) primary key,     --灭火器编号
	ExtState char(8)  check(ExState in ('遗失','正常','待维护')),
	RoomResPerson char(10), --房间负责人
	Dist char(10), --所在校区 
	Loc char(50), --具体地址
)

create table UserList (
	UserID char(10) primary key, --用户编号
	UPassword char(20) check(len(UPassword) >= 6 and len(UPassword)<=20 ), --用户密码
	UName char(10),
	Tel char(11) not null,
	--Dept char(20), 所属部门
	Position char(20) check(Position in ('房间负责人','保卫处人员','二级学院负责人')),
	
) 

create table ReqList(
	ReqID char(12) primary key,
	ReqUserID char(10),
	ReqExtID char(10),
	StateSct char(8) default('待审核'), --保卫处审核
	StateSecd char(8) default('待审核'),--二级学院负责人审核
	ReqType char(10),
	foreign key(ReqUserID) references UserList(UserID),
	foreign key(ReqExtID) references ExtList(ExtID),
)

Review: 2018.11.21 王艺琳

###SQL SERVER环境的高级使用
SQL SERVER性能网站:http://www.sql-server-performance.com/

优化数据库访问:
第一步:应用正确的索引
  采用正确的索引会使生产系统的性能得到质的提升,另一个原因是创建或修改索引是在数据库上进行的,不会涉及到修改程序,并可以立即见到成效。
  在下面这些列上创建非聚集索引:
  1)搜索时经常使用到的;
  2)用于连接其它表的;
  3)用于外键字段的;
  4)高选中性的;
  5)ORDER BY子句使用到的;
  6)XML类型。
  第二步:创建适当的覆盖索引
  假设你在Sales表(SelesID,SalesDate,SalesPersonID,ProductID,Qty)的外键列(ProductID)上创建了一个索引,假设ProductID列是一个高选中性列,那么任何在where子句中使用索引列(ProductID)的select查询都会更快,如果在外键上没有创建索引,将会发生全部扫描,但还有办法可以进一步提升查询性能。
  第三步:整理索引碎片
  什么是索引碎片?
  由于表上有过度地插入、修改和删除操作,索引页被分成多块就形成了索引碎片,如果索引碎片严重,那扫描索引的时间就会变长,甚至导致索引不可用,因此数据检索操作就慢下来了。
  有两种类型的索引碎片:内部碎片和外部碎片。

Review: 2018.12.05洪颐鼎

def index(request):
posModel = PosModel(username='',password='',age='')
posModel.save() #写入数据库
posModel = PosModel.object.get(id=1) #从数据库取出数据。
username = posModel.username
password = posModel.password
age = posModel.age
return HttpResponse('%s\n%s\n%s' %(username,password,age))
models.py:
from future import unicode-literals
from django.db import models

class PosModel(models.Model):
username = models.CharField(max_length=16,null=False) #定义了一个字段类型,名字叫username,最大长度为16,不能为空。
password = models.CharField(max_length=32,null=False)
age = models.IntegerField(null=True)
#还会默认创建一个名为id的字段
admin.py
from django.contrib import admin
from .models import PosModel
admin.site.register(PosModel) 后台.分区.注册(PosModel模型)

Review: 2018.11.17庞有鑫 灭火器表的创建

灭火器表 灭火器编号 灭火器种类 校区 教室 已使用年限 保质期时长 负责人编号
Fir Fno Ftype Floc Froom Fage Flim Uno
create table Fir
(
	Fno varchar(9) primary key,
	Ftype varchar(9) not null,
	Floc varchar(9) check(Floc in('东校区','新校区')),
	Froom varchar(9) not null,
	Fage int check(Fage>=0 and Fage<=5),
	Flim int check(Flim>=0 and Flim<=10),
	Uno varchar(9)
)

用户表 用户编号 用户名字 用户身份 用户工龄 用户上级
userr Uno Uname Uiden Uage Uboss
create table userr
(
	Uno varchar(9) primary key,
	Uname varchar(9) not null,
	Uiden varchar(9) check(Uiden in('0','1','2')),
	Uage int check(Uage>18 and Uage<61),
	Uboss varchar(9)
)

申请表 表号 表名 申请人编号 状态 负责人 申请日期 操作 灭火器编号
app Ano Aname Uno Asta Ares Adate Aop Fno
create table app
(
	Ano varchar(9) primary key,
	Aname varchar(9) not null,
	Uno varchar(9) not null,
	Asta varchar(9) check(Asta in('0','1')),
	Ares varchar(9) not null,
	Adate date not null,
	Aop varchar(9) check(Aop in('更换','购买','换位','其他')),
	Fno varchar(9)
)

Review-2018年11月05日-王艺琳

-1

本周学习内容

一、完成数据库实验
二、学习数据库相关基础概念

  1. 事务日志:对数据库的更改首先写入到事务日志中,然后在后面的某个时间点上,数据库发出检查点,将日志中的更改传到实际的数据库文件。
  2. 索引:索引是仅在特定表或视图架构内存在的对象,作用类似于书的目录,包括群集索引和非群集索引。
  3. 触发器:触发器是在表操作时自动执行的一段逻辑代码,主要用于在输入时复制数据或更新时检查数据,确保数据满足标准
  4. 视图:在 SQL 中,视图是基于 SQL 语句的结果集的可视化的表。也就是虚拟的表,可以用来过滤并显示查询的结果,而不改变表的结构。

下周计划

  1. 修改并完善ER图
  2. 继续学习SQL server 软件的相关操作
  3. 了解前端实现的工具

Review-2018.11.11-王艺琳

##数据库课程设计
###选题:第一题和第三题基本表的创建
第一题
要求:
员工的基本信息表:编号、姓名、性别、照片、民族、生日、政治面貌、文化程度、婚姻状况、籍贯、身份证号、手机号码、档案存放地、户口所在地等个人基本信息,以及相关工作信息——工作证号、入职日期、工作岗位、职务、上级员工编号、员工状态(1-在职,2-兼职,3-试用,4-离职,5-返聘,6-退休)、所在部门编号等;
部门表:部门编号、部门名称、部门职能编号、上级部门编号等;
用户信息表:用户名、密码、用户类型(1-系统管理员,2-普通用户);

创建基本表:

CREATE TABLE dept(
deptno char(3) primary key,
dname varchar(8),unique
djobno char(3),
dmanage char(3)
)
CREATE TABLE staff(
sno char(8) primary key ,
sname varchar(10),
ssex char(2),// check(ssex=’男’or ssex=’女’)
sphoto image,
snation varchar(4),
sbrith date,
spolitic varchar(8),
sedu varchar(6),
smar char(4),
splace varchar(20),
sidno char(18),
sphone char(11),
sdocu varchar(20),
sloc varchar(30),
sworkid char(8),
sworkdate  date,
spost  varchar(20),
sjob varchar(20),
smanage char(8),
sstate char(1),
deptno char(3) references dept(deptno),
foreign key(deptno)references dept(deptno) on delete cascade
)
CREATE TABLE userinfo(
uname varchar(8) primary key,
upassword varchar(8) not null,
urank char(1) not null,
sno char(8)references staff(sno)
)

第三题
要求:
员工的基本信息表:编号、姓名、上级员工编号、所在部门编号等;
加班信息表:加班日期、员工编号、加班类型编号(01-工作日加班,02-周末加班,03-节假日加班)、加班开始时间、加班结束时间、加班累计时间、加班工作描述、确认标志、确认人等;

创建基本表:

CREATE TABLE work(
wrecord int primary key,
wdate date,
sno varchar(8)references staff(sno),
wtype char(3),
wstime time,
wetime time,
wtime time,
wdesc varchar(20),
wsymbol char(1),
wcheck varchar(10)

)

CREATE TABLE staff(
sno char(8) primary key ,
sname varchar(10),
smanage char(8),
deptno char(3)
)

Review-2018.11.12-范文帝

图书管理系统

create database Library

use Library

create table Books(
  bno char(50) primary key,
  bname narchar(50),
  bauther nvarchar(50),
  bpublisher nvarchar(50),
  bsummary nvarchar(50),
  bprice float
)

create table Readers(
  rno nvarchar(50) primary key ,
  rname nvarchar(50),
  jno nvarchar(50)
)

create table Records(
  rno char(50) not null,
  bno nvarchar(50) not null,
  bname nvarchar(50) not null,
  start datetime not null,
  end datetime not null,
  foreign key(bno) references Books(bno) on delete cascade ,
  foreign key(rno) references Books(rno) on delete cascade
)

Review - 2018.12.21-周雅婷

本周工作:

BS结构灭火器系统开发
1.按照任务要求,完成了对应的前端页面
2.实现了该页面上对数据表的显示与操作
3.需要对不同权限的人员显示不同的页面内容,所以之后对该页面拓展编写了不同的显示与功能效果

Review: 2018.11.14洪颐鼎

建立基本表
灭火器表(编号,类型,状态,生产日期,更新日期,分配日期)
用户信息表(用户类型,用户ID,用户权限)
申请表(申请日期,申请状态,申请用户ID,申请灭火器编号)
qq 20181114182132

1

Review-2018..11.21 朱迪迪

本周学习内容
1.case when then 嵌套用法
2.oracle分组排序取最值
3.遍历树结构数据
select
inv.fileid fileID,
inv.pri_inv_no priInvoiceNo,
inv.inv_no invoiceNo,
inv.inv_dt invDt,
inv.act_frt_hire invoiceAmount,
case
when inv.inv_typ='FREIGHT' then '运费'
when inv.inv_typ='HIRE' then '租金'
when inv.inv_typ='DEMURRAGE' then '滞期费'
when inv.inv_typ='DESPATCH' then '速遣费'
when inv.inv_typ='OTHER' then '杂费'
else ''
end invType,
case
when inv.inv_status='N' then '正常'
when inv.inv_status='A' then '废弃'
else ''
end invStatus
from sh_invoice inv
start with inv_no =(select invoiceno from v_sh_cml_incomemanage where fileid='8ae47aa15a93d392015ac5d173b11a52')
connect by NOCYCLE prior pri_inv_no = inv_no
order by inv.inv_dt desc

下周任务
数据库的设计

Review-2018.11.11-王鑫

数据库选题

图书管理系统

  • 内容

建立基本表:
图书(书号,书名,作者,价格,出版社,摘要)
读者(卡号,姓名,性别,单位,类型,级别)
借阅(书号,书名,卡号,借书时间,还书时间)
(为方便用户操作可考虑建立一个单位至单位编号表)

  • ��代码
create database Library

use Library

create table Books(
  bno nvarchar(255) primary key,
  bname nvarchar(255) not null ,
  auther nvarchar(255),
  publisher nvarchar(255),
  price float,
  summary nvarchar(255)
)

create table Readers(
  rno nvarchar(255) primary key ,
  rname nvarchar(255),
  sex nvarchar(20),
  type nvarchar(20),
  rating int not null,
  jno nvarchar(255)
)

create table Jobs(
  jno nvarchar(255) primary key ,
  jname nvarchar(255) not null ,
)

create table Records(
  rno nvarchar(255) not null,
  bno nvarchar(255) not null,
  bname nvarchar(255) not null,
  start datetime not null,
  end datetime not null,
  foreign key(bno) references Books(bno) on delete cascade ,
  foreign key(rno) references Books(rno) on delete cascade
)

###� 零件交易中心管理系统

  • 内容

� 零件信息(零件编号,颜色,零件名,重量,简介)
供应商信息(供应商编号,供应商名,地址,联系电话,简介)
顾客信息(顾客编号,顾客姓名,地址,联系电话)
供应信息(供应商和零件之间的联系)(零件编号,供应商编号,价格,数量)
求购信息(顾客和零件之间的联系)(顾客编号,零件编号,价格,数量)
交易(顾客编号,供应商编号,零件编号,价格,数量)

  • 代码�
create database PART
use PART

create table P(
  pno nvarchar(255) primary key ,
  color nvarchar(20) not null,
  pname nvarchar(255)not null,
  weight float not null,
  summary nvarchar(255)
)

create table S(
  sno nvarchar(255) primary key ,
  sname nvarchar(255) not null,
  saddr nvarchar(255) not null,
  snum nvarchar(20) not null,
  summary nvarchar(255)
)


create table C(
  cno nvarchar(255) primary key ,
  cname nvarchar(255) not null,
  caddr nvarchar(255) not null,
  cnum nvarchar(20) not null
)

create table provide(
  id nvarchar(255) primary key,
  pno nvarchar(255) not null,
  sno nvarchar(255) not null,
  price float not null,
  qty int not null,
  foreign key (pno) references P(pno),
  foreign key (sno) references S(sno)
)

create table buy(
  id nvarchar(255) primary key ,
  pno nvarchar(255) not null,
  cno nvarchar(255) not null,
  price float not null,
  qty int not null,
  foreign key (pno) references P(pno),
  foreign key (cno) references C(cno)
)

create table trade(
  id nvarchar(255) primary key ,
  cno nvarchar(255) not null,
  sno nvarchar(255) not null,
  pno nvarchar(255) not null,
  price float not null,
  qty int not null,
  foreign key (cno) references C(cno),
  foreign key (sno) references S(sno),
  foreign key (pno) references P(pno)
)

create table negotiate(
  id nvarchar(255) primary key ,
  cno nvarchar(255) not null,
  sno nvarchar(255) not null,
  pno nvarchar(255) not null,
  price float not null,
  qty int not null,
  spath nvarchar(255) not null,
  cpath nvarchar(255) not null,
  foreign key (cno) references C(cno),
  foreign key (sno) references S(sno),
  foreign key (pno) references P(pno)
)

Review: 2018.11.21庞有鑫

SQL SERVER 环境相关操作

学习内容

登录

SSMS中SQL操作

创建数据库

创建表

{

CREATE DATABASE <数据库名>

ON [PRIMARY]   ①   ②

(

--创建数据文件参数信息

[NAME=逻辑文件名,]   ③

FILENAME=物理文件名,   ④

[SIZE=数据库大小,]   ⑤

[MAXSIZE=最大容量,]   ⑥

[FILEGROWTH=增长量]   ⑦

…

)

[LOG ON]⑧

(

--创建日志文件参数信息

[NAME=逻辑文件名,]

FILENAME=物理文件名,

[SIZE=数据库大小,]

[MAXSIZE=最大容量,]

[FILEGROWTH=增长量]

…

)

}

修改表

输入数据

使用sql语句添加表约束

{

/**添加约束方式一:一条SQL添加一个约束**/

--添加主键约束,设置StuID列为Infos表的主键

ALTER TABLE Infos

ADD CONSTRAINT PK_Infos_StuID

PRIMARY KEY(StuID)

--添加检查约束, Gender列中的值只能为‘男’或者‘女’

ALTER TABLE Infos

ADD CONSTRAINT CK_Infos_Gender

CHECK(Gender = ‘男’ or Gender = ‘女’) 

--添加默认约束,StuAddress如果不填,默认为‘地址不详’

ALTER TABLE Infos

ADD CONSTRAINT DF_Infos_StuAddress

DEFAULT(‘地址不详’) FOR StuAddress,

--添加唯一约束,StuName不可以重复

ALTER TABLE Infos

ADD CONSTRAINT UQ_Infos_StuName

UNIQUE(StuName)

}

常用函数

字符串函数

CHARINDEX

用于在指定的字符串中查找另一个指定的字符串首次出现的位置(从1开始),并可以同时指定起始的搜索位置(从1开始)。

遍历树结构数据

{

select
inv.inv_no,inv.pri_inv_no,
(select distinct inv_no
from sh_invoice
where pri_inv_no is null
start with inv_no = inv.inv_no
connect by NOCYCLE prior pri_inv_no = inv_no) firstInvNo
from sh_invoice inv
where inv.pri_inv_no is not null
and inv.inv_status='N'

}

Review: 2018.12.12 范文帝

  1. 根据需求完成前端页面
  2. 为不同的用户类型展示不同的可见表
  3. 不同的用户对可见表的操作权限有所不同

Review: 2018.11.28 庞有鑫

数据库设计大概思路

需求分析

学校内部对灭火器的管理系统,包括使用情况,责任人,本身属性等内容

概念结构设计

对灭火器的管理分为三大部分 保卫处人员 二级学院负责人 灭火器责任人

逻辑结构设计

设计三层负责人之间的联系,对灭火器操作的管理以及内部联系

物理结构设计

大概设计具体每个表的内容,以及每个表之间的联系

数据库的实施

进行具体的各种前端操作,发现可能存在的问题

数据库的运行和维护

对可能产生的bug进行处理,解决可能产生的问题

数据库设计的具体实施

对目前的情况进行大概的分析,并根据实际情况来设计数据库的简易模型

其中考虑了数据库的完整性 避免使用触发器 保存常用信息 测试、测试、反复测试

Review: 2018.11.17 庞有鑫

from django.db import models
import time

Create your models here.

class Department(models.Model):
id = models.CharField(max_length=20, primary_key=True, default='')
name = models.CharField(null=True, max_length=20)

def __str__(self):
    return self.id

class Purchase(models.Model):
id = models.CharField(max_length=20, primary_key=True, default='')
count = models.IntegerField(null=True)
single_price = models.FloatField(null=True)
total_price = models.FloatField(null=True)
state = models.IntegerField(null=True, default='0')
create_time = models.DateField(null=True, auto_now_add=True)

def __str__(self):
    return self.id

class User(models.Model):
id = models.CharField(max_length=20, primary_key=True, default='')
password = models.CharField(null=True, max_length=50, default='')
username = models.CharField(null=True, max_length=20)
age = models.IntegerField(null=True, blank=True)
state = models.IntegerField(null=True, blank=False, default='0')
identity = models.IntegerField(null=True, blank=False, default='0')

department = models.ForeignKey(Department, to_field='id', on_delete=models.CASCADE, null=True, blank=True)

def __str__(self):
    return self.id

class Room(models.Model):
id = models.CharField(max_length=20, primary_key=True, default='')
count = models.IntegerField(null=True)
pos = models.TextField(null=True)

user = models.ForeignKey(User, to_field='id', on_delete=models.CASCADE, null=True, blank=True)

def __str__(self):
    return self.id

class fire_extinguisher(models.Model):
id = models.CharField(max_length=20, primary_key=True, default='');
state = models.IntegerField(default='2', null=True)
keep_time = models.IntegerField(null=True) ##以天计算
create_time = models.DateTimeField(auto_now=True, null=True)
description = models.TextField(blank=True, null=True)
kind = models.IntegerField(null=True, blank=False, default='0')

purchase = models.ForeignKey(Purchase, to_field='id', on_delete=models.CASCADE, null=True, blank=True)
room = models.ForeignKey(Room, to_field='id', on_delete=models.CASCADE, null=True, blank=True)

def __str__(self):
    return self.id

class Application(models.Model):
id = models.CharField(max_length=20, primary_key=True, default='')
create_time = models.DateField(null=True, auto_now_add=True)
state = models.IntegerField(null=True, default='0')
uid = models.CharField(null=True, max_length=20)
kind = models.IntegerField(null=True, default='0')
text = models.TextField(null=True, default='')

room = models.ForeignKey(Room, to_field='id', on_delete=models.CASCADE, null=True, blank=True)

def __str__(self):
    return self.id

Review:2018.11.28王鑫

数据库设计
本周
user
(
num 工号
pw 密码
name 姓名
state 状态
identity 权限
phonenumber 电话
email 电子邮箱
)
room
(
num 房间号
count 灭火器数量
pos 位置
user foreign_key(user) 管理员
)

fire_extinguisher
(
state 状态
keep_time 保质期截止日期
kind 种类
price 价格

room foreign_key(room) 所在房间

)
下周
学习Django对数据库的操作

Review: 2018.11.21张云皓

用SQL server 实现一些非业务逻辑的功能:分页,数据过滤。
分页:输入页码(pageIndex),每页显示的记录数(pageSize)
数据过滤: 过滤结果集,并且有类似AND和OR的运算功能

Review: 2018.12.05 周雅婷

本周工作

学习使用django操作数据库
1.配置python环境
2.学习使用django操作数据库以及简单的前端页面的编写
3.依照周报上的学习教程进行了学习,按照慕课上的课程,实现了一个简单的BS结构的新闻网站

下周工作:

开发最终小组项目

Review: 2018.12.12张云皓

1.为不同的用户类型展示不同的可见表
2.不同的用户对可见表的操作权限有所不同

Review: 2018.12.05 王艺琳

##使用Django操作数据库
###创建表
打开blog目录下的models.py文件,这是我们定义blog数据结构的地方。打开mysite/blog/models.py 文件进行修改:

from django.db import models
class UserInfo(models.Model):
    username = models.CharField(max_length=32)
    password = models.CharField(max_length=32)
    age = models.IntegerField()

执行命令后会在数据库创建一张数据表,Django默认会以APP名为数据表前缀,以类名为数据表名!

###添加数据
Django是在views.py文件中,通过导入models.py文件来创建数据的:

from django.shortcuts import render
from blog import models       #导入blog模块
from django.shortcuts import HttpResponse
def db_handle(request):
    models.UserInfo.objects.create(username='andy',password='123456',age=33)
    return HttpResponse('OK')

然后再url中进行配置即可访问

Review: 2018.11.21洪颐鼎

用SQL server 实现一些非业务逻辑的功能:分页,数据过滤。
分页:输入页码(pageIndex),每页显示的记录数(pageSize)
数据过滤: 过滤结果集,并且有类似AND和OR的运算功能

Review: 2018.12.05 范文帝

from django.http inport HttpResponse
from models import PosModel

def index(request):
    posModel = PosModel(username='',password='',age='')
    posModel.save()        #写入数据库
    posModel = PosModel.object.get(id=1)      #从数据库取出数据。
    username = posModel.username
    password = posModel.password
    age = posModel.age
    return HttpResponse('%s\n%s\n%s' %(username,password,age))

models.py

from _future_ import unicode-literals
from django.db import models

class PosModel(models.Model):
    username = models.CharField(max_length=16,null=False)     #定义了一个字段类型,名字叫username,最大长度为16,不能为空。
    password = models.CharField(max_length=32,null=False)
    age = models.IntegerField(null=True)
    #还会默认创建一个名为id的字段

admin.py

from django.contrib import admin
    from .models import PosModel
    admin.site.register(PosModel)     #后台.分区.注册(PosModel模型)

Review: 2018.12.05 朱迪迪

本周学习:
对数据进行增删改查

models.UserInfo.objects.all()
models.UserInfo.objects.all().values('user') #只取user列
models.UserInfo.objects.all().values_list('id','user') #取出id和user列,并生成一个列表
models.UserInfo.objects.get(id=1)
models.UserInfo.objects.get(user='yangmv')

models.UserInfo.objects.create(user='yangmv',pwd='123456')
或者
obj = models.UserInfo(user='yangmv',pwd='123456')
obj.save()
或者
dic = {'user':'yangmv','pwd':'123456'}
models.UserInfo.objects.create(**dic)

models.UserInfo.objects.filter(user='yangmv').delete()

models.UserInfo.objects.filter(user='yangmv').update(pwd='520')
或者
obj = models.UserInfo.objects.get(user='yangmv')
obj.pwd = '520'
obj.save()

下周任务:
BS结构灭火器系统开发

Review: 2018.11.21 周雅婷

本周工作:

SQLServer语言的学习与环境使用
1.自学了Sqlsvrver环境的高级使用:如如何使用SQLserver删除数据库,恢复数据库,备份数据库
2.学习并可以熟练使用sqlserver进行表的创建,主外键以及约束条件的添加,以及数据的增删改查

下周工作:

学习如何设计数据库

Review: 2018.11.28 朱迪迪

本周学习:
数据库的设计
A、系统需求分析阶段
B、概念结构设计阶段
C、逻辑结构设计阶段
D、物理结构设计阶段
E、数据库实施阶段
F、数据库运行与维护阶段

下周任务
django操作数据库

Review-2018.11.11-庞有鑫

题目

20.毕业设计管理系统


基础内容

  1. 题目表(题目编号,题目名称,题目类型,课题来源,指导教师,内容简介,专业要求,学生要求)
  2. 指导教师信息表(教师号,姓名,性别,出生日期,学历,职称,研究方向,电话,邮箱)
  3. 学生信息表(学号,姓名,性别,专业,班级,电话,邮箱,备注)
  4. 选题表(题目编号,题目名称,学号,姓名,性别,专业,审核)
  5. 毕业设计进程表(任务书,文献综述,开题报告,原文翻译,中期检查,论文评审,导师意见,论文答辩)
  6. 用户表(用户号,用户名,密码,用户类别)

主要功能

  1. 登录功能
    系统有五类用户:教师、学生、管理员、系统管理员
  2. 论文题目管理
    要求:论文题目申报,系主任审批,汇总发布
  3. 选题管理
    要求:学生选题,教师认可,系主任审批,选题结果发布
  4. 进程管理
    要求:任务书下达,文献综述提交,开题报告提交及确认,原文翻译提交,中期报告提交及中期检查,论文提交,导师评阅,同行评阅,论文答辩
  5. 用户管理
    要求:用户信息查询,用户注册,用户信息维护,用户权限修改
  6. 系统维护

设计**

核心想法

  • 按用户类型来实现功能

具体想法

学生

职能
  • 对自己的信息进行增删查改
具体工作
  1. 提交选题申请
  2. 文献综述提交
  3. 开题报告提交
  4. 开题报告确认
  5. 原文翻译提交
  6. 中期报告提交
  7. 论文提交
  8. 同行评阅
  9. 论文答辩
  10. 用户注册

老师

职能
  • 对自己的信息进行增删查改 对学生的信息增删查改
具体工作
  1. 老师初步论文题目审核
  2. 系主任进一步论文题目审核
  3. 选题结果发布
  4. 评阅中期审核
  5. 对学生进行答辩
  6. 用户注册
  7. 各项学生报告的审核

管理员

职能
  • 对老师,学生的信息进行增删查改
具体工作
  1. 用户信息维护
  2. 对老师,学生的变动而更改信息
  3. 学生,老师信息查询

系统管理员

职能
  • 最高权限,对所有人员的信息进行增删查改
具体工作
  1. 用户权限修改
  2. 用户信息维护
题目表 题目编号 题目名称 题目类型 课题来源 指导教师 内容简介 专业要求 学生要求
Til Tno Tname Ttype Tsou Ttea Tcon Tmaj Tstu
指导教师信息表 教师号 姓名 性别 出生日期 学历 职称 研究方向 电话 邮箱
Men Mno Mname Mgen Mbir Medu Mrank Mdir Mtel Mmail
学生信息表 学号 姓名 性别 专业 班级 电话 邮箱 备注
Stu Sno Sname Sgen Smaj Sclass Stel Smail Snote
选题表 题目编号 题目名称 学号 姓名 性别 专业 审核
ST Tno Tname Sno Sname Sgen Smaj Exa
毕业设计进程表 任务书 文献综述 开题报告 原文翻译 中期检查 论文评审 导师意见 论文答辩
Pro Pplan Plit Psta Ptra Pmid Pche Popi Pplea

{

--创建数据库
--create database Graduation

use Graduation

--题目表(题目编号,题目名称,题目类型,课题来源,指导教师,内容简介,专业要求,学生要求)
--Til    (  Tno,      Tname,    Ttype,    Tsou,     Ttea,     Tcon,     Tmaj,     Tstu  )

create table Til
(
	Tno varchar(20) primary key,
	Tname varchar(20),
	Ttype varchar(20),
	Tsou varchar(20),
	Ttea varchar(20),
	Tcon varchar(20),
	Tmaj varchar(20),
	Tstu varchar(20)
)

--指导教师信息表(教师号,姓名,性别,出生日期,学历,职称,研究方向,电话,邮箱)
--   Men         (  Mno,  Mname, Mgen   ,Mbir,  Medu, Mrank,  Mdir   ,Mtel, Mmail)

create table Men
(
	Mno varchar(20) primary key,
	Mname varchar(20),
	Mgen varchar(20),
	Mbir date,
	Medu varchar(20),
	Mrank varchar(20),
	Mdir varchar(20),
	Mtel varchar(20),
	Mmail varchar(20)
)

--学生信息表(学号,姓名,性别,专业,班级,电话,邮箱,备注)
--  Stu      (Sno, Sname, Sgen, Smaj, Sclass, Stel, Smail, Snote)
create table Stu
(
	Sno varchar(20) primary key,
	Sname varchar(20),
	Sgen varchar(20),
	Smaj varchar(20),
	Sclass varchar(20),
	Stel varchar(20),
	Smail varchar(20),
	Snote varchar(20)
)

--选题表(题目编号,题目名称,学号,姓名,性别,专业,审核)
--  ST   (   Tno,    Tname,   Sno,  Sname, Sgen, Smaj, Exa)
create table ST
(
	Tno varchar(20),
	Tname varchar(20),
	Sno varchar(20),
	Sname varchar(20),
	Sgen varchar(20),
	Smaj varchar(20),
	Exa varchar(20)
)

--毕业设计进程表(任务书,文献综述,开题报告,原文翻译,中期检查,论文评审,导师意见,论文答辩)
--Pro(Pplan,Plit,Psta,Ptra,Pmid,Pche,Popi,Pplea)
create table Pro
(
	Pplan varchar(20) primary key,
	Plit varchar(20),
	Psta varchar(20),
	Ptra varchar(20),
	Pmid varchar(20),
	Pche varchar(20),
	Popi varchar(20),
	Pplea varchar(20)
)

}

Review: 2018.12.05张云皓

view.py:
from django.http inport HttpResponse
from models import PosModel

def index(request):
posModel = PosModel(username='',password='',age='')
posModel.save() #写入数据库
posModel = PosModel.object.get(id=1) #从数据库取出数据。
username = posModel.username
password = posModel.password
age = posModel.age
return HttpResponse('%s\n%s\n%s' %(username,password,age))
models.py:
from future import unicode-literals
from django.db import models

class PosModel(models.Model):
username = models.CharField(max_length=16,null=False) #定义了一个字段类型,名字叫username,最大长度为16,不能为空。
password = models.CharField(max_length=32,null=False)
age = models.IntegerField(null=True)
#还会默认创建一个名为id的字段
admin.py
from django.contrib import admin
from .models import PosModel
admin.site.register(PosModel) #后台.分区.注册(PosModel模型)

Review: 2018.11.21王鑫

sql_server 环境的高级用法
本周
1.学习sql_server的高级应:创建,删除,恢复数据库
2.学习使用sql的终端native工具对数据库进行操坐
下周
完成数据库的基本设计

Review: 2018.11.21范文帝

用SQL server 实现一些非业务逻辑的功能:分页,数据过滤。
分页:输入页码(pageIndex),每页显示的记录数(pageSize)
数据过滤: 过滤结果集,并且有类似AND和OR的运算功能

Review: 2018/11/12 张云皓

  1. 建立基本表:
    供货商(供货商号,供货商名,类别,地址,法人代表,联系人,联系电话,传真,E-mail,备注)
    商品(商品号,条形码,商品名称,型号,规格,类别,计量单位,商品形态,商品描述(照片),商品用途,产地,备注)
    订货单(订单号,供货商号,订货种类,订货金额,订货日期,到货日期,订货人)
    订货明细(流水号,订单号,商品号,数量,单价,金额)
    入库单(入库单号,订单号,商品号,数量,进价,金额,入库经手人,送货人,生产日期,入库日期,有效期,货位)
    库存商品(商品号,入库单号,货位,库存数量,进价,销价,入库时间,生产日期,有效期,标志,备注)
    销售单(销售单号,收银员工号,收银机号,数量合计,金额合计,会员卡号,折扣,实收金额,销售时间)
    销售明细(销售单号,商品号,数量,单价,金额)
    退货单(退货单号,销售单号,商品号,数量,单价,退货原因,退货金额,退货日期,经手人)
    会员(会员卡号,会员姓名,性别,出生年月,联系地址,联系电话,职业,身份证号,入会时间)
  2. 要求实现以下功能:
    (1)进货管理(基本表)
    要求:供应商管理,订货单管理,入库管理
    (2)销售管理(基本表)
    要求:调价管理,销售处理,会员管理
    (3)库存管理(??)
    要求:盘存管理,溢损管理
    (4)系统管理(设计中)
    要求:用户管理,权限管理,数据维护
create table Supplier (
	Spno char(20) primary key,
	Spname char(40) unique,
	Sadd char(100) , 
	Scopt char(20) ,
	Sconple char(20),
	Stel char(11),
	Semail char(40),
);
--商品

create table Item(
	Itno char(50) primary key,
	ItKey char(50) unique,
	ItName char(40),
	ItType char(20),
)
--进货订单

create table OrderList (
	OrderID char(50) primary key,
	Spno char(20),
	ItType char(20),
	Value int,
	OrderDate Date,
	InDate Date,
	OrderP char(20),
	foreign key(Spno) references Supplier(Spno),
)
--订单明细
create table OrderItem(
	FlowKey char(50) primary key,
	OrderID char(50) ,
	Itno char(50) ,
	Cost int,
	TotalCost int,
	Quantity int,
	foreign key(OrderID) references OrderList(OrderID),
	foreign key(Itno) references Item(Itno)
)
--销售单
create table SaleList(
	SaleID char(50) primary key,
	Person char(20) ,
	MacID char(10) unique,
	CntQty int,
	CntValue int,
	SaleDate date,
	SaleTime time,
)
--销售明细
create table SaleItem (
	FlowKey char(50) primary key,
	SaleID char(50) ,
	Itno char(50),
	SigCost int ,
	Quantity int,
	CntCost int,
	foreign key(Itno) references Item(Itno),
	foreign key(SaleID) references SaleList(SaleID)
)
--会员
create table Member(
	MID char(30) primary key,
	Mname char(20),
--	gender m,f
	Brithday Date,
	Tel char(11),
	CardID char(18),
	inDate Date, 
)```

Review: 2018.11.11 朱迪迪

上周学习总结

  • 熟悉课设题目并完成数据库的构建

  • 了解了一种网站开发模板

上周作业

实践内容6 员工工资管理系统
建立一个员工工资管理系统, 编写应用程序完成系统开发。
员工的基本信息表:编号、姓名、上级员工编号、所在部门编号等;
考勤表:年份、月份、员工编号、所在部门编号、迟到天数、早退天数、请假累计天数、加班累计小时;
工资表:年份、月份、员工编号、所在部门编号、基本工资、住房补贴、应发金额、应扣金额、实发金额;

DROP TABLE if exists staff
CREATE TABLE staff
(
sno varchar(20) primary key,
sname varchar(20),
super_eno varchar(20),
dno varchar(20)
)
DROP TABLE if exists attendance
CREATE TABLE attendance
(
year tinyint,
month tinyint,
sno varchar(20),
dno varchar(20),
late_days tinyint,
early_days tinyint,
leave_days tinyint,
overtime_hours decimal,
primary key(year,month,sno)
)
DROP TABLE if exists salary
CREATE TABLE salary
(
year tinyint,
month tinyint,
sno varchar(20),
dno varchar(20),
basic_sal tinyint,
housing_subsidy tinyint,
due_amount tinyint,
deductible tinyint,
actual_amount tinyint,
primary key(year,month,sno)
)

8znk aiw0d30sj prxd6nl

实践内容13 学生选课系统
学生(学号,姓名,性别,年龄,系别)
课程(课程号,课程名,开课系,任课教师)
学习(学号,课程号,成绩)

drop table if exists student;
create table student
(
sno varchar(255) not null primary key,
sname varchar(255),
sage int,
sex varchar(255),
sdept varchar(255),
)
drop table if exists course
create table course
(
cno varchar(255) not null primary key,
cname varchar(255),
pcno varchar(255),
tno varchar(255)
)
drop table if exists study;
create table study
(
sno varchar(255) not null,
cno varchar(255) not null,
grade int,
primary key(sno, cno),
foreign key(cno) references course(cno),
foreign key(sno) references student(sno)
)

l 65yzz8ebn1myji5hl35

Review: 2018.11.28 周雅婷

本周工作:

学习设计数据库
1.了解学习了设计数据的步骤与**
2.从课设中挑选了两道数据库课设题目进行了设计
3.之后进阶学习了慕课上一个数据库设计的课程,并对设计的数据库进行了优化

下周工作:

学习使用django

Review-2018.12.05王鑫

django操作数据库
本周
Django对数据库做了封装,也就是说我们不在需要自己写嵌入式的sql语言。
Django将数据库封装成一个模块,每个张表对应一个类。省去了繁琐的步骤是开发变的更加简洁。
只需要在django的settings文件里面写入相应的数据库的配置即可,如
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',#mysql的对应的Django模块
'NAME': 'fire_exg',# 操作数据库名称
'USER': 'feadmin',# 数据库账号名
'PASSWORD':'12345678Aa',#数据库密码
'HOST': '',#不填默认是localhost
'PORT': '',#端口不填也是默认的
}
}
下周
构造整体的框架

Review: 2018.11.28 王艺琳

image
首先是需求分析,把数据抽象为数据来源,数据存储和数据输出。确定需求后进行概念结构设计,有自顶向下和逐步扩展和混合策略三种方法。我们主要使用的是ER图。然后是逻辑结构设计,这里会用到E-R图与关系模型转换。之后就是物理设计,数据库实施和运维了,在我们的项目中暂时涉及不到。

Review: 2018.11.17 王艺琳 灭火器表的创建

###代码

CREATE TABLE feinfo(
feno char(8)primary key,
festate char(4) CHECK (festate='正常' or festate='过期'),
checktime date,
)

CREATE TABLE empinfo(
eno char(8) primary key,
ename varchar(10),
ejob char(1) CHECK(ejob='1' or ejob='2' or ejob='3'),/*1为职工,2为保卫处人员,3为学院负责人*/
school char(4) CHECK(school='北区' or school='东区'),
building varchar(10),
room char(4),
feno char(8),
FOREIGN KEY (feno) REFERENCES feinfo(feno)
)

CREATE TABLE userinfo(
uaccount char(8),
upassword char(6),
urank char(1) CHECK(urank='0' or urank='1' or urank='2' or urank='3'),
uno char(8) references empinfo(eno),
primary key(uaccount,upassword)
)

CREATE TABLE appky(
atime date,
ano char(8) references empinfo(eno),
adetail varchar(40),
ares char(6) CHECK(ares='未审核' or ares='已通过' or ares='未通过'),
)

###效果
wc ioqyau6 a nm 3dlk c
###介绍
共有四张表
员工基本信息表:
工号(主),姓名,职位,校区,楼宇,房间号,灭火器号
灭火器基本信息:
灭火器号,灭火器状态,上一次检查时间
用户表:
账号,密码,级别,工号
申请:
申请时间,申请人,申请内容,处理结果

Review: 2018.12.06 庞有鑫

Django 对数据库的操作

背景:因python课设熟悉了对Django的基础操作

创建mysite工程项目

E:> django-admin.py startproject mysite

创建APP

E:>python manage.py startapp app

数据库操作

python 自带SQLite数据库,Django支持各种主流的数据库,我先用了SQLite练手

命令执行完成后,会生成一些数据表

接下来我使用已经创建的账号密码登录后台

默认使用的WEB地址为http://127.0.0.1,端口为8000,使用该地址与端口访问首页

接下来连接mysql数据库而不使用SQLite,安装pymysql模块

接下来便是对表的具体操作

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.