优化MySchool数据库设计—数据库的实现

1.SQL语句回顾

1.添加数据

insert [into] 表名(列1,列2,...) values(值1,值2,...)

例:insert into student(studentno,studentname,borndate)

values('100','张大','1920-2-9')


2.修改数据

update 表名 set 列1 = 值1,列2 = 值2,...where (条件)

例:update student set borndate = '1920-2-20' where studentname = '啊哈耶克'


3.查询数据

select 列1,列2,...from 表名 where (条件) order by 列名

例:select studentname,studentno from student where borndate >= '1990-2-2'

order by studentno


4.删除数据

delete from 表名 where (条件)

例:delete from student where borndate < '1900-2-2'


使用SQL语句创建和删除数据库  

 数据库文件由3部分组成:

1.主数据文件:*.mdf

2.次要数据文件:*.ndf

3.日志文件:*.ldf


创建数据库

语法:

create database 数据库名

on[primary]

(

<数据文件参数>[,...n] [<文件组参数>]

)

[log on]

(

{<日志文件参数> [,...n]}

)


例:

create database MySchool

on primary

(

name = 'MySchool_data',

filename = 'D:MySchool_data.mdf',

size = 5mb,

maxsize = 100mb,

filegrowth = 15%

)

log on 

(

name = 'MySchool_log',

filename = 'D:MySchool_log.ldf',

size = 2mb,

filegrowth = 1mb

)

go


创建多个数据文件和多个日志文件的代码:

create database emp

on primary

(

name = 'emp1',

filename = 'D:emp1.mdf',

size = 10,

filegrowth = 10%

),

(

name = 'emp2',

filename = 'D:emp2.ndf',

size = 10,

maxsize = 100,

filegrowth = 10%

)

log on 

(

name = 'emplog1',

filename = 'D:emplog1_log.ldf',

size = 10,

maxsize = 100,

filegrowth = 10%

),

(

name = 'emplog2',

filename = 'D:emplog2_log.ldf',

size = 10,

maxsize = 100,

filegrowth = 10%

)

go


删除数据库

drop database 数据库名

检测是否存在数据库:

use master

go

if exists(select * from sysdatabases where name = 'MySchool')

drop database myschool

create database myschool


创建表

语法:

create table 表名

列1 数据类型 列的特征

列2 数据类型 列的特征

...


删除表

drop table 表名

例:drop table student


使用SQL语句创建和删除约束

实体完整性:唯一确定表中一行记录

域完整性:表中特定数据的有效性,以确保不会输入无效的数值

引用完整性:插入或删除记录时,维护表之间定义的关系

自定义完整性


常用的约束类型:

主键约束

非空约束

检查约束

默认约束

外键约束


添加约束

alter table 表名

add constraint 约束名 约束类型 具体的约束说明


删除约束

alter table 表名

drop constraint 约束名



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值