成长之路第一天之数据库

数据库操作

--创建数据库
 create database MyDatabaseOne
--删除数据库 
 drop database MyDatabaseOne
--创建数据库时候设置一些参数选项
 create database MyDatabaseOne
on primary
(
        --配置主数据文件选项
        name='MyDatabaseOne',--主数据文件的逻辑名
        filename='c:\MyDatabaseOne.mdf',--主数据文件的实际保存路径
        size=5MB,
        maxsize=150MB,
        filegrowth=20%

 log on
(
        --配置日志文件的选项
        name='MyDatabaseOne_log',--日志文件的逻辑名称
        filename='c:\MyDatabaseOne_log.ldf',--日志文件的实际保存路径
        size=5mb,--日志文件的初始大小
        filegrowth=5mb

表的操作

--查询数据
select 列1,列2 from 表名 where 条件
     as为列起别名
     select tsid as 学生编号 from tbstudent
     top获取前几条数据,top一般都与排序关键字order by连用order by  默认降序(asc)设置升序(desc)
     select top 10 percent *from student order by age desc   --获取最大的10%    percent设置百分比
     distinct去除重复数据
     select distinct sName from student--去除重名的学生
--插入数据
insert into 表名(列1,列2,...) values(值1,值2,...)
--更新数据
update 表名 set 列=新值,列2=新值,...where 条件
--删除数据 
delete  from 表名 where 条件
--删除列 
alter table 表名 drop column 列名
--增加列
alter table 表名 add 列名 列数据类型
--修改列数据类型
alter table 表名 alter column 列名 新数据类型
--为列增加主键约束
alter table 表名 add constraint PK_表名_列名 primary key(列名) --PK_表名_列名为主键名称
--非空约束
alter table 表名 alter column 列名 列数据类型 not null
--唯一约束
alter table 表名 add constraint UQ_表名_列名 unique(列名)
--默认约束
alter table 表名 add constraint DF_表名_列名 default (默认值--字符创加单引号) for 列名
--检查约束
alter table 表名 add constraint CK_表名_列名 check(条件)--例(列名=‘男’ or 列名=‘女’)
--外键约束
alter table 外键表名 add constraint  FK_表名_列名 foreign key(外键列名) references 主键表名(主键列名)
聚合函数
 MAX(最大值)、MIN(最小值)、AVG(平均值)、SUM(求和)、COUNT(数量:记录的条数)
聚合函数对null值不计算
如果一行的数据都是null,count(*)包含对空值行,重复行的统计 
select sum(age) as 年龄总和 from student
select count(*) as 总记录条数 from student
select max(age) as 年龄最大 from student
select avg(age) as 平均年龄 from student
模糊查询
通配符:
_(下划线):匹配任意一个字符
select * from student where name like '张_' --查询姓张(注意只匹配一个,所以名字必须是两个字姓张的)
%(百分号):匹配任意多个任意字符
select * from student where name like '张%' --查询姓张(注意匹配多个个,所以名字是任意长度)
select * from student where name like '张%' and len(name)=2 --查询姓张(注意名字长度为2) 
[ ](中括号):表示筛选
select * from student where name like '张[0-9]妹' --查询姓张加0-9任意数字加妹
^(非符号):表示非
select * from student where name like '张[^0-9]妹' --查询姓张非0-9任意数字加妹
空值处理
select * from student where age is null--判断空值用is 不能用等于号判断非空值用is not null

posted @ 2017-05-12 10:41  愿赌不服输  阅读(73)  评论(0)    收藏  举报