校车定位服务系统数据库初步设计(一)

2015-07-24 08:26:42 · 作者: · 浏览: 0

数据库和接口设计
1、 分析
设计了以下数据库模型。此次数据库采用较为简单的MS SQL,主要有五个表单,Tab_Station(汽车停靠站点),Tab_RegBus(班车时刻信息),Tab_Bus(汽车信息表),Tab_Admin(管理员信息),Tab_System(系统信息)。
2、 数据库基本表单
Tab_Station:
列名 数据类型 允许空 备注
StaID Int No 站点编号
StaName Varchar(25) 站点名
StaLati Float 经度
StaLongi Float 纬度

Tab_ReguBus
列名 数据类型 允许空 备注
RegID Int no 班车时刻编号
RegDocking Varchar(25) 停靠站
RegDrivInterval Varchar(50) 行车区间
RegPickUp Varchar(25) 上车地点
RegFirstTime Time 首发时间
RegDriveDirect Varchar(100) 行车路线
RegTeam Varchar(25) 所属车队

Tab_Bus
列名 数据类型 允许空 备注
BusID Int No 汽车编号
BusLati Float 经度
BusLongi Float 纬度
BusTime Time 时间
Property Varchar(100) 记录汽车属性(待定)

Tab_Admin
列名 数据类型 允许空 备注
AdmID Int No 管理员编号
AdmName Varchar(25) No 管理员姓名(账号)
AdmPWD Varchar(25) No 密码
LoginIP Varchar(25) 登陆IP
LoginLog Varchar(100) 操作日志
LogTime time 记录时间

Tab_System
列名 数据类型 允许空 备注
SysID int no 系统信息编号
LoginIP Varchar(25) 事件对应IP地址
SysTime Time 事件发生时间
SysLog Varchar(100) 系统操作
IsAdmin Int 是否为管理员
Property Varchar(25) 拓展

3、 SQL
?

Create database BD_DB
GO

use BD_DB
GO

create table Tab_Station
(StaID int identity(1,1) primary key not null,
StaName varchar(25),
StaLati float,
StaLongi float
);
GO

create table Tab_RegBus
(RegID int identity(1,1) primary key not null,
RegDocking varchar(25) not null,
RegDrivInterval varchar(25),
RegPickUp varchar(25),
RegFirstTime time,
RegDriveDirect varchar(100),
RegTeam varchar(25)
);
GO

create table Tab_Bus
(BusID int identity(1,1) primary key not null,
BusLati float,
BusLongi float,
BusTime time,
Property varchar(25)
);
GO

Create table Tab_Admin
(AdmID int identity(1,1) primary key not null,
AdmName varchar(25) not null,
AdmPWD varchar(25) not null,
LoginIP varchar(25),
LoginLog varchar(100),
LogTime time
);
GO

Create table Tab_System
(SysID int identity(1,1) primary key not null,
LoginIP varchar(25),
SysTime time,
SysLog varchar(100),
IsAdmin int,
property varchar(25)
);

PL/SQL

/站点信息查询/
?

create procedure sp_Select_Sta
@staid int
as
begin
select *
from Tab_Station
where @staid=staid
end
GO

/站点信息插入/
?

create procedure sp_Insert_Sta
@staname varchar(25),
@stalati float,
@stalongi float
as
begin
insert into Tab_Station(staname,stalati,stalongi) values (@staname,@stalati,@stalongi)
end
GO

/车辆时刻信息查询/
?

create procedure sp_Select_RegBus
@regid int
as
begin
select *
from Tab_RegBus
where @regid=Regid
end
GO

/车辆时刻信息插入/
?

create procedure sp_Insert_Reg
@RegDocking varchar(25),
@RegDrivInterval varchar(50),
@RegPickUp varchar(25),
@RegFirstTime time,
@RegDriveDirect varchar(100),
@RegTeam varchar(25)
as
begin
insert into Tab_ReguBus(RegDocking,RegDrivInterval,RegPickUp,RegFirstTime,RegDriveDirect,RegTeam) values (@RegDocking,@RegDrivInterval,@RegPickUp,@RegFirstTime,@RegDriveDirect,@RegTeam)
end
GO

/车辆信息查询/
?

create procedure sp_Select_Bus
@busid int
as
begin
select *
from Tab_Bus
where @busid=busid
end
GO

/车辆信息插入/
?

create procedure sp_Insert_Bus
@BusID Int,
@BusLati Float,
@BusLongi Float,
@BusTime Time,
@Property Varchar(100)
as
begin
insert into Tab_Bus(BusLati,BusLongi,BusTime,Property) values (@BusLati,@BusLongi,@BusTime,@Property)
end
GO

/管理员信息查询/
?

create procedure sp_Select_Admin
@admid int
as
begin
select *
from Tab_Admin
where @a