sql 数据库实验1

#sql#

#数据库实验#

2023.10.9

1-1:创建test1_student表

        创建学生信息表(学生编号、姓名、性别、年龄、出生日期、院系名称、班级):
test1_student:sid char 12 not null、name varchar 10 not null、sex char 2、age int、
birthday date、dname varchar 30、class varchar 10。
      建表语句常见错误如下:
      关键词拼写错误,少关键词、少逗号、少括号。

create table test1_student(
       sid char(12) not null,
       name varchar(10) not null,
       sex char(2),
       age int,
       birthday date,
       dname varchar(30),
       class varchar(10)
);

        char(n)为具有用户指定长度n的固定长度的字符串

        varchar(n)为具有用户指定的最大长度n的可变长度的字符串

        

1-2:创建test1_course表

        创建课程信息表(仅考虑一门课程最多一个先行课的情况):
课程编号、课程名称、先行课编号、学分
test1_course:cid char 6 not null、name varchar 40 not null、fcid char 6、
credit numeric 4,1(其中4代表总长度,1代表小数点后面长度)。

create table test1_course(
       cid char(6) not null,
       name varchar(40) not null,
       fcid char(6),
      credit numeric(4,1)
)

        numeric(p,d)为具有用户指定精度的定点数,这个数字有p位数字(加上一个符号位),并且小数点右边有p位中的d位数字。例如:numeric(3,1)可以精确储存44.5,但不能精确存储444.5或0.32

1-3:创建test1_student_course表

        创建学生选课信息表(学号、课程号、成绩、教师编号、选课时间)
test1_student_course:sid char 12 not null、cid char 6 not null、
score numeric 5,1(其中5代表总长度,1代表小数点后面长度)、tid char 6, sctime date

create table test1_student_course(
      sid char(12) not null,
      cid char(6) not null,
      score numeric(5,1),
      tid char(6),
      sctime date
);

        date类型用于存储日期值。它表示一个特定的日期,包括年、月和日。date类型的格式通常是’YYYY-MM-DD’,其中YYYY表示4位数的年份,MM表示2位数的月份,DD表示2位数的日期。

1-4:表test1_student插入2行数据

        学号 姓名 性别 年龄 出生日期 院系名称 班级
201800020101 王欣 女 21 1994-02-02 计算机学院 2010
201800020102 李华 女 20 1995-03-03 软件学院    2009
特别提醒:
1、insert语句1次只能插入1行数据,插入多行有特殊语法,不要自创插入多行的格式。
2、引号一定也采用英文单引号。
3、输入日期类型数据的格式:
insert into t1 values(200700030101,'赵中华','男',19,to_date('20120202','yyyymmdd'),'计算机学院','2010')

insert into test1_student 
    values('201800020101','王欣','女',21,to_date('19940202','yyyymmdd'),'计算机学院','2010');
 
insert into test1_student 
    values('201800020102','李华','女',20,to_date('19950303','yyyymmdd'),'软件学院','2009');

        insert into 表 values()用于向表中插入一个元组;也允许在insert语句中指定属性,在表后的()内指出属性,例如

        insert into course(course_id,title,dept_name,credits)

        values(...)

1-5:表test1_course插入2行数据

        给表test1_course插入如下2行数据。
课程号  课程名       先行课程号 学分
300001 数据结构                          2
300002 数据库      300001         2.5
特别提醒:
1、插入空值使用null
2、一次只能插入一行数据

insert into test1_course
    values('800001','数据结构',null,2);
insert into test1_course
    values('800002','数据库',800001,2.5)

1-6:表test1_student_course插入2行数据

        给表test1_student_course插入如下2行数据。
学号 课程号 成绩 教师编号 选课时间
201800020101 300001 91.5 200101 2009-07-15 09:09:09
201800020101 300002 92.6 200102 2009-07-15 10:10:10
特别提醒:
1、一次只能插入一行数据
2、日期时间输入函数 to_date('2020-01-03 15-26-26','yyyy-mm-dd hh24-mi-ss')

insert into test1_student_course values
     ('201800020101','300001',91.5,'200101',
      to_date(' 2009-07-15 09:09:09','yyyy-mm-dd hh24-mi-ss'));
 
insert into test1_student_course values
     ('201800020101','300002',92.6,'200102',
      to_date(' 2009-07-15 10:10:10','yyyy-mm-dd hh24-mi-ss'));

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值