機房收費系統初體驗——SQL語句解析

ZeroWM發表於2013-09-21

    機房收費系統進行中,介面設計已經初步完成。最後資料庫還要自己來寫,所以分析了一下以前做過的學生資訊管理系統的資料庫。  

  乍一看,SQL server程式碼複雜難懂,不過分析一下它共同點和不同點,整個程式碼的思路就清晰了很多。其中用到的很多內容在視訊中都有體現。


拿出幾個典型的段落分析一下。

use master
go
if exists (select * from dbo.sysdatabases where name = 'Student') 
drop database Student
GO
create database Student
go
use Student
go
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[user_Info]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[user_Info]
GO


CREATE TABLE [dbo].[user_Info] (
	[user_ID] [char] (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
	[user_PWD] [char] (10) COLLATE Chinese_PRC_CI_AS NULL ,
	[user_Des] [char] (10) COLLATE Chinese_PRC_CI_AS NULL 
) ON [PRIMARY]
GO

insert user_Info(user_ID,user_PWD)
VALUES('student','student')


把master呼叫為當前資料庫。GO為批處理命令的結束標誌。

if...exists語句屬於流程控制語句。而流程控制語句是主要用來控制SQL語句,語句塊或者儲存過程的執行流程。個人對於這段的理解是:如果存在名稱為student的系統資料庫,就刪除它。sysdatabases對SQL server上的每個系統資料庫和使用者自定義資料庫含有一行記錄,它只出現在master資料庫中。

資料定義包含drop、create和alter,drop為標準SQL語句之一。

建立資料庫student

使用student資料庫。

OBJECTPROPERTY返回當前資料庫中物件的有關資訊。

語法OBJECTPROPERTY(id,property)。

建立表TABLE,建立的內容和VB介面中的資訊一致。比如user_ID在VB介面中都有體現。

插入一個表user_Info(ID號,密碼),它們的值是(student,student)。





  

 

相關文章