當前位置:首頁 » 操作系統 » 旅遊業資料庫

旅遊業資料庫

發布時間: 2023-08-18 10:14:46

Ⅰ 做簡單旅遊網站,資料庫需要哪些表,欄位 只需要將行程線路添加到資料庫 可以查看就行的

這個問題不能問別人的,關鍵是看你要保存哪些數據,要保存哪些數據要看你有哪些功能。所以當你增加功能時,有時要更改資料庫的設計。
因為你有用戶管理,肯定有一個用戶表,常見欄位為: ID,用戶名,密碼,許可權或級別,如果你要存放用戶最近最登錄時間,哪就要最後登錄時間欄位。
肯定要有線路表,因為不同的線路,節點多少不一樣,所以要設線路ID,線路名2個欄位。
再弄個線路站點表:ID,線路ID,站點名稱,序號。這樣根據線路ID可以把各站點按順序查詢出來。
你先搞清楚自己有哪些功能,要保存哪些數據全部列出來。

Ⅱ 旅遊業如何利用大數據

旅遊業如何利用大數據
「不是隨機樣本,而是全體數據;不是精確性,而是混雜性;不是因果關系,而是相關關系。」如今,從矽谷到中關村,「大數據」是一個熱門話題,一個大規模生產、分享和應用數據的時代正在開啟。在這一背景下,包括旅遊業在內的以終端消費者作為服務目標市場的行業,迎來了新的發展機遇。
「大數據」時代到來了
「大數據」被視為雲計算之後的又一科技熱點。對於「大數據」,目前還沒有比較准確的定義,但是一般認為「大數據」就是指無法用現有的軟體工具提取、存儲、搜索、共享、分析和處理的海量的、復雜的數據集合。
隨著信息技術尤其是互聯網的發展,人們生產數據的能力越來越強。寬頻普及帶來的巨量日誌和通訊記錄,社交網路每天不斷更新的個人信息,非傳統IT設備產生的數據信息,以及持續增加的各種智能終端產生的圖片及信息,這些爆炸性增長的數據充斥整個網路。
中國旅遊研究院政策所副研究員唐曉雲說,除了數據量大之外,「大數據」不同於傳統數據地方更在於即時性、非結構化。這就使得傳統數據處理部門無法進行傳統意義上的存儲、管理和分析。
難道這些數據真的一文不值的嗎?不。人們發現通過一定的方法,可以在這些紛繁復雜的數據中發現價值。
首都經濟貿易大學旅遊管理系副教授李雲鵬說,「大數據」之大,並不僅僅在於其容量之大,更多的意義在於,人類可以「分析和使用」的數據在大量增加,通過這些數據集的交換、整合和分析,人類可以發現新的知識,創造新的價值,知識的邊界在不斷延伸。
前景廣闊超越傳統
提到「大數據」在旅遊行業的應用,不得不提到一家名為Hopper的旅遊網站。據了解,Hopper通過「大數據」技術的應用,為遊客提供最佳的旅遊景點推薦。截至目前,Hopper聲稱自己已經抓取了「超過5億頁旅遊數據」,而這一數字有望在今年年底達到10億。各大旅遊公司均已在「大數據」應用領域開始了一定的嘗試。
隨著「大數據」的應用熱潮,國內旅遊行業也開始重視「大數據」的應用。記者在采訪旅遊企業、旅遊研究機構、旅遊管理部門的過程中,也發現不少人已經開始關注、研究和應用「大數據」了。
「智游啦」是一家基於「大數據」挖掘、為遊客提供「微攻略」的旅行規劃服務網站。記者在網站上看到,只要遊客點擊想要去的地方,便會自動彈出相關的吃住行游購娛產品,這些產品不是簡單的列表,而是基於網路評價的好壞篩選出來的精品。當用戶面對一堆旅行目的地,而又不知道如何去規劃自己的行程時,只需要選擇自己喜歡的旅行風格,系統便為其量身定製出一個最合理的旅行計劃。
整個世界已經進入了「大數據時代」,到了可以通過數據挖掘、數據的整合營銷從而產生巨大產業收益的時候了。這一時代不光給旅遊服務企業,也給了很多
相應以終端消費者作為服務目標市場的行業挖金、掘金的可能性。
「旅遊行業是『大數據』應用前景最廣闊的行業之一。」閆向軍說,有了「大數據」,可以准確預知客流趨向,進而採取相應的措施疏導客流;有了「大數據」,可以知道遊客喜歡什麼樣的產品,進而開發建設適銷對路的產品;有了「大數據」,還可以知道遊客需要什麼樣的公共服務,進而改進旅遊公共服務……這些都是具體的方面。
唐曉雲說,旅遊行業沒有作為一個獨立的產業列入國家產業目錄,這就造成了全國統一、標准化的統計數據相對欠缺。無論是政府決策、學術研究,還是企業經營,都會面臨數據相對缺乏的困境。但是,如果能夠應用「大數據」,那麼旅遊行業就不愁沒數據了!
閆向軍認為,「大數據」對旅遊行業的影響不是某個企業或某個領域,而是全方位的,是整個行業管理決策模式的轉變。
首都經貿大學旅遊管理系副教授李雲鵬表示,隨著大數據所蘊含價值的不斷釋放,旅遊業大數據應用的未來必定是豐富多彩的,也會為旅遊業的發展注入一股新的朝氣和活力,發展前景廣闊而且具有超越傳統旅遊業發展的特殊價值。
北京第二外國語大學旅遊管理學院教授李宏表示,就旅遊行業來講,如果一個企業能夠在大數據的應用方面先行一步,那麼在未來的競爭中就能佔得先機。
數據收集分析是難題
雖然「大數據」是個好東西,在旅遊行業的應用前景也非常廣闊,但是整個行業對於大數據的應用,仍存在較大的障礙。這些障礙來自於數據的收集,更來自於數據的分析和挖掘。
「大數據時代缺的不是數據,而是方法。」中國旅遊研究院楊彥鋒說,在數據極大豐富的時代,每個人都會產生巨大的數據,但是這些數據如何收集、挖掘、利用才是問題的根本。
史道發是北京某旅遊規劃設計院的一名規劃師,他告訴記者,規劃行業是最需要數據支撐的,但是現在的數據收集是個難點。「要是旅遊規劃應用了大數據,那就更能貼近市場、貼近遊客了。」
大數據時代,數據是海量的,但是掌握這些數據的機構卻不是開放的。目前,「大數據」的最主要來源是互聯網,但是隨著人們對「大數據」價值的認識,越來越多的平台將數據看做是重要的資產。因此要獲得這些數據,必須要獲得許可。
山東省旅遊局是較早開展「大數據」收集和應用的行業管理機構,他們在收集「大數據」時也面臨類似的問題。閆向軍告訴記者,他們通過與網路公司合作獲取了其免費提供的數據,但是這些數據對於普通機構來說,必須要付出一定的成本。此外,在獲取住宿數據的時候更是大費周折。「由於各部門之間的系統都是相互獨立的,不能彼此聯網,要想獲得另一個領域的數據非常困難,更何況相關企業或研究機構了。」
正如許多「大數據」研究者所說,「大數據」研究的重要條件是「數據開放」,但目前我國的數據開放程度遠不能達到應用的要求。
「大數據」技術的戰略意義不在於掌握龐大的數據信息,而在於對這些含有意義的數據進行專業化處理。
李雲鵬說,由於數據是非系統化的,且不具有一致性和可靠性,因此企業很難有效地對數據進行操作。
在采訪中,記者也發現,雖然多數人看好「大數據」的應用前景,但是在面對如何應用時多少會有點兒茫然。這種茫然主要是因為「大數據」的復雜。
據統計,現在計算機處理的大多是結構化數據,但這些信息只佔互聯網上流動信息的約10%。其他90%數據是非結構化數據,它們存儲在音頻、視頻、社交媒體、網路日誌等中,不直接以結構化模式儲存。管理和分析這些非結構化的數據,讓多數人感到有心無力。
閆向軍說,大數據應用的根本在於從不相關的數據中找到相關性,如何分析紛繁復雜的數據至關重要,這就需要懂行業、又懂數據的人進行專業化的分析。但是目前「懂數據的人不懂旅遊,懂旅遊的人不懂數據。」
李宏認為,目前「大數據」研究主要在IT領域,旅遊行業對於「大數據」的研究很少。如果要應用「大數據」,如何分析這些復雜的數據是一個難題。
此外,隱私也是大數據時代不得不面對的一大難題,甚至有不少人喊出了「大數據時代沒有隱私」。正如一名網友在微博上所說,你在瀏覽網頁時,你的瀏覽偏好可能被記錄;你在下載手機應用時,你的需求偏好也可能被記錄;甚至,旅行時對旅行社、旅遊景區、酒店的偏好都可能被記錄……而這一切,有個冠冕堂皇的理由:為了給您提供更好的服務。
從數據化入手
從記者采訪的情況看,旅遊行業普遍對於「大數據」仍顯陌生,多數企業也不知道該如何應用「大數據」。
對此,楊彥鋒說,目前旅遊行業對「大數據」還停留在認識階段,基本談不上應用,即便是應用也僅在在線旅遊企業。目前只有攜程、藝龍、去哪兒等大的平台型互聯網企業才能掌握足夠大的數據。
李宏表示,現在討論的所謂旅遊企業「大數據」應用,更多的是「數據挖掘」的概念。
雖然目前旅遊行業在「大數據」的應用上還存在較大的障礙,但是這並不代表可以不關注「大數據」。
「大數據」時代,每一個行業或企業都應該未雨綢繆,為以後「大數據」的應用做准備。
李雲鵬說,對於旅遊管理部門來講,需要對遊客旅遊過程中產生的所有數據、旅遊企業經營活動中產生的所有數據、旅遊管理和目的地促銷活動中產生的所有數據進行深入挖掘分析,為旅遊決策提供可靠的依據和支撐,從而進一步提高效益,促進行業轉型升級;對於旅遊企業來講,需要逐步通過對大量數據的分析和挖掘,指導和管理工作,如酒店更加精準地根據顧客特徵和偏好推薦有吸引力的旅遊產品和服務、旅遊景區更好地進行客流疏導和調控、旅行社更方便地整合信息資源而開發出更有針對性和個性化的旅遊產品等。
對於如何著手「大數據」的應用工作,李宏建議,旅遊企業從企業內部管理系統著手,增強企業內部的數據化程度,進而改造優化內部管理流程。在客戶管理方面則應該加強客戶信息的收集,注重客戶數據的積累,而不是簡單地把這些數據放棄。
「雖然大數據的概念十分熱,但是對於很多實體企業與傳統行業而言,還是要扎扎實實地完成企業自身業務的數據化。」某知名網站主編何川說,短期內,多數企業還是要把重點聚焦在企業自身的業務模式上。
史道發說,「大數據」不僅僅是一個資料庫的概念,但是卻離不開資料庫。因此旅遊行業要應用「大數據」必須先從數據積累做起,藉助目前智慧旅遊平台的建設,注重遊客數據的收集,進而建立一個相對完善的旅遊資料庫,為以後「大數據」的應用打好基礎。
對此,李雲鵬還建議,旅遊管理機構應該有計劃地公布旅遊業運行的原始數據,鼓勵技術公司開發基於原始數據的應用平台,服務於遊客和旅遊企業及旅遊管理部門。
另外一種「大數據」應用方式則是購買第三方服務。目前,谷歌、網路、攜程、藝龍、去哪兒等大型平台型網路都掌握著海量的數據。
「如果第三方大數據服務價格較低,『大數據』確實有價值,企業完全可以通過購買數據服務來提升自身素質。」武漢大學信息管理學院教授沈陽說,微博就是「大數據」產生的一個重要平台,旅遊行業要利用「大數據」不妨從微博的數據收集入手。

