数据库原理及应用(三)——SQL语句(1)

321 阅读2分钟

这是我参与更文挑战的第3天,活动详情查看: 更文挑战

1 数据库的创建

语法: CREATE DATABASE < 数据库名称 > ;

例子: CREATE DATABASE student;

2 表的创建

语法:

CREATE TABLE < 表名 >
( < 列名 > < 数据类型 > < 该列所需约束 > ,
  < 列名 > < 数据类型 > < 该列所需约束 > ,
  .
  .
  .
  < 该表的约束 > , < 该表的约束 > ,……);

例子:

CREATE TABLE product(
     stu_id CHAR(10) NOT NULL, 
     stu_name VARCHAR(50) NOT NULL, 
     stu_age INT,  
     PRIMARY KEY(stu_id)
 )  ;


3 命名规则

  1. 数据库命名规范 采用26个英文字母 (区分大小写) 和0-9的自然数 (一般不需要) 加上下划线 ‘_’ 组成。

  2. 表命名规范 (1)采用26字母和0-9的自然数(一般不需要)加上下划线 ‘_’ 组成.

(2)不能使用关键字

(3)表名称不要太长

  1. 字段命名规范

(1)采用26字母和0-9的自然数(一般不使用)加上下划线 ‘_’ 组成。

(2)静止使用数据库关键字。

(3)字段名称一般采用名词或动宾短语。

4 表的删除和更新

  • 删除表:DROP TABLE < 表名 > ;

  • 删除student表:DROP TABLE student

  • 添加列:ALTER TABLE < 表名 > ADD COLUMN < 列的定义 >;

  • 添加一列可以存储10位的字符串的 stu_name 列 ALTER TABLE student ADD COLUMN stu_name CHAR(10);

  • 删除列:ALTER TABLE < 表名 > DROP COLUMN < 列名 >;

  • 删除 stu_name 列:ALTER TABLE student DROP COLUMN stu_name

!!! ALTER TABLE 语句和 DROP TABLE 语句一样,执行之后无法恢复

5 数据的更新

~1 修改数据

UPDATE <表名>

SET <列名1> = <表达式1>[,<列名2>=<表达式2>...]

[WHERE <条件>];

例子: 将学号为“a001”的学生英语成绩改为88

UPDATE STUDENT
SET ENGLISH = 89
WHERE SNO='a001';

~2 插入数据

INSERT INTO <表名> (列1, 列2, 列3, ……) VALUES (值1, 值2, 值3, ……);

例子: 将新的学生(a089,19,男,cs)插入到学生表Student中

INSERT 
INTO Student
VALUES('a089',19,'男','cs');

原则上,执行一次 INSERT 语句会插入一行数据。插入多行时,通常需要循环执行相应次数的 INSERT 语句。其实很多 RDBMS 都支持一次插入多行数据

INSERT INTO productins VALUES ('4', '打孔器', 
'办公用品', 600, 320, '2010-09-11'),
('5', 'T恤', '服装', 3000, 2490, NULL),
('7', '刀', '厨具', 2000, 2700, '2020-09-20');  

~3 删除数据

DELETE
FROM <表名>
[WHERE <条件>];

例子:删除学生表所有信息

DELETE 
FROM S;