7.4.3 数据库关系图(1)
本系统数据库名称为HangZhouBus。数据库HangZhouBus中包含日志表(Action_Log)、景点属性表(AttributeSet)、公交车线路表(BUS)、电子地图站点表(Map_Station)、图层表(Species)、站点表(STATION)和用户表(USER)共7个表。下面提供系统运行时动态创建数据库的方法,数据库的名称为HangZhouBus,对应的SQL语句如下:
- IF EXISTS (SELECT name FROM sysdatabases WHERE name = ‘HangZhouBus’) /*存在数据库*/
- DROP DATABASE [HangZhouBus] /*删除数据库*/
- GO
- CREATE DATABASE [HangZhouBus] ON /*创建数据库*/
- (
- NAME = ' HangZhouBus_dat',
- FILENAME = 'C:\ HangZhouBus_dat.mdf' ,
- SIZE = 10,
- MAXSIZE = 100,
- FILEGROWTH = 10%
- )
- LOG ON /*设置日志文件属性*/
- (
- NAME = ' HangZhouBus_log',
- FILENAME = 'C:\ HangZhouBus.ldf' ,
- SIZE = 5,
- MAXSIZE = 25,
- FILEGROWTH = 5
- )
下面分别对数据库中的各个表进行介绍。
日志表(Action_Log):用来记录用户的操作信息,其主要字段为USER_ID,其各字段的详细信息如表7-2所示。
表7-2 日志表(Action_Log)
|
字段名称< xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> |
数据类型 |
字段大小 |
可否为空 |
说明 |
|
USER_ID |
varchar |
20 |
Not Null |
主键,用户ID |
|
ACTION |
varchar |
20 |
Not Null |
操作 |
|
COME_LEAVE_TIME |
varchar |
20 |
Not Null |
时间 |
建立该表的SQL语句如下:
- CREATE TABLE Action_Log ( /*创建数据表*/
- USER_ID varchar (20) NOT NULL , /*用户ID */
- ACTION varchar (20) NOT NULL , /*操作*/
- COME_LEAVE_TIME varchar (20) NOT NULL, /*时间*/
- )
- GO
景点属性表(AttributeSet):用来记录景点属性的信息,其主要字段为NAME,其各字段的详细信息如表7-3所示。
表7-3 景点属性表(AttributeSet)
|
字段名称 |
数据类型 |
字段大小 |
可否为空 |
说明 |
|
NAME |
varchar |
20 |
Not Null |
主键,景点名 |
|
ATTRIBUTE |
varchar |
200 |
Ok |
属性 |
|
ISPICTURE |
Int |
4 |
Not Null |
是否有照片 |
|
PICTURE_NAME |
varchar |
20 |
Ok |
照片名称 |
建立该表的SQL语句如下:
- CREATE TABLE AttributeSet ( /*创建数据表*/
- NAME varchar (20) NOT NULL , /*景点名*/
- ATTRIBUTE varchar (200) , /*属性*/
- ISPICTURE int NOT NULL, /*是否有照片*/
- PICTURE_NAME varchar (20) /*照片名称*/
- )
- GO