Ⅲ 旅遊信息管理系統 資料庫

前階段做的ATM機的,樓主要不修改下吧,呵呵!
有兩個小步驟沒做完,樓主自己看一下!
use master
if exists(select * from sysdatabases where name='bankDB')
drop database bankDB
GO
---建庫bankDB
create database bankDB
on
(
name='bankDB',
filename='D:\bank\bankDB.mdf',
filegrowth=15%
)
use bankDB
GO
---創建用戶信息表(userInfo)

create table userInfo
(
customerID INT IDENTITY(1,1),
customerName VARCHAR(10) NOT NULL,
PID NUMERIC(18,0) NOT NULL,
telephone VARCHAR(15) NOT NULL,
address VARCHAR(30)
)
GO

---創建信息表的約束
ALTER TABLE userInfo ADD
CONSTRAINT PK_custonerID PRIMARY KEY(customerID),
CONSTRAINT CK_PID CHECK(len(PID)=18 or len(PID)=15),
CONSTRAINT UQ_PID UNIQUE(PID),
CONSTRAINT CK_telephone CHECK(telephone LIKE '[0-9][0-9][0-9][0-9]-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]' OR telephone LIKE '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]' OR telephone LIKE '[0-9][0-9][0-9]-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]')

---創建銀行卡信息表(cardInfo)
CREATE TABLE cardInfo
(
cardID VARCHAR(20) NOT NULL,
curType VARCHAR(6) NOT NULL,
savingType VARCHAR(8),
openDate DATETIME NOT NULL,
openMoney MONEY NOT NULL,
balance MONEY NOT NULL,
pass VARCHAR(6) NOT NULL,
isReportLoss BIT NOT NULL,
customerID INT NOT NULL
)
GO

---創建銀行卡信息表的約束

ALTER TABLE cardInfo ADD
CONSTRAINT PK_cardID PRIMARY KEY(cardID),
CONSTRAINT CK_cardID CHECK (cardID like '1010 3576 [0-9][0-9][0-9][0-9] [0-9][0-9][0-9][0-9]'),
CONSTRAINT DF_curType DEFAULT 'RMB' FOR curType,
CONSTRAINT CK_savingType CHECK(savingType IN ('活期' , '定活兩便' , '定期')),
CONSTRAINT DF_openDate DEFAULT GETDATE() FOR openDate,
CONSTRAINT CK_openMoney CHECK (openMoney>=1),
CONSTRAINT CK_balance CHECK (balance>=1),
CONSTRAINT CK_pass CHECK (LEN(pass)=6),
CONSTRAINT DF_pass DEFAULT '888888' FOR pass,
CONSTRAINT DF_isReportLoss DEFAULT '0' FOR isReportLoss,
CONSTRAINT FK_customerID FOREIGN KEY (customerID) REFERENCES userInfo(customerID)
GO

---創建交易信息表(transInfo)

CREATE TABLE transInfo
(
transDate DATETIME NOT NULL,
cardID VARCHAR(20) NOT NULL,
transType VARCHAR(4) NOT NULL,
transMoney MONEY NOT NULL,
remark NTEXT
)
GO

---創建交易信息表的約束
ALTER TABLE transInfo ADD
CONSTRAINT DF_transDate DEFAULT GETDATE() FOR transDate ,
CONSTRAINT FK_cardID FOREIGN KEY (cardID) REFERENCES cardInfo(cardID),
CONSTRAINT CK_transType CHECK (transType='存入' or transType='支取'),
CONSTRAINT CK_transMoney CHECK (transMoney >0)

----測試插入數據
insert into userInfo values('張三','123456789012340','010-67898978','北京海淀')
insert into userInfo values('李四','320504198607221250','0512-65331652','江蘇蘇州')
insert into userInfo values('王五','320504198607223333','0512-65323442','江蘇南京')
insert into userInfo values('趙六','320504198607131313','0512-65331643','江蘇蘇州')
insert into userInfo values('方六','320504194407131543','0512-65331243','江蘇鹽城')

insert into cardInfo values('1010 3576 1212 1134','RMB','活期','2006-10-01',1.0000,1.0000,'888888','','1')
insert into cardInfo values('1010 3576 1212 5555','RMB','活期','2006-10-01',1000.0000,1000.0000,'888888','','2')
insert into cardInfo values('1010 3576 2323 3343','RMB','活期','2006-12-01',15345.0000,1000.0000,'888888','','3')
insert into cardInfo values('1010 3576 1456 3454','RMB','活期','2006-11-28',2343.0000,1000.0000,'888888','','4')
insert into cardInfo values('1010 3576 1356 3554','RMB','活期','2006-12-05',22143.0000,10020.0000,'888888','','8')

----插入違背約束語句
insert into userInfo values('沈非','123456789','0512-67998978','江蘇蘇州') ---違背身份證長度的CHECK約束
insert into userInfo values('沈大','320504198607131313','0512-67998979','江蘇蘇州') ---違背身份證的唯一約束

insert into cardInfo values('1010 3576 1456 3424','RMB','活期','2006-11-28',0.0000,0,'888888','','5') ---違背開戶金額不能<1的CHECK約束

insert into transInfo values('','1010 3576 1456 3424','支取',1000,'') ---違背主外鍵約束,交易卡號必須存在於cardInfo中

---查看所有表
select * from userInfo
select * from cardInfo
select * from transInfo

---創建存儲過程:根據卡號修改密碼
CREATE PROC proc_changePass @incardID VARCHAR(20),@inoldPass VARCHAR(6),@newPass1 VARCHAR(6),@newpass2 VARCHAR(6)
AS
DECLARE @oldPass VARCHAR(6)
IF EXISTS(SELECT * FROM cardInfo WHERE cardID=@incardID)
BEGIN
SELECT @oldPass=pass FROM cardInfo WHERE cardID=@incardID
IF(@oldpass=@inoldPass)
BEGIN
IF(@newpass1=@newpass2)
BEGIN
UPDATE cardInfo SET pass=@newPass1 WHERE cardID=@incardID
PRINT '密碼修改成功!'
END
ELSE
PRINT '請確認您的新密碼!'
END
ELSE
PRINT '您輸入的原密碼錯誤,請重新輸入!'
END
ELSE
PRINT '您輸入的卡號不存在,請重新輸入!'

---測試修改密碼的存儲過程
EXEC proc_changePass '1010 3576 1212 1134','888888','123456','123456'

---創建掛失銀行卡的存儲過程
CREATE PROC proc_lossCard @inCustomerName VARCHAR(10),@inPID NUMERIC(18,0),@inTelephone VARCHAR(15),@inAddress VARCHAR(30),@inCardPass VARCHAR(6)
AS
DECLARE @customerName VARCHAR(10),@PID NUMERIC(18,0),@telephone VARCHAR(15),@address VARCHAR(30),@cardPass VARCHAR(6)
SELECT @customerName=customerName,@PID=PID,@telephone=telephone,@address=address FROM userInfo WHERE PID=@inPID
SELECT @cardPass=pass FROM cardInfo WHERE customerID=(SELECT customerID FROM userInfo WHERE PID=@inPID)
IF((@customerName=@inCustomerName)AND(@PID=@inPID)AND(@inTelephone=@telephone)AND(@inAddress=@address)AND(@inCardPass=@cardPass))
BEGIN
UPDATE cardInfo SET isReportLoss=1 WHERE customerID=(SELECT customerID FROM userInfo WHERE PID=@inPID)
END
ELSE
PRINT '您的信息有誤,請核對後重新輸入!'

----測試掛失的存儲過程
EXEC proc_lossCard '王五','320504198607223333','0512-65323442','江蘇南京','888888'

---統計銀行流通金額

DECLARE @inMoney MONEY,@outMoney MONEY
SELECT @inMoney=sum(transMoney) from transInfo where transType='存入'
SELECT @outMoney=sum(transMoney) from transInfo where transType='支取'
PRINT '銀行流通總額為:'+ convert(varchar(20),@inMoney-@outMoney)+' RMB'
PRINT '盈利結算為:'+convert(varchar(20),@outMoney*0.008-@inMoney*0.003)+' RMB'
GO

---查詢月交易冠軍的銀行卡信息
SELECT * FROM transInfo WHERE
print CONVERT(VARCHAR(20),@money)
SELECT * FROM cardInfo WHERE

---查詢半年未交易的卡信息
SELECT * FROM cardInfo WHERE cardID NOT IN (SELECT cardID FROM transInfo WHERE DATEDIFF(mm,transDate,getdate())>7)//////////

---查詢本周開戶的帳號
SELECT * FROM cardInfo where DATEDIFF(WEEK,openDate,getdate())<1

---查詢掛失帳號的客戶信息
SELECT * FROM userInfo where customerID IN(SELECT customerID FROM cardInfo where isReportLoss=1)

---催款提醒業務
SELECT customerName AS 客戶姓名,telephone AS 聯系電話,balance AS 余額 FROM
userInfo INNER join cardInfo ON userInfo.customerID=cardInfo.customerID WHERE balance<200 AND datepart(day,getdate())>=28

---給transInfo表的cardID欄位添加非聚集索引
CREATE NONCLUSTERED INDEX IX_transInfo_cardID ON transInfo(cardID) WITH FILLFACTOR=70
---測試索引
SELECT * FROM transInfo (INDEX=IX_transInfo_cardID) WHERE cardID='1010 3576 1212 1134'

---創建視圖
CREATE VIEW view_userInfo
AS
SELECT customerID AS 客戶編號,customerName AS 客戶姓名,PID AS 身份證號,telephone AS 電話號碼,address AS 聯系地址 FROM userInfo

CREATE VIEW view_cardInfo
AS
SELECT cardId AS 卡號,curType AS 貨幣種類,savingType AS 存款類型,openDate AS 開戶日期,openMoney AS 開戶金額,balance AS 帳戶余額,pass AS 密碼,isReportLoss AS 是否掛失,customerID AS 顧客編號 FROM cardInfo

CREATE VIEW view_transInfo
AS
SELECT transDate AS 交易日期,cardID AS 卡號,transType AS 交易類型,transMoney AS 交易金額,remark AS 備注 FROM transInfo

---查看視圖
SELECT * FROM view_userInfo
SELECT * FROM view_cardInfo
SELECT * FROM view_transInfo

---創建觸發器
CREATE TRIGGER trig_trans
ON transInfo
FOR INSERT
DECLARE @transType VARCHAR(4)

---創建觸發器trig_trans
drop trigger trig_trans
CREATE TRIGGER trig_trans ON transInfo
FOR INSERT
AS

DECLARE @transType VARCHAR(4),@transMoney MONEY,@cardID VARCHAR(20),@balance MONEY,@customerName VARCHAR(10)
SELECT @transType=transType,@transMoney=transMoney,@cardID=cardID FROM inserted
SELECT @balance=balance FROM cardInfo WHERE cardID=@cardID
SELECT @customerName=customerName FROM userInfo WHERE customerID=(SELECT customerID FROM cardInfo WHERE cardID=@cardID)
BEGIN TRAN
IF (@transType='支取')
BEGIN
IF (@balance-@transMoney<1) ---如果取款後余額不足1元
BEGIN
PRINT '正在交易,請稍等....'
ROLLBACK TRAN ---取消交易,回滾
PRINT '余額不足,交易失敗!'
END

ELSE

BEGIN
PRINT '正在交易,請稍等...'
COMMIT TRAN ---交易成功
UPDATE cardInfo SET balance=@balance-@transMoney WHERE cardID=@cardID
PRINT '交易成功,'+CONVERT(VARCHAR(10),@customerName)+' 您進行的是取款操作,當前的余額為:'+CONVERT(VARCHAR(20),@balance-@transMoney)+' RMB'
END
END

ELSE
BEGIN
PRINT '正在交易,請稍等...'
COMMIT TRAN
UPDATE cardInfo SET balance=@balance+@transMoney WHERE cardID=@cardID
PRINT '交易成功,'+CONVERT(VARCHAR(10),@customerName)+' 您進行的是存款操作,當前的余額為:'+CONVERT(VARCHAR(20),@balance+@transMoney)+' RMB'
END

INSERT INTO transInfo VALUES('','1010 3576 1212 5555','支取',999,'aa')

----創建存入與支取的存儲過程
drop proc proc_transInfo
CREATE PROC proc_transInfo @customerName VARCHAR(10),@transMoney MONEY,@transType VARCHAR(4),@pass VARCHAR(6)=''
AS
DECLARE @pwd VARCHAR(6)
DECLARE @cardID VARCHAR(20)
SELECT @pwd=pass ,@cardID=cardID FROM cardInfo WHERE customerID=(SELECT customerID FROM userInfo WHERE customerName=@customerName)---由userInfo姓名欄位查詢得用戶的卡號和密碼
PRINT '您的卡號為: '+CONVERT(VARCHAR(20),@cardID) ---將用戶的卡號輸出
IF(@transType='存入')
BEGIN
PRINT '正在交易,請稍等...'
INSERT INTO transInfo VALUES('',@cardID,@transType,@transMoney,'')
PRINT '交易成功,您成功從卡上存入了'+CONVERT(VARCHAR(20),@transMoney)
END

