程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> 第一個成功的Hibernate實例(一)

第一個成功的Hibernate實例(一)

編輯:關於JAVA

一、創建數據庫(使用B)

A. 我的原數據庫設計

--create database for restruant management system
USE master
DROP DATABASE RMSDB
CREATE DATABASE RMSDB
GO
USE RMSDB
--create base tables
DROP TABLE Houses
CREATE TABLE Houses
(
HID int IDENTITY(1,1) PRIMARY KEY,
--房間編號
alias varchar(20),
--房間的別稱
description varchar(100),
--房間的描述
capity int NOT NULL
--房間的旅客容量
)
DROP TABLE Menus
CREATE TABLE Menus
(
MID int IDENTITY(1,1) PRIMARY KEY,
--菜單編號
mName varchar(20) NOT NULL,
--菜單名稱
price float NOT NULL
--菜單價格
)
DROP TABLE Tables
CREATE TABLE Tables
(
TID int IDENTITY(1,1) PRIMARY KEY,
tAlias varchar(20)
)
DROP TABLE Customers
CREATE TABLE Customers
(
CID char(20) PRIMARY KEY,
cName varchar(20),
cAddress varchar(40),
cPhone varchar(20)
)
DROP TABLE Staffs
CREATE TABLE Staffs
(
SID VARCHAR(6) PRIMARY KEY,
username VARCHAR(20) NOT NULL,
password VARCHAR(20) NOT NULL,
sName VARCHAR(20) NOT NULL,
address VARCHAR(40),
phone VARCHAR(20),
sPosition VARCHAR(20)
--position including manager or common staffs
)
DROP TABLE Notice
CREATE TABLE Notice
(
NID int IDENTITY(1,1) PRIMARY KEY,
title NCHAR(20) NOT NULL,
content NCHAR(200)
)
GO

B. 修改後的數據庫設計

注意:去掉了所有的IDENTITY(1,1),也就是在SQL Server上不讓鍵自動增長,而這一功能將在以後的Mapping中由Hibernate 實現,在 Hibernate 中有很多種主鍵的生成算法

--create database for restruant management system
USE master
DROP DATABASE RMSDB
CREATE DATABASE RMSDB
GO
USE RMSDB
--create base tables
DROP TABLE Houses
CREATE TABLE Houses
(
HID INT PRIMARY KEY,
--房間編號
alias VARCHAR(20),
--房間的別稱
description VARCHAR(100),
--房間的描述
capity INT NOT NULL
--房間的旅客容量
)
DROP TABLE Menus
CREATE TABLE Menus
(
MID INT PRIMARY KEY,
--菜單編號
mName VARCHAR(20) NOT NULL,
--菜單名稱
price FLOAT NOT NULL
--菜單價格
)
DROP TABLE Tables
CREATE TABLE Tables
(
TID INT PRIMARY KEY,
tAlias VARCHAR(20)
)
DROP TABLE Customers
CREATE TABLE Customers
(
CID VARCHAR(20) PRIMARY KEY,
cName VARCHAR(20),
cAddress VARCHAR(40),
cPhone VARCHAR(20)
)
DROP TABLE Staffs
CREATE TABLE Staffs
(
SID VARCHAR(6) PRIMARY KEY,
username VARCHAR(20) NOT NULL,
password VARCHAR(20) NOT NULL,
sName VARCHAR(20) NOT NULL,
address VARCHAR(40),
phone VARCHAR(20),
sPosition VARCHAR(20)
--position including manager or common staffs
)
DROP TABLE Notice
CREATE TABLE Notice
(
NID INT PRIMARY KEY,
title VARCHAR(20) NOT NULL,
content VARCHAR(200)
)
GO

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved