• SQL创建-----表


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

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

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

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

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

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

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

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

    下面来新建个库

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

    1. use master
    2. go

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

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

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

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

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

    1. create database 维修电工
    2. on primary
    3. (
    4. --数据库的逻辑文件名(就是系统用的,必须唯一)
    5. name='维修电工_主data1',
    6. --数据库物理文件名(绝对路径)
    7. filename='D:\DB\维修电工_主data1.mdf',--主数据文件名
    8. --数据库初始文件大小(一定要根据你的实际生产需求来定)
    9. size=20MB,
    10. --数据文件增值量(也要参考文件本身大小)
    11. filegrowth=1MB
    12. )
    13. ,
    14. (
    15. name='维修电工_次data2',
    16. filename='D:\DB\维修电工_次data2.ndf',--次要数据文件名
    17. size=20MB,
    18. filegrowth=1MB
    19. )
    20. log on
    21. (
    22. name='维修电工_日志log',
    23. filename='D:\DB\维修电工_日志log.ldf',--日志文件名
    24. size=10MB,
    25. filegrowth=1MB
    26. )
    27. go
    1. use master
    2. go
    3. --执行
    4. if exists(select * from sysdatabases where name='HMI')
    5. drop database HMI
    6. go
    7. --重复的话,删除再重建
    8. create database HMI --新建 HMI
    9. on primary
    10. (
    11. --数据库的逻辑文件名(就是系统用的,必须唯一)
    12. name='HMI_主',
    13. --数据库物理文件名(绝对路径)
    14. filename='D:\DB\HMI_主件.mdf',--主数据文件名
    15. --数据库初始文件大小(一定要根据你的实际生产需求来定)
    16. size=20MB,
    17. --数据文件增值量(也要参考文件本身大小)
    18. filegrowth=1MB
    19. )
    20. ,
    21. (
    22. name='HMI_副',
    23. filename='D:\DB\HMI_副件.ndf',--次要数据文件名
    24. size=20MB,
    25. filegrowth=1MB
    26. )
    27. log on
    28. (
    29. name='HMI_日志',
    30. filename='D:\DB\HMI_日志log.ldf',--日志文件名
    31. size=10MB,
    32. filegrowth=1MB
    33. )
    34. go

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

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

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

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

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

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

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

    1. if exists (select * from sysobjects where name='CourseCategory')
    2. drop table CourseCategory
    3. go
    4. create table CourseCategory
    5. (
    6. CategoryId int identity(10,1) primary key,
    7. CategoryName varchar(20) not null
    8. )
    9. go

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

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

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

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

  • 相关阅读:
    基于微信奶茶外卖点餐小程序系统设计与实现 开题报告
    Java IO流:Buffered处理流、对象处理流
    微信小程序项目源码ssm超市购物系统小程序+后台管理系统|前后分离VUE含论文+PPT+源码
    JavaScript-DOM编程
    TiDB在科捷物流神州金库核心系统的应用与实践
    kubernetes-Service
    【每日一题】根据规则将箱子分类
    Python组合问题
    Cholesterol-PEG-Thiol 胆固醇-聚乙二醇-巯基制备金纳米颗粒用
    微信小程序上拉触底事件
  • 原文地址:https://blog.csdn.net/cfqq1989/article/details/126935316