ELSE
BEGIN
IF(@pwd=@pass)
BEGIN
PRINT '正在交易,請稍等...'
INSERT INTO transInfo VALUES('',@cardID,@transType,@transMoney,'')
PRINT '支取成功,您成功從卡上支取了'+CONVERT(VARCHAR(20),@transMoney)
END
ELSE
BEGIN
PRINT '密碼錯誤,請重新輸入!'
END
END
GO

EXEC proc_transInfo '王五',100,'支取','888888' ----模擬存入與支取

----創建產生隨機卡號的存儲過程
CREATE PROC proc_RANDcardID @mycardID VARCHAR(20) OUTPUT
AS
DECLARE @rand NUMERIC(15,8)
DECLARE @randcardID VARCHAR(10)
SELECT @rand=RAND(CONVERT(INT,DATEPART(mm,GETDATE()) * 100000)+
CONVERT(INT,DATEPART(ss,GETDATE()) * 1000)+
CONVERT(INT,DATEPART(ms,GETDATE())))
SET @randcardID=SUBSTRING(CONVERT(VARCHAR(10),@rand),3,4)+' '+SUBSTRING(CONVERT(VARCHAR(10),@rand),7,4)
SET @mycardID='1010 3576'+' '+@randcardID
GO

----調用隨機卡號生成存儲過程,產生隨機卡號
DECLARE @mycardID VARCHAR(20)
EXEC proc_RANDcardID @mycardID OUTPUT
PRINT '產生的隨機卡號為:'+@mycardID

----創建開戶的存儲過程
drop proc proc_openAccount
CREATE PROC proc_openAccount @customerName VARCHAR(10),@PID NUMERIC(18,0),@telephone VARCHAR(15),@openMoney MONEY,@savingType VARCHAR(8),@address VARCHAR(30)
AS
WHILE(1=1)
BEGIN
DECLARE @mycardID VARCHAR(20)
EXEC proc_RANDcardID @mycardID OUTPUT
IF NOT EXISTS(SELECT cardID FROM cardInfo WHERE cardID=@mycardID)
BEGIN
INSERT INTO userInfo VALUES(@customerName,@PID,@telephone,@address)
DECLARE @customerID INT
SELECT @customerID=customerID FROM userInfo WHERE PID=@PID
INSERT INTO cardInfo(cardID,savingType,openMoney,balance,customerID) VALUES(@mycardID,@savingType,@openMoney,@openMoney,@customerID)
PRINT '開始開戶,請稍等....'
PRINT '開戶成功!您的卡號為:'+@mycardID
PRINT '開戶日期:'+CONVERT(VARCHAR(20),GETDATE())
PRINT '開戶金額為:'+CONVERT(VARCHAR(20),@openMoney)
BREAK
END
END
GO

---模擬開戶,調用存儲過程proc_openAccount
EXEC proc_openAccount '沈非','320504198607221447','13914048959',3999,'活期','蘇州職業大學'

