【数据库】SQL基础

数据库

创建表 create table

1、创建表的格式
create table 表名
(
列名称1 数据类型,
列名称2 数据类型,
列名称3 数据类型,
...
)
2、添加条件

①设置此列是否可以为空,如果此列必须要填入数据则要在 列名称后面添加not null 即

列名称1 数据类型 not null

②添加主键的两种格式

<1>列名称1 数据类型 primary key
<2> primary key(列名称1,...)

③添加外键的两种格式

<1> 列名称1 数据类型 references 参照表名称(列名称1)
<2> foreign key(列名称1,...) references 参照表名称(列名称1...

④数据的限制条件

列名称1 数据类型 check(列名称1 条件)
3、这里是一个例子

1、创建一个选课表E:学号,学期,课号,工号,平时成绩,考试成绩,总评成绩;(成绩范围1-100)
创建一个开课表O:学期,课号,工号,上课时间;

CREATE TABLE `E` (
    `xh`    char ( 20 ) NOT NULL,
    `xq`    char ( 20 ) NOT NULL,
    `kh`    char ( 20 ) NOT NULL,
    `gh`    char ( 20 ) NOT NULL,
    `pscj`  INTEGER CHECK(pscj between 1 and 100),
    `kscj`  INTEGER CHECK(kscj between 1 and 100),
    `zpcj`  INTEGER CHECK(zpcj between 1 and 100),
    FOREIGN KEY(`xh`) REFERENCES `S`(`xh`),
    PRIMARY KEY(`xh`,`xq`,`kh`,`gh`),
    FOREIGN KEY(`xq`,`kh`,`gh`) REFERENCES `O`(`xq`,`kh`,`gh`)
);
)
CREATE TABLE `O` (
    `xq`    char ( 20 ) NOT NULL,
    `kh`    char ( 20 ) NOT NULL,
    `gh`    char ( 20 ) NOT NULL,
    `sksj`  char ( 20 ) NOT NULL,
    FOREIGN KEY(`kh`) REFERENCES `C`(`kh`),
    FOREIGN KEY(`gh`) REFERENCES `T`(`gh`),
    PRIMARY KEY(`xq`,`kh`,`gh`)
);
4、我在创建表时出现的问题

在设置E表的外键时我刚开始写的是foreign key(xq) references O(xq),只要插入数据时就会说E表和O表mismatch。

所以在设置外键时一定要注意设的外键是参照的那个表的所有主键

插入数据 insert into

1、插入数据的格式
insert into 表名(列表名称1,列表名称2...) values (值1,值2...

给表的每列都加数据时可以把列表名称省略

建立索引 create index

1、格式
create index 索引名称 on 表名
(
  列表名称1 ASC
  列表名称2 DESC
)

ASC为升序,DESC为降序

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值