一、SQL简介
1.1、简介
sql是指结构化查询语言,全称【Structured Query Language】,是一种ANSI【美国国家标准化组织】标准的计算机语言,用于数据库的处理操作。除了SQL标准之外,大部分SQL数据库程序都拥有他们自己的专有扩展。
1.2、SQL能做什么
①SQL面向数据库执行查询;
②SQL可从数据库取回数据;
③SQL可在数据库中插入新的记录;
④SQL可更新数据库中的数据;
⑤SQL可从数据库删除记录;
⑥SQL可创建新数据库;
⑦SQL可在数据库中创建新表;
⑧SQL可在数据库中创建存储过程;
⑨SQL可在数据库中创建视图;
⑩SQL可以设置表、存储过程和视图的权限;
二、基础语法
2.1、创建数据库
①语法【create database dbName】其中dbName是自己需要创建的数据库名称:可以任意取名,比如:testDB;
②示例:使用sql创建一个名为testDB的数据库:create database testDB;
2.2、选择数据库
①语法【use dbName】其中dbName是自己需要使用的数据库名称;
②示例:使用sql使用名为testDB的数据库:use testDB;
2.3、给数据库创建表
①语法【
create table personInfo
(
colum_name1 data_type(size),
colum_name2 data_type(size),
colum_name3 data_type(size),
......
);
】其中colum_name1是创建表的列名称,比如:name,sex,age等;data_type是数据库中支持的数据类型,比如:varchar(12),char(2),int等;size是数据类型的最大长度。
②示例:使用sql在testDB数据库中创建一个名为personInfo人员信息表,该表包含(人员编号、姓名、性别、年龄4列内容);说明:
1、其中编号是唯一编号,所以不能为空且需要设置为主键保证编号唯一性;
2、人员名称最长为4个汉字;
3、人员性别保证只能是“男”或“女”;
4、人员年龄是数字;
use testDB;
create table personInfo
(
id int not null primary key,
name varchar(8) not null,
sex char(2)check(sex='男' or sex='女') not null,
age int not null,
);
2.4、给数据库指定表添加内容
①语法【insert into tablename(colum_name1,colum_name2,colum_name3,......) values(value1,value2,value3,......);】其中tablename表示需要插入内容的表名称,colum_name1,colum_name2,colum_name3表示表的列名称,value1,value2,value3表示表中对应列的正确数据类型值。
②示例:使用sql在testDB数据库中的personInfo表中插入一条正确信息(编号是1,名称叫做周茜,性别女,年龄26);
use testDB;
insert into personInfo(id,name,sex,age) values (1,'周茜','女',26);
2.5、查询数据库中指定表的指定内容
①语法【select * from tablename】表示查询该表中所有列信息;【select colum_name1,colum_name2,colum_name3,...... from tablename】表示查询该表中指定列信息;【select * from tablename where select colum_name1=value1】表示根据某列某个条件查询到的所有人员信息,where表示条件相当于编程语言中的判断语句中if的功能,where后面的内容表示需要查询的条件。
②示例:
1、使用sql在testDB数据库中的personInfo表中查询所有列的所有数据
use testDB;
select * from personInfo;
结果如下:
2、使用sql在testDB数据库中的personInfo表中查询人员名称和性别的所有数据
use testDB;
select name,sex from personInfo;
结果如下:
3、使用sql在testDB数据库中的personInfo表中查询性别都是女的所有数据
use testDB;
select * from personInfo where sex='女';
结果如下:
2.6、更新数据库中指定表的指定内容
①语法【update tablename set colum_name1=value1,colum_name2=value2,colum_name3=value3...... where colum_name1=value1】表示更新指定表中的满足条件的一条或多条数据内容;其中tablename表示需要更新的表名称,colum_name1,colum_name2,colum_name3指表中列名称,where表示条件相当于编程语言中的判断语句中if的功能,where后面的内容表示需要更新的条件。
②示例:使用sql在testDB数据库中的personInfo表中更新名为李东晓的年龄为25
use testDB;
update personInfo set age=25 where name='李东晓';
2.7、删除数据库中指定表的指定内容
①语法【delete from tablename where colum_name1=value】表示删除指定表中的满足条件的一条或多条信息;其中tablename表示需要删除的表名称,where表示条件相当于编程语言中的判断语句中if的功能,where后面的内容表示需要删除的条件。【delete from tablename】表示删除指定表中的所有数据内容。
②示例:
1、使用sql在testDB数据库中的personInfo表中删除名为李开明的人员数据信息
use testDB;
delete from personInfo where name='李开明';
2、使用sql在testDB数据库中的personInfo表中删除所有的人员数据信息
use testDB;
delete from personInfo;
2.8、删除数据库中的指定表
①语法【drop table tablename】表示删除整个表和表中的所有数据内容;其中tablename表示需要删除的表的名称。
②示例:使用sql在testDB数据库中删除personInfo表和所有数据信息
use testDB;
drop table personInfo;
2.9、删除指定数据库
①语法【drop database dbname】表示删除数据库,其中dbname表示需要删除的数据库的名称。
②示例:使用sql删除testDB数据库。
drop database testDB;