数据库的实现

T-SQL语句总结
1.添加数据
  语法1:INSERT [INTO] 表名 (字段1,字段2,…)VALUES(值1,值2,…)
  例如1:INSERT INTO stuInfo (stuName, stuNo, stuAge) VALUES ('王五', 's333', 22)
  语法2:INSERT INTO 新表名 (新字段1,新字段2,…)SELECT (源字段1,源字段2,…)FROM 源表名  ---必须先创建新表
  例如2:INSERT INTO TongXunLu ('姓名', '地址', '电子邮件') SELECT Sname, Saddress, SEmail FROM Students
  语法3:SELECT 源表名.字段1, 源表名.字段2, … IDENTITY(数据类型,标识种子,标识增长量)AS 列名 INTO 新表名 FROM 源表名
  例如3:SELECT Students.Sname, Students.SAddress, Students.SEmail INTO TongXunLu FROM Students
  语法4:INSERT 表名 (字段1,字段2,…) SELECT (值1,值2,…) UNION SELECT (值1,值2,…) UNION …

2.修改数据
  语法:UPDATE 表名 SET 字段1=值1,字段2=值2,…WHERE(条件)
  例如:UPDATE stuInfo SET stuAge = 25 WHERE stuName = '张三'

3.查询数据
SELECT 字段1,字段2,… FROM 表名 WHERE(条件) ORDER BY 字段名

4.删除数据
  语法1:DELETE FROM 表名 WHERE(条件)---------------不删除标识种子,DELETE后不能出现字段
  例如1:DELETE FROM Students WHERE Sname = '李四'
  语法2:TRUNCATE TABLE 表名 ---------------没有条件的WHERE,同时删除标识种子。
           但执行速度比DELETE快,而且使用系统资源和事务日志资源更少。
           不能用于有外键约束引用的表。
  例如2:TRUNCATE TABLE Students

数据库文件的组成
主数据文件:*.mdf
次数据文件:*.ndf(可选)
日志文件:*.ldf(可选)

数据库实现语句

创建数据库
CREATE DATABASE 数据库名
ON [PRIMARY]
(
<数据文件参数> [,…n][<文件组参数>]
)
[LOG ON]
(
{<日志文件参数> [, …n]}
)
文件具体参数 PRIMARY, FILENAME, SIZE, MAXSIZE, FILEGROWNTH

删除数据库
DROP DATABASE 数据库名
注:SQL 将数据库清单都存放在master系统数据库中的sysdatabases表中

USE  master
GO

IF   EXISTS  ( SELECT   *   FROM  sysdatabases  WHERE  name  =   ' bbsDB ' )
DROP   DATABASE  bbsDB
GO

EXEC  xp_cmdshell  ' mkdir D:/WorkStation/DBproject '
-- EXEC xp_cmdshell 'dir *.txt', NO_OUTPUT

CREATE   DATABASE  bbsDB
ON
(
NAME 
=   ' bbsDB_data ' ,
FILENAME 
=   ' D:/WorkStation/DBproject/bbsDB_data.mdf ' ,
SIZE 
=   10  MB,
FILEGROWTH 
=   20 %
)
LOG   ON
(
NAME 
=   ' bbsDB_log ' ,
FILENAME 
=   ' D:/WorkStation/DBproject/bbsDB_log.ldf ' ,
SIZE 
=   1  MB,
MAXSIZE 
=   20  MB,
FILEGROWTH 
=   10 %
)
GO

 创建表
CREATE TABLE 表名
(
 字段1 数据类型 列的特征,
 字段2 数据类型 列的特征,
 …
)
注:列的特征包括:是否为空(NULL)、是否是标识列(自动编号)、是否有默认值、是否主键等

 删除表
DROP TABLE 表名
注:SQL 将该数据库表的清单存放在该数据库的系统表sysobjects中

USE  bbsDB
GO

IF   EXISTS  ( SELECT   *   FROM  sysobjects  WHERE  name  =   ' bbsUsers ' )
DROP   TABLE  bbsUsers
GO

CREATE   TABLE  bbsUsers
(
    UID 
INT   IDENTITY ( 1 , 1 NOT   NULL ,
    Uname 
VARCHAR ( 15 NOT   NULL ,
    Upassword 
VARCHAR ( 10 NOT   NULL ,
    Uemail 
VARCHAR ( 20 NOT   NULL ,
    Usex 
BIT    NOT   NULL ,
    Uclass 
INT   NULL ,
    Uremark 
VARCHAR ( 20 NULL ,
    UregDate 
DATETIME   NOT   NULL ,
    Ustate 
INT   NULL ,
    Upoint 
INT   NULL
)
GO

SELECT   *   FROM  bbsUsers

 

 

USE  bbsDB
GO

ALTER   TABLE  bbsUsers  ADD   CONSTRAINT  PK_UID 
PRIMARY   KEY (UID)

ALTER   TABLE  bbsUsers  ADD   CONSTRAINT  DF_Upassword
DEFAULT ( 888888 FOR  Upassword

ALTER   TABLE  bbsUsers  ADD   CONSTRAINT  DF_Usex
DEFAULT ( 1 FOR  Usex

ALTER   TABLE  bbsUsers  ADD   CONSTRAINT  DF_Uclass
DEFAULT ( 1 FOR  Uclass

ALTER   TABLE  bbsUsers  ADD   CONSTRAINT  DF_UregDate
DEFAULT ( getDate ())  FOR  UregDate

ALTER   TABLE  bbsUsers  ADD   CONSTRAINT  DF_Ustate
DEFAULT ( 0 FOR  Ustate

ALTER   TABLE  bbsUsers  ADD   CONSTRAINT  DF_Upoint
DEFAULT ( 20 FOR  Upoint

ALTER   TABLE  bbsUsers  ADD   CONSTRAINT  CK_Uemail
CHECK (Uemail  LIKE   ' %@% ' )

ALTER   TABLE  bbsUsers  ADD   CONSTRAINT  CK_Upassword
CHECK ( LEN (Upassword)  >=   6 )
GO
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值