
SQL Sever学习笔记一——SQL
SQL是为操作数据库而开发的语言
发布日期:2021-05-07 08:52:01
浏览次数:22
分类:原创文章
本文共 2388 字,大约阅读时间需要 7 分钟。
SQL
SQL是为操作数据库而开发的语言
1.SQL语句及种类
SQL语句可以分为以下三类
- DDL(Data Definition Language,数据定义语言)用来创建或者删除存储数据用的数据库以及数据库中的表等对象。DDL 包含以下几种指令:
- CREATE :创建数据库和表等对象
- DROP : 删除数据库和表等对象
- ALTER : 修改数据库和表等对象的结构
- DML(Data Manipulation Language,数据操纵语言) 用来查询或者变更表中的记录。SQL语句中使用的最多。DML 包含以下几种指令:
- SELECT :查询表中的数据
- INSERT :向表中插入新数据
- UPDATE :更新表中的数据
- DELETE :删除表中的数据
- DCL(Data Control Language,数据控制语言) 用来确认或者取消对数据库中的数据进行的变更。除此之外,还可以对 RDBMS 的用户是否有权限操作数据库中的对象(数据库表等)进行设定。DCL 包含以下几种指令:
- COMMIT : 确认对数据库中的数据进行的变更
- ROLLBACK :取消对数据库中的数据进行的变更
- GRANT :赋予用户操作权限
- REVOKE:取消用户的操作权限
2.SQL的基本书写规则
1.SQL语句以分号(;)结尾
2.SQL语句不区分大小写,但是输入数据区分大小写
3.字符串和日期常数需要使用单引号括起来
4.单词需要用半角空格或者换行来分隔
5.注释符号:
- 单行注释:–
- 多行注释:/* */
3.表的创建与操作(插入、更新、修改、删除)
在创建表之前,需要先创建用来存储表的数据库
1、假设要创造一个名为product的表,先创建用来存储表的数据库,取名为shop:
create database shop;
2、创建product表,列名各种约束设置如下:
create table Product(product_id char(4) NOT NULL,product_name varchar(100) not null,product_type varchar(32) not null,sale_price integer ,purchase_price integer ,regist_date date ,primary key(product_id));--指定product_id为主键,可以通过该列提取数据
第一个元素为列名,第二个元素为数据类型的指定,第三个元素为对列中存储的数据进行限制如:not null表示数据不能为空。
数据类型有以下:
integer | 整数型数据 |
---|---|
char | 定长字符串型 |
varchar | 可变长字符串型 |
date | 日期型 |
3、insert into < table >(column1,column2,…) values (value1,value2,…) 向表中插入数据,有三种写法:
START TRANSACTION-- 事务开始语句,sql中可省略--依次单行插入INSERT INTO product VALUES ('0001', 'T恤' ,'衣服', 1000, 500, '2009-09-20');INSERT INTO product VALUES ('0002', '打孔器', '办公用品', 500, 320, '2009-09-11');--多行插入INSERT INTO product VALUES ('0003', '运动T恤', '衣服', 4000, 2800, NULL),('0004', '菜刀', '厨房用具', 3000, 2800, '2009-09-20'),('0005', '高压锅', '厨房用具', 6800, 5000, '2009-01-15'),('0006', '叉子', '厨房用具', 500, NULL, '2009-09-20'),('0007', '擦菜板', '厨房用具', 880, 790, '2008-04-28');--某列数据为空,插入的时候可以省略INSERT INTO product(product_id,product_name,product_type,sale_price,regist_date) VALUES ('0008', '圆珠笔', '办公用品', 100, '2009-11-11');-- 只插入这5列的数据COMMIT;-- 事务确认处理语句,sql中可省略
注意想插入null的列不能有not null的约束;若某列没有not null的限制且不插入该列,那么此列数据为null(如上述第三种方法中purchase_price就是null)。
4、查看表
select * from Product;
5、表的更新
5-1 添加列,删除列
- 添加,删除一列
alter table Product add product_name_pinyin varchar(100);alter table Product drop column product_name_pinyin;
- 添加,删除多列
alter table product add MaleCount varchar(50) null,FemaleCount varchar(50) null;alter table product drop MaleCount, drop FemaleCount;
其中colum可以省略不写
5-2 变更表名
alter table product rename to Product;
6、表和数据库的删除(不可恢复):
drop table Product;drop database shop;
发表评论
最新留言
能坚持,总会有不一样的收获!
[***.219.124.196]2025年04月06日 22时19分10秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
python-day3 for语句完整使用
2021-05-08
spring 程序开发步骤
2021-05-08
java基础知识:构造函数
2021-05-08
java基础知识:封装
2021-05-08
linux下安装tomcat服务器
2021-05-08
mysql 中的数据实现递归查询
2021-05-08
linux下远程上传命令scp
2021-05-08
(四)块设备文件
2021-05-08
可重入和不可重入函数
2021-05-08
(2.1)关系模型之关系结构和约束
2021-05-08
DBA 技能图谱1.0
2021-05-08
深入学习C++
2021-05-08
【HTTP】HTTP状态码图解
2021-05-08
《图解TCP/IP》学习——第六章TCP与UDP
2021-05-08
双系统基础上装三系统教程
2021-05-08
Android低级错误踩坑之Application
2021-05-08
android自定义无边框无标题的DialogFragment替代dialog
2021-05-08
获取android的所有挂载路径(转)
2021-05-08
记录一下写的一个java生成不带重复数的随机数组(算法没有详细设计,只实现功能)
2021-05-08