DDL:建立数据库
DML:插入、删除、修改数据
DQL:查询
DCL:存放权限
操作:T-sql(新建查询):
插入
使用values可输入默认值:default(不报错)
存放单行数据:
insert into 表名(列名1,列名2...)
values (值1,值2...)
存放多行数据:
1.insert into 表名 (列名1,列名2...)
select (值1,值2...)
select (值3,值4...)
2.insert into 表名(列名1,列名2...)
values (值1,值2...),
(值3,值4...),
(值5,值6...)
复制School(原有的)的表(编辑): 只执行一次哦!
select 表名.列名1,表名.列名2... 注:School的列名(原表名)
into 新表名 注:Schooli
from 表名
复制School(原有的)的数据进入Schooli(新建的):
insert into 新表名(列名1,列名2) 注:新表名、列名
select 列名1,列名2 注:需要复制到Schooli的列名(原列名)
from 原表名
删除
方法一:delete from 表名 where (SchoolName=’凤阳中学‘’) 列名=‘值’ 注:()写要删除需满足的条件
方法二:truncate table 表名/列名 注:用truncate删除是粉碎性删除,不留痕迹,通常不使用
使用delete与truncate table的异同:
相同点:都只删数据类型不删表结构的
不同点:delete删除时要详细记录事务日记;
truncate table删除是很快,一旦使用很难恢复
修改
update 表名 set (SchoolName=‘云粉’)where (SchoolName=‘凤阳中学’)--在where()改成set() 列名=‘值’
查询、别名 和排序:
select 列名1 by 别名,列名2 by 别名 选择需查询的列名、select 列名 by 别名表示起别名
from 表名 需查询的表名
where 条件表达式 查询条件
order by ;列名(asc(默认,从小到大)/desc(从大到小)) 选择排序的列名(在前面的列名优先排序)
字符串函数:
函数名 描述 示例
CHARINDEX 寻找一个指定的字符串在另一个字符串中的起始位置 SELECT CHARINDEX('JBNS'(查询的字符串),'My Jbns Course'(被查询的字符串),1(从第几位查起) )返回:4(查到的位置,从1开始)
LEN 返回传递给它的字符串长度 SELECT LEN('SQL Server课程')返回:13(字符串长度)
UPPER 把传递给它的字符串转换为大写 SELECT UPPER('sql server课程')返回:SQL SERVER课程
LTRIM 清除字符左边的空格 SELECT LTRIM (' 周智宇 ')返回:周智宇 (后面的空格保留)
RTRIM 清除字符右边的空格 SELECT RTRIM (' 周智宇 ')返回: 周智宇(前面的空格保留)
RIGHT/LIFT 从字符串右边/左边返回指定数目的字符 SELECT RIGHT('买卖提.吐尔松',3(返回位数))返回:吐尔松
REPLACE 替换一个字符串中的字符 SELECT REPLACE('莫乐可切.杨可','可'(查找字符),'兰'(替换字符))返回:莫乐兰切.杨兰
STUFF 在一个字符串中,删除指定长度的字符,并在该位置插入一个新的字符串 SELECT STUFF('ABCDEFG', 2(从第几位删除), 3(删除几个字节), '我的音乐我的世界'(替换字节))返回:A我的音乐我的世界EFG