---創建帳戶間轉帳的存儲過程
drop proc proc_trans
CREATE PROC proc_trans @outcardID VARCHAR(20),@incardID VARCHAR(20),@transMoney MONEY
AS
DECLARE @outbalance MONEY,@inbalance MONEY,@isReportLoss1 BIT,@isReportLoss2 BIT
SELECT @outbalance=balance FROM cardInfo WHERE cardID=@outcardID
SELECT @inbalance=balance FROM cardInfo WHERE cardID=@incardID
SELECT @isReportLoss1=isReportLoss FROM cardInfo WHERE cardID=@outcardID
SELECT @isReportLoss2=isReportLoss FROM cardInfo WHERE cardID=@incardID
IF(@isReportLoss1 =0 AND @isReportLoss2=0)
BEGIN
IF(@outbalance-@transMoney<1)
BEGIN
PRINT '正在交易中,請稍等....'
PRINT '交易失敗,余額不足,無法轉帳!'
PRINT '您的余額為:'+CONVERT(VARCHAR(20),@outbalance)+' RMB'
END
ELSE
BEGIN
PRINT '正在交易中,請稍等....'
INSERT INTO transInfo(cardID,transType,transMoney) VALUES(@outcardID,'支取',@transMoney)
INSERT INTO transInfo(cardID,transType,transMoney) VALUES(@incardID,'存入',@transMoney)
UPDATE cardInfo SET balance=@outbalance-@transMoney WHERE cardID=@outcardID
UPDATE cardInfo SET balance=@inbalance+@transMoney WHERE cardID=@incardID
PRINT '轉帳成功!'
PRINT
END
END
ELSE
PRINT '有一方卡已經掛失,請主動投案自首!交易失敗'

----模擬轉帳
EXEC proc_trans '1010 3576 1356 3554','1010 3576 1212 1134',1000

---添加登陸帳戶
EXEC SP_ADDLOGIN 'philip','65331652'
---創建資料庫用戶
EXEC SP_GRANTDBACCESS 'philip'
---賦予三張表的增刪改查許可權
GRANT SELECT,INSERT,DELETE,UPDATE ON userInfo TO philip
GRANT SELECT,INSERT,DELETE,UPDATE ON cardInfo TO philip
GRANT SELECT,INSERT,DELETE,UPDATE ON transInfo TO philip

---賦予存儲過程的執行許可權
GRANT EXEC ON proc_changePass TO philip
GRANT EXEC ON proc_lossCard TO philip
GRANT EXEC ON proc_transInfo TO philip
GRANT EXEC ON proc_RANDcardID TO philip
GRANT EXEC ON proc_openAccount TO philip
GRANT EXEC ON proc_trans TO philip

Ⅳ 遙感作業空間資料庫的建立流程有那些

建模,入庫,生產。
資料庫建模過程。這一過程主要是根據行業應用特點及對其的理解,制定出比較規范的數據規范,在邏輯上建設資料庫。數據監理過程。這一過程主要是檢測數據的正確性,從而保證建庫的准確性。利用各種工具將各種數據入庫的過程。此過程主要是將可以得到的各種數據紙制數據,矢量數據,柵格數據,遙感數據等快速、准確的入到庫中。
通過設計和建database空間資料庫,掌握空間資料庫設計和建設流程,學會所學GIS知識獨立分析決問題的能力,對所學建庫知識進行一個完整的串接。需求分析,旅遊業是一個綜合性很強的信息依賴型產業,旅遊信息的獲取、加工、傳播和利用對旅遊業的發展起著舉足輕重的作用。從旅遊者和旅遊規劃管理部門的需求出發建立旅遊信息資料庫,不僅可以使旅遊者和旅遊規劃管理部門能夠快速、准確地查找和檢索自己所需要的旅遊信息,而且能夠促進旅遊信息規范化和標准化,促進旅遊信息的共享,打破對旅遊信息的封鎖;旅遊信息資料庫的建立有利於從整體上對旅遊業進行宏觀的調控和管理,有利於旅遊業協調、健康有序的發展。

熱點內容
抽象介面php 發布:2025-03-10 15:09:14 瀏覽:803
tomcat配置ip地址訪問 發布:2025-03-10 14:54:54 瀏覽:689
注冊淘寶密碼多少 發布:2025-03-10 14:49:03 瀏覽:558
文件上傳設備 發布:2025-03-10 14:47:47 瀏覽:498
江西l2tp伺服器託管雲伺服器 發布:2025-03-10 14:47:38 瀏覽:885
微信如何給錢包設置手勢密碼 發布:2025-03-10 14:46:55 瀏覽:229
江蘇伺服器如何 發布:2025-03-10 14:46:17 瀏覽:179
可編程交直流電源 發布:2025-03-10 14:40:19 瀏覽:569
c語言編程軟體安裝教程 發布:2025-03-10 14:20:01 瀏覽:85
java判斷變數類型 發布:2025-03-10 14:19:50 瀏覽:578