SQL之数据定义、数据操纵

  根据SQL的功能(数据定义、数据操纵、数据查询、数据控制)给大家依次例举了一些SQL的常用语法格式以及实例,希望能对各位初识SQL的伙伴一些帮助。由于篇幅原因,本文只介绍数据定义与数据操纵部分。

数据定义:

用于定义数据库、基本表等机构,基本命令包括:create、drop、alter。

先讲一下命令的用法:

命令功能
create database 库名创建数据库
create table 表名 (列名1 类型1 [约束列1],
列名2 类型2 [约束列2],
…)
创建数据表
drop table 表名删除表
alter table 表名 修改内容修改表结构(alter后面可以接的命令直接在实例里举出)

实例1:

创建数据库与基本表

建立“Practice”数据库,建立“student”数据表(结构如下):

idnameagesex
int(5)char(5)int(3)char(2)
主键非空
create database practice;  -- 创建数据库

use practice;  -- 选择要操作的数据库

create table student (id int(5) primary key,
					  name char(5) not null,
					  age char(3),sex char(2));    -- 创建表
desc student;  -- 查看数据表结构
					  
/***注意每条SQL语句的结尾要加分号,在SQL里面分号是一条语句结束的标志***/    

逐条运行的结果是这样的:

mysql> create database practice;  -- 创建数据库
Query OK, 1 row affected (0.01 sec)

mysql> use practice;  -- 选择要操作的数据库
Database changed
mysql> create table student (id int(5) primary key,
 ->   name char(5) not null,
 ->   age char(3),sex char(2));    -- 创建表
Query OK, 0 rows affected (0.34 sec)

mysql> desc student;  -- 查看数据表结构
+-------+---------+------+-----+---------+-------+
| Field | Type    | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| id    | int(5)  | NO   | PRI | NULL    |       |
| name  | char(5) | NO   |     | NULL    |       |
| age   | char(3) | YES  |     | NULL    |       |
| sex   | char(2) | YES  |     | NULL    |       |
+-------+---------+------+-----+---------+-------+
4 rows in set (0.01 sec)

  drop table 删除表,直接用就可以了,没有那么多弯弯绕绕的,简单易懂,所以就略过了。但是值得注意的是drop与delete的区别,drop是删除表,delete是删除表中的记录。其语法格式在之后的数据操纵中再向大家讲明。

  alter table 用于对表的结构进行修改,可以添加、删除字段:
添加字段:

alter table student add address char(50);  -- 添加地址字段
alter table student drop sex; -- 删除性别字段

结果是这样的:

mysql> desc student;
+---------+----------+------+-----+---------+-------+
| Field   | Type     | Null | Key | Default | Extra |
+---------+----------+------+-----+---------+-------+
| id      | int(5)   | NO   | PRI | NULL    |       |
| name    | char(5)  | NO   |     | NULL    |       |
| age     | char(3)  | YES  |     | NULL    |       |
| address | char(50) | YES  |     | NULL    |       |
+---------+----------+------+-----+---------+-------+

当然alter还可以对字段的数据类型等进行设置,感兴趣的朋友可以自己再去了解一下。

数据操纵:

数据操纵可以分为数据查询和数据跟新两类,数据更新又分为插入、删除和修改,基本命令如下:

命令功能
insert into 表名(字段1,字段2, …) values (值1,值2,…)插入记录
update 表名 set 列名 = 新值 where 列名 = 某值跟新符合条件的记录
delete from 表名 where 列名 = 值删除符合条件的记录

  insert 用于向表中插入记录,可以直接插入,也可以插入到指定列,两者的写法稍有不同,会在实例中给出。还有值得注意的是delete与drop的区别,上文中也有提到,delete的操作对象是表中的记录,而drop的操作对象是表结构。

实例2:

插入、跟新、删除表中的记录

向“student”表中插入一条、多条记录,跟新记录属性,删除记录

INSERT INTO student(id,NAME,age,address) VALUES(1,'李涵','15',''); -- 插入单条记录

INSERT INTO student(id,NAME,age,address) VALUES(2,'张涵','20',''),(3,'王珂','21','上海'),(4,'彭军','20','北京'); -- 插入多条记录

UPDATE student SET age='25' WHERE NAME='彭军'; -- 跟新记录(将彭军的年龄改为25)

DELETE FROM student WHERE NAME='王珂'; -- 删除记录

结果如下:

mysql> insert into student(id,name,age,address) values(1,'李涵','15','');
Query OK, 1 row affected (0.14 sec)

mysql> insert into student(id,name,age,address) values(2,'张涵','20',''),(3,'王珂','21','上海'),(4,'彭军','20','北京');
Query OK, 3 rows affected (0.08 sec)
Records: 3  Duplicates: 0  Warnings: 0

mysql> UPDATE student SET age='25' WHERE NAME='彭军';
Query OK, 1 row affected (0.10 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> UPDATE student SET age='25' WHERE NAME='彭军'; -- 跟新记录(将彭军的年龄改为25)
Query OK, 0 rows affected (0.00 sec)
Rows matched: 1  Changed: 0  Warnings: 0

mysql> DELETE FROM student WHERE NAME='王珂'; -- 删除记录
Query OK, 1 row affected (0.11 sec)

mysql> select * from student;
+----+--------+------+---------+
| id | name   | age  | address |
+----+--------+------+---------+
|  1 | 李涵   | 15   |         |
|  2 | 张涵   | 20   |         |
|  4 | 彭军   | 25   | 北京    |
+----+--------+------+---------+
3 rows in set (0.00 sec)
  • 7
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
数据定义数据操作是数据库管理系统中的两个基本概念。数据定义是指定义和管理数据库中的数据结构,包括表格、视图、索引、约束等。数据操作是指对数据库中的数据进行增、删、改、查等操作。 下面是一个简单的数据定义数据操作实验,以MySQL数据库为例: 1. 数据定义实验 (1)创建数据库 在MySQL中,可以使用CREATE DATABASE语句来创建一个新的数据库。例如,创建一个名为mydatabase的数据库: ``` CREATE DATABASE mydatabase; ``` (2)创建表格 在MySQL中,可以使用CREATE TABLE语句来创建一个新的表格。例如,创建一个名为students的表格,包含id(学号)、name(姓名)、age(年龄)和gender(性别)四个字段: ``` CREATE TABLE students ( id INT NOT NULL, name VARCHAR(50) NOT NULL, age INT NOT NULL, gender VARCHAR(10) NOT NULL, PRIMARY KEY (id) ); ``` (3)插入数据 在MySQL中,可以使用INSERT INTO语句来向表格中插入数据。例如,向students表格中插入一条记录: ``` INSERT INTO students (id, name, age, gender) VALUES (1001, '张三', 20, '男'); ``` 2. 数据操作实验 (1)查询数据 在MySQL中,可以使用SELECT语句来查询表格中的数据。例如,查询students表格中所有记录的id和name字段: ``` SELECT id, name FROM students; ``` (2)更新数据 在MySQL中,可以使用UPDATE语句来更新表格中的数据。例如,将students表格中id为1001的记录的age字段更新为21: ``` UPDATE students SET age = 21 WHERE id = 1001; ``` (3)删除数据 在MySQL中,可以使用DELETE语句来删除表格中的数据。例如,删除students表格中id为1001的记录: ``` DELETE FROM students WHERE id = 1001; ``` 以上就是一个简单的数据定义数据操作实验。在实际应用中,还需要掌握更多的SQL语句和技巧来管理和操作数据库

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值