SQL创建-----表

比如成绩表,每一行就等价于一个对象,它的列等价于对象的属性。 

--选择库
use HMI
go
--去重复
if exists(select * from sysobjects where name='维修电工')
drop table 维修电工
go
create table 维修电工
(
     编号 int identity(10000,2) primary key , --编号,主键
	 账号 varchar(25) not null, --账号
	 密码 varchar(18) check(len(密码)>=6 and len(密码)<=18)  not null,  
	 名字 varchar(20) not null,
	 手机号 char(11) not null,         --电话
	 地址 nvarchar(100) default('地址不详')  --住址
)
go

什么是表:表的作用和成绩单一样。是集合。它的每一行都是一个对象。这些对象都是相同类型。

表的列:就是对象的属性。有多少属性就能有多少列名。

重点在于对象的属性。一个对象由属性和方法等组成,表只能存属性,不能存方法。但可以用Dictionary < K , V > 字典  还原出“”对象“”。

C#经常new出对象,相同类型的每个对象方法是一样的,但属性值是不同的。比如幼儿园的小朋友,对于老师而言他们不都是一样的么,只是名字不一样。名字就是众多属性中的一个。List可以看做是一个数据表。

取出数据表的一个对象,就相当于克隆出一个对象。

表必须保存在库里(就像电影必须保存在U盘或硬盘里)

下面来新建个库

1先定位表, master是系统表,相当于总管(所有的库名,都由它统计)

use master
go

2 再判断有没有这个库,如果有,就删除(避免重复)

作用是:班里已经有小明了,你再插入小明,显然不合理。所以要删掉再重建

if exists(select * from sysdatabases where name='维修电工')
drop database 维修电工
go

3  开始创建你需要的库名  维修电工   mdf,     ndf,     ldf

库名和文件名没有直接关系,不必设置成一致。文件是用来保存库名内生成的数据

create database 维修电工
on primary  
(
         --数据库的逻辑文件名(就是系统用的,必须唯一)
name='维修电工_主data1',
--数据库物理文件名(绝对路径)
filename='D:\DB\维修电工_主data1.mdf',--主数据文件名
--数据库初始文件大小(一定要根据你的实际生产需求来定)
size=20MB,
--数据文件增值量(也要参考文件本身大小)
filegrowth=1MB
)
,
(     
name='维修电工_次data2',
filename='D:\DB\维修电工_次data2.ndf',--次要数据文件名
size=20MB,
filegrowth=1MB
)

log on
(
         name='维修电工_日志log',
filename='D:\DB\维修电工_日志log.ldf',--日志文件名
size=10MB,
filegrowth=1MB
)
go
use master
go
--执行
if exists(select * from sysdatabases where name='HMI')
drop database HMI
go
--重复的话,删除再重建
create database HMI  --新建 HMI
on primary  
(
         --数据库的逻辑文件名(就是系统用的,必须唯一)
name='HMI_主',
--数据库物理文件名(绝对路径)
filename='D:\DB\HMI_主件.mdf',--主数据文件名
--数据库初始文件大小(一定要根据你的实际生产需求来定)
size=20MB,
--数据文件增值量(也要参考文件本身大小)
filegrowth=1MB
)
,
(     
name='HMI_副',
filename='D:\DB\HMI_副件.ndf',--次要数据文件名
size=20MB,
filegrowth=1MB
)

log on
(
         name='HMI_日志',
filename='D:\DB\HMI_日志log.ldf',--日志文件名
size=10MB,
filegrowth=1MB
)
go



现在就可以用了。  go相当于执行,库大于表。表相当于啤酒,库相当于啤酒的箱子。

有了库,就可以新建表了。在新建表之前,还是要判断一下,有没有重复。

--指向要操作的数据库
use 维修电工
go
--创建讲师表
if exists(select * from sysobjects where name='成绩表')
drop table 成绩表
go

新建表后,就要添加对象的属性名(列名)

create table Teacher
(
     TeacherId int identity(1000,1) primary key , --讲师编号,主键
LoginAccount varchar(50) not null, --登录账号
LoginPwd varchar(18) check(len(LoginPwd)>=6 and len(LoginPwd)<=18)  not null,  
TeacherName varchar(20) not null,
Phonenumber char(11) not null,         --电话
NowAddress nvarchar(100) default('地址不详')  --住址
)
go

Teacher是表名,里面的就是属性。

表可以很多个(对象类型可以很多个),同样的方法,再写个其他的

if exists (select * from sysobjects where name='CourseCategory')
drop table CourseCategory
go
create table CourseCategory
(
     CategoryId  int identity(10,1) primary key,
     CategoryName varchar(20) not null    
)
go

可以看到只建了2个属性。 id 和名字

必须定位库后,才能操作库里面的所有表。

use CourseManageDB
go
--添加测试数据(必须要学会自己写测试数据)
--insert into Teacher(TeacherId,LoginAccount,LoginPwd,TeacherName,PhoneNumber)
--values(10001,'xiketang01','12345678','常老师','13600000001'),
--(10002,'xiketang02','123456','刘老师','13600000002'),
--(10003,'xiketang03','123456','张老师','13600000003')
insert into Teacher(LoginAccount,LoginPwd,TeacherName,PhoneNumber)
values('xiketang01','12345678','常老师','13600000001'),
('xiketang02','123456','刘老师','13600000002'),
('xiketang03','123456','张老师','13600000003')

要注意的是 属性的名字不能写错,插入的数据和属性位置要对应。

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值