起名C语言第一遍博客作业

一、创建表

一,PTA实验作业

CREATE TABLE  <表名>

题材1.温度转换

主旨须求编写程序,总括华氏温度150°F对应的摄氏温度。总计公式:C=5×(F−32)/9,式中:C表示摄氏温度,F表示华氏温度,输出数据要求为整型。

(<列名><数据类型>[列级完整性约束规范]

1.实验代码

  int fahr,celsius;
  fahr=150;
  celsius=5*(fahr-32)/9;
  printf("fahr = 150, celsius = %d",celsius);

  [,<列名>
<数据类型>[列级完整性约束原则]]

2.统筹思路

  • 首先步:定义多少个整型变量fahr,celsius。
  • 第二步:赋值fahr=150。
  • 第三步:计算C=5×(F−32)/9
  • 第肆步:输出fahr = 150, celsius = 统计所得摄氏温度的整数值。

     …

3.宗旨调试进度遭逢难题及解决办法

  • (1).格式错误:空格与难题输出不符。
    化解办法:将难点输出格式复制下来,举办修改。
  • (2).编译错误: scanf("%d",a)
    解决办法:输入要加&号,句末有;号,并且都是英文格式。

  [,表级完整性约束原则]);

4.宗旨PTA实验结果

起名 1

只要完整性约束原则涉及到该表的多少个属性列,则必须定义在表级上,否则既能够定义在列级也足以定义在表级

标题2.将x的平方赋值给y

假设x的值为3,计算x的平方并赋值给y,分别以“y = x ∗ x”和“x ∗ x =
y”的款型输出x和y的值。

例句:

1.试验代码

  int x=3;
  int y;
  y=x*x;
  printf("%d = %d * %d\n",y,x,x);
  printf("%d * %d = %d",x,x,y);

列级约束

2.企划思路

  • 首先步:定义两个整形变量x,y。
  • 第二步:赋值x=3。
  • 第三步:将x*x赋值给y。
  • 第肆步:按题目需求输出y = x * x和x * x = y。

create table student(

3.主题调试进度蒙受难点及化解办法

  • (1).格式错误:输出答案未换行。
    消除办法:参与换行符\n

id int identity(1,1) primary key,

4.核心PTA实验结果

起名 2

name varchar(20) not null,

题材3. 是否太胖了

轶事1个人的规范体重应该是其身高(单位:毫米)减去100、再乘以0.9所获取的公斤数。已知十两是公斤的两倍。现给定某人身高,请您统计其专业体重应该是有点?(顺便也暗中给协调算一下呢……)

sex  CHAR(2)

1.试行代码

  double H=0;
  scanf("%lf",&H);
  printf("%.1f\n",(H-100)*0.9*2);

)

2.陈设思路

  • 先是步:定义双精度浮点型变量H放身高。
  • 第二步:输入H。
  • 其三步:输出标准体重(H-100)0.92。

表级约束:Constraint为约束起名

3.主旨调试进度遇到难点及消除办法

  • (1).答案错误:输出值没有乘二。
    消除办法:认真审题
  • (2).格式控制字符错误
    化解办法:int(%d);double(%lf);float(%f);char(%c);浮点型保留n位小数(%.nf)

CREATE TABLE Student

4.大旨PTA实验结果

起名 3

(Sno  CHAR(9) ,

难点4. 输出各位数字

给定多少个几人正整数,输出其百位数字、十二个人数字及个位数字。

Sname  varchar(20) ,

1.试验代码

  int n;
  int a,b,c;
  scanf("%d",&n);
  a=n/100;
  b=n/10%10;
  c=n%10;
  printf("%d,%d,%d",a,b,c);

Ssex  CHAR(2) ,

2.企划思路

  • 首先步:定义多个整型变量n,a,b,c分别寄存2个几个人正整数百位数字,十位数字和个位数字。
  • 其次步:输入3个几人正整数n。
  • 其三步:分别赋值a=n/100;b=n/十分一10;c=n%10。
  • 第伍步:按题目输出格式输出a,b,c。

Sage  SMALLINT,

3.大旨调试进度遭受难题及化解办法

  • (1).不会编写:刚看到标题不晓得要怎么着计算出多个位数对应的数字。
    消除办法:先有在书上查找,并从未找到,又去百度查到了\号用来取商,%号用来求余。
  • (2)..输出答案错误:printf("%d%d%d",a,b,c);运作结果八个数字间无距离起名 4
    消除办法:printf("%d,%d,%d",a,b,c);
    起名 5

Constraint PK_S PRIMARY KEY(Sno)

4.大旨PTA实验结果

起名 6

);

二、截图本周标题集的PTA提交列表及最后名次。

CREATE TABLE SC

PTA提交列表:

起名 7

起名 8

起名 9

           (Sno   CHAR(9)  NOT NULL,

PTA排名:

起名 10

            Cno  CHAR(4)  NOT NULL, 

三、本周求学统计

            Grade    INT,

1.您学会了什么样?

  • scanf语句的细节难题:
    scanf("%d,%d",&a,&b);输入时必要加,号。
    scanf("%d\n",&a);输入后无法加\n换字符,否则输入三个数后,它是不会立刻突显的,要等在吸收到三个非(空格、制表符、回车)的输入scanf语句才会终结。
  • printf语句的细节难题:
    printf("%d,%d,%d",a,b,c);输出时不过将%d换到结果,别的不变。
  • 学会了大旨的程序设计语法及骨干流程,如scanf,printf语句。
  • 学会编写出能落到实处不难多少处理的次第。
  • 学会编写程序前写出算法来增援整理思路。
  • 学会四种常用的数据类型以及相应的格式控制符。

Constraint PK_SC PRIMARY KEY (Sno,Cno)

2.本周的始末,你还不会什么?

  • 何以将算法完善以及更好的抒发出来。
  • 编制代码时怎么下笔使社团清晰美观。
  • 在给变量起名时选出合适的,做到见名知义。

);

3.你相逢什么困难,打算怎么消除?

  • 预习作业中的一些概念难点无法很好地解答,很麻烦。
    多从教材中找答案再加上自身的眼光,并且马上记下本人的可疑,在课堂上根本化解那么些标题。
  • 分辨不出PTA中出现的不一致错误类型。
    遇见错误及时做速记,并且七日一小结加深印象下跌错误率。
  • 次第书写不够规范雅观。
    不断尝试与立异,并且以书本上的例题为标准来看。

列级unique约束

CREATE TABLE Student (

    Sno   CHAR(9) PRIMARY KEY,

    Sname VARCHAR(20) Constraint UQ_s_sname UNIQUE,

    Ssex    CHAR(2),  Sage   SMALLINT,

Sdept  CHAR(15)

);

 

CREATE TABLE Student

        (Sno  CHAR(9) PRIMARY KEY,

          Sname varchar(20) NOT NULL,                    

          Ssex  CHAR(2) ,               

          Sage  SMALLINT,

          Sdept  CHAR(15) ,

          UNIQUE(Sname),

          CHECK (Ssex IN (‘男’,‘女’) )

);

 

CREATE TABLE  Course

 (     Cno  char(4) ,

        Cname  varchar(40),           

        Cpno  char(4)  REFERENCES  Course(Cno) ,

        Ccredit  int,

        Primary Key(Cno)

 );

CREATE TABLE  SC

       (Sno  CHAR(9) REFERENCES Student(Sno) ,

       Cno  CHAR(4), 

       Grade INT DEFAULT 0,

       PRIMARY KEY (Sno,Cno), 

Constraint FK_sc_cno  foreign key (cno) references course(cno)

);

 二、约束类型

(1) PRIMARY KEY约束

(2)NULL/NOT NULL约束

(3)UNIQUE约束

(4) CHECK完整性约束

         检查字段值所允许的限制

(5) FOREIGN KEY约束

(6)DEFAULT 约束

         
如若用户在插入新行时没有浮现为列提供数据,系统将暗中认同值赋给该列

 

三、数据类型:

SQL中域的定义用数据类型来贯彻

数据类型

含义

CHAR(n)

长度为n的定长字符串

VARCHAR(n)

最大长度为n的变长字符串

INT

长整数(也可以写作INTEGER)

SMALLINT

短整数

NUMERIC(p,d)

定点数,由p位数字(不包括符号、小数点)组成,小数后面有d位数字

REAL

取决于机器精度的浮点数

Double Precision

取决于机器精度的双精度浮点数

FLOAT(n)

浮点数,精度至少为n位数字

DATE

日期,包含年、月、日,格式为YYYY-MM-DD

TIME

时间,包含一日的时、分、秒,格式为HH:MM:SS

 

四、修改基本表

ALTER TABLE <表名>

    [ADD
<新列名><数据类型>[ <完整性约束定义]]

    [ ADD  <表级完整性约束>
]

    [ ALTECRUISER COLUMN<列名>
<数据类型> ]]

    [ DROP <完整性约束定义>
];

  • 注意:

1.
选拔ADD格局扩展的新列自动填充NULL值,所以当表中有多少时扩大的新列不恐怕指定NOT
NULL约束

例句:

向Student表增加“入学时间”列,其数据类型为日期型。

 ALTER TABLE Student ADD S_entrance
Datetime;  //加列

ALTER TABLE Student ALTER COLUMN Sage
INT;   //修改列

ALTER TABLE Course ADD UNIQUE(Cname);    
 //加约束

  • 表中有数量时:

      Alter Table student ADD scome
date default to_date(‘2008-01-01′,’yyyy-mm-dd’);

 

五、删除基本表

DROP TABLE <表名>[RESTRICT|
CASCADE];

 1) REST奥迪Q3ICT:删除表是有限量的。

  • 欲删除的基本表不能被其他表的约束所引述
  • 假定存在依靠该表的对象,则此表不可以被删除

 2)
 CASCADE:删除该表没有范围。

  • 在剔除基本表的同时,相关的重视对象一起删除

例句:

DROP TABLE  Student  CASCADE ;

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图