SQL数据库工作的简历
“Kristyjin”通过精心收集,向本站投稿了12篇SQL数据库工作的简历,下面是小编为大家准备的SQL数据库工作的简历,欢迎阅读借鉴。
篇1:SQL数据库简历
本站推荐:数据库工程师简历范文,数据库工程师个人求职简历模板,数据库工程个人简历范文
SQL数据库简历模板 |
目前所在: 天河区 年 龄: 22
户口所在: 湛江 国 籍: 中国
婚姻状况: 未婚 民 族: 汉族
诚信徽章: 未申请 身 高: 173 cm
人才测评: 未测评 体 重: 53 kg
人才类型: 应届毕业生
应聘职位: 销售主管/销售代表/客户代表
工作年限: 1 职 称: 无职称
求职类型: 实习可到职日期: 随时
月薪要求: --3500 希望工作地区: 天河区,越秀区,海珠区
工作经历
依依服装店 起止年月:-03 ~ 2012-08
公司性质: 民营企业 所属行业:批发/零售
担任职位: 销售代表
工作描述: 负责店面销售情况,接待客户、介绍服装的'特色、销售。摆货等
离职原因: 要回家一段时间
粗茶香饭 起止年月:-07 ~ 2011-09
公司性质: 民营企业 所属行业:餐饮业
担任职位: 服务员
工作描述: 盛情款待新旧顾客,满足顾客的合理需求及要求,热情主动为顾客点菜,并准确无误的把顾客所需要的食物、饮料送到顾客的台面上
离职原因: 开学,回学校
毕业院校: 增城华立技师学院
最高学历: 大专 获得学位: 毕业日期: 2012-06
专 业 一: 软件开发 专 业 二: SQL数据库
起始年月 终止年月 学校(机构) 所学专业 获得证书 证书编号
语言能力:本文信息来源于大学生个人简历网,请注明!
外语: 其他 较差 粤语水平: 一般
其它外语能力:
国语水平: 良好
工作能力及其他专长
不怕吃苦,勇于面对压力、
个人自传
对事物有敏锐的洞察力;能很好得与人沟通,具有团队合作精神;对负责的工作会付出全部精力和热情,制定缜密计划,力争在最短时间内将目标达成;喜欢挑战,能在较短时间内适应高压力的工作
篇2:SQL数据库工作的简历
SQL数据库工作的简历
姓 名女士
性 别: 女
出生年月: 1991年7月 工作经验: 应届毕业生
毕业年月: XX年7月 最高学历: 大专
毕业学院: 常州信息职业技术学院 所修专业: 软件技术(强化英语)
居 住 地: 请选择 请选择 籍 贯: 请选择 请选择
求职概况 / 求职意向
职位类型: 全职
期望月薪: 1500-XX元
期望地点: 江苏省 苏州市 ,
期望职位: 软件测试员 sql数据库管理操作员 项目实践与管理
意向概述: 我会尽我所能为公司创造价值!请给我一个机会让我来实现!
校内奖励
获得时间 获得奖项 学校
XX年12月 荣誉证书 计算机软件学院
自我评价
细心,耐心,充满热情,具有很好的团队合作精神,喜欢挑战自我!
篇3:数据库经典SQL语句
下列语句部分是Mssql语句,不可以在access中使用。
SQL分类:
DDL―数据定义语言(CREATE,ALTER,DROP,DECLARE)
DML―数据操纵语言(SELECT,DELETE,UPDATE,INSERT)
DCL―数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)
首先,简要介绍基础语句:
1、说明:创建数据库
CREATE DATABASE database-name
2、说明:删除数据库
drop database dbname
3、说明:备份sql server
--- 创建备份数据的 device
USE master
EXEC sp_addumpdevice 'disk', 'testBack', 'c:mssql7backupMyNwind_1.dat'
--- 开始备份
BACKUP DATABASE pubs TO testBack
4、说明:创建新表
create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)
根据已有的表创建新表:
A:create table tab_new like tab_old (使用旧表创建新表)
B:create table tab_new as select col1,col2? from tab_old definition only
5、说明:
删除新表: tabname
6、说明:
增加一个列:Alter table tabname add column col type
注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。
7、说明:
添加主键:Alter table tabname add primary key(col)
说明:
删除主键:Alter table tabname drop primary key(col)
8、说明:
创建索引:create [unique] index idxname on tabname(col?.)
删除索引:drop index idxname
注:索引是不可更改的,想更改必须删除重新建。
9、说明:
创建视图:create view viewname as select statement
删除视图:drop view viewname
10、说明:几个简单的基本的sql语句
选择:select * from table1 where 范围
插入: into table1(field1,field2) values(value1,value2)
删除: from table1 where 范围
更新:table1 set field1=value1 where 范围
查找:select * from table1 where field1 like ’%value1%’ ---like的语法很精妙,查资料!
排序:select * from table1 order by field1,field2 [desc]
总数:select count * as totalcount from table1
求和:select sum(field1) as sumvalue from table1
平均:selectavg(field1) as avgvalue from table1
最大:select max(field1) as maxvalue from table1
最小:select min(field1) as minvalue from table1
11、说明:几个高级查询运算词
A: UNION 运算符
UNION 运算符通过组合其他两个结果表(例如 TABLE1 和 TABLE2)并消去表中任何重复行而派生出一个结果表。当 ALL 随 UNION 一起使用时(即 UNION ALL),不消除重复行。两种情况下,派生表的每一行不是来自 TABLE1 就是来自 TABLE2。
B: EXCEPT 运算符
EXCEPT 运算符通过包括所有在 TABLE1 中但不在 TABLE2 中的行并消除所有重复行而派生出一个结果表。当 ALL 随 EXCEPT 一起使用时 (EXCEPT ALL),不消除重复行。
C: INTERSECT 运算符
INTERSECT 运算符通过只包括 TABLE1 和 TABLE2 中都有的行并消除所有重复行而派生出一个结果表。当 ALL 随 INTERSECT 一起使用时 (INTERSECT ALL),不消除重复行。
注:使用运算词的几个查询结果行必须是一致的。
12、说明:使用外连接
A、left outer join:
左外连接(左连接):结果集几包括连接表的匹配行,也包括左连接表的所有行。
SQL: select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c
B:right outer join:
右外连接(右连接):结果集既包括连接表的匹配连接行,也包括右连接表的所有行。
C:full outer join:
全外连接:不仅包括符号连接表的匹配行,还包括两个连接表中的所有记录。
其次,大家来看一些不错的sql语句
1、说明:复制表(只复制结构,源表名:a 新表名:b) (Access可用)
法一:select * into b from a where 11
法二:select top 0 * into b from a
2、说明:拷贝表(拷贝数据,源表名:a 目标表名:b) (Access可用)
into b(a, b, c) select d,e,f from b;
3、说明:跨数据库之间表的拷贝(具体数据使用绝对路径) (Access可用)
into b(a, b, c) select d,e,f from b in ‘具体数据库’ where 条件
例子:..from b in '“&Server.MapPath(”.“)&”data.mdb“ &”' where..
4、说明:子查询(表名1:a 表名2:b)
select a,b,c from a where a IN (select d from b ) 或者: selecta,b,c from a where a IN (1,2,3)
5、说明:显示文章、提交人和最后回复时间
selecta.title,a.username,b.adddate from table a,(select max(adddate) adddate from table where table.title=a.title) b
6、说明:外连接查询(表名1:a 表名2:b)
selecta.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c
7、说明:在线视图查询(表名1:a )
select * from (SELECT a,b,c FROM a) T where t.a>1;
8、说明:between的用法,between限制查询数据范围时包括了边界值,not between不包括
select * from table1 where time between time1 and time2
select a,b,c, from table1 where a not between 数值1 and 数值2
9、说明:in 的使用方法
select * from table1 where a [not] in (‘值1’,’值2’,’值4’,’值6’)
10、说明:两张关联表,删除主表中已经在副表中没有的信息
from table1 where not exists ( select * from table2 where table1.field1=table2.field1 )
11、说明:四表联查问题:
select * from a left inner join b on a.a=b.b right inner join c on a.a=c.c inner join d on a.a=d.d where .....
12、说明:日程安排提前五分钟提醒
SQL: select * from 日程安排 where datediff('minute',f开始时间,getdate)>5
13、说明:一条sql语句搞定数据库分页
select top 10 b.* from (select top 20 主键字段,排序字段 from 表名 order by 排序字段desc) a,表名 b where b.主键字段 = a.主键字段 order by a.排序字段
14、说明:前10条记录
select top 10 * form table1 where 范围
15、说明:选择在每一组b值相同的数据中对应的a最大的记录的所有信息(类似这样的用法可以用于论坛每月排行榜,每月热销产品分析,按科目成绩排名,等等.)
selecta,b,c from tablename ta where a=(select max(a) from tablenametb where tb.b=ta.b)
16、说明:包括所有在TableA中但不在TableB和TableC中的行并消除所有重复行而派生出一个结果表
(select a from tableA ) except (select a from tableB) except (select a from tableC)
17、说明:随机取出10条数据
select top 10 * from tablename order by newid()
18、说明:随机选择记录
selectnewid()
19、说明:删除重复记录
篇4:数据库经典SQL语句
数据库基本SQL语句大全
数据库基本----SQL
语句大全
一、基础
1、说明:创建数据库
Create DATABASE database-name
2、说明:删除数据库
drop database dbname
3、说明:备份sql server
--- 创建 备份数据的 device
USE master
EXEC sp_addumpdevice 'disk', 'testBack', 'c:mssql7backupMyNwind_1.dat' --- 开始 备份
BACKUP DATABASE pubs TO testBack
4、说明:创建新表
create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)
根据已有的表创建新表:
A:create table tab_new like tab_old (使用旧表创建新表)
B:create table tab_new as select col1,col2? from tab_old definition only
5、说明:删除新表
tabname
6、说明:增加一个列
Alter table tabname add column col type
注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。
7、说明:添加主键: Alter table tabname add primary key(col) 说明:删除主键: Alter table tabname drop primary key(col)
8、说明:创建索引:create [unique] index idxname on tabname(col?.) 删除索引:drop index idxname
注:索引是不可更改的,想更改必须删除重新建。
9、说明:创建视图:create view viewname as select statement 删除视图:drop view viewname
10、说明:几个简单的基本的
sql语句
选择:select * from table1 where 范围
插入: into table1(field1,field2) values(value1,value2)
删除: from table1 where 范围
更新:table1 set field1=value1 where 范围
查找:select * from table1 where field1 like ’%value1%’ ---like的语法很精妙,查资料!
排序:select * from table1 order by field1,field2 [desc]
总数:select count as totalcount from table1
求和:select sum(field1) as sumvalue from table1
平均:select avg(field1) as avgvalue from table1
最大:select max(field1) as maxvalue from table1
最小:select min(field1) as minvalue from table1
11、说明:几个高级查询运算词
A: UNION 运算符
UNION 运算符通过组合其他两个结果表(例如 TABLE1 和 TABLE2)并消去表中任何重复行而派生出一个结果表。当 ALL 随 UNION 一起使用时(即 UNION ALL),不消除
重复行。两种情况下,派生表的每一行不是来自 TABLE1 就是来自 TABLE2。
B: EXCEPT 运算符
EXCEPT 运算符通过包括所有在 TABLE1 中但不在 TABLE2 中的行并消除所有重复行而派生出一个结果表。当 ALL 随 EXCEPT 一起使用时 (EXCEPT ALL),不消除重复行。 C: INTERSECT 运算符
INTERSECT 运算符通过只包括 TABLE1 和 TABLE2 中都有的行并消除所有重复行而派生出一个结果表。当 ALL 随 INTERSECT 一起使用时 (INTERSECT ALL),不消除重复
行。注:使用运算词的几个查询结果行必须是一致的。
12、说明:使用外连接
A、left outer join:
左外连接(左连接):结果集几包括连接表的匹配行,也包括左连接表的所有行。
SQL: select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c B:right outer join:
右外连接(右连接):结果集既包括连接表的匹配连接行,也包括右连接表的所有行。 C:full outer join:
全外连接:不仅包括符号连接表的匹配行,还包括两个连接表中的所有记录。
二、提升
1、说明:复制表(只复制结构,源表名:a 新表名:b) (Access可用)
法一:select * into b from a where 11
法二:select top 0 * into b from a
2、说明:拷贝表(拷贝数据,源表名:a 目标表名:b) (Access可用)
into b(a, b, c) select d,e,f from b;
3、说明:跨数据库之间表的拷贝(具体数据使用绝对路径) (Access可用)
into b(a, b, c) select d,e,f from b in ‘具体数据库’ where 条件 例子:..from b in '“&Server.MapPath(”.“&”data.mdb“ &”' where..
4、说明:子查询(表名1:a 表名2:b)
select a,b,c from a where a IN (select d from b或者: select a,b,c from a where a IN (1,2,3)
5、说明:显示文章、提交人和最后回复时间
select a.title,a.username,b.adddate from table a,(select max(adddate) adddate from table where table.title=a.title) b
6、说明:外连接查询(表名1:a 表名2:b)
select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c
7、说明:在线视图查询(表名1:a
select * from (Select a,b,c FROM a) T where t.a >1;
8、说明:between的用法,between限制查询数据范围时包括了边界值,not between不包括
select * from table1 where time between time1 and time2
select a,b,c, from table1 where a not between 数值1 and 数值2
9、说明:in 的使用方法
select * from table1 where a [not] in (‘值1’,’值2’,’值4’,’值6’)
10、说明:两张关联表,删除主表中已经在副表中没有的信息
from table1 where not exists ( select * from table2 where table1.field1=table2.field1
11、说明:四表联查问题:
select * from a left inner join b on a.a=b.b right inner join c on a.a=c.c inner join d on a.a=d.d where ..
12、说明:日程安排提前五分钟提醒
select * from 日程安排 where datediff('minute',f开始时间,getdate())>5
13、说明:一条sql 语句搞定数据库分页
select top 10 b.* from (select top 20 主键字段,排序字段 from 表名 order by 排序字段 desc) a,表名 b where b.主键字段 = a.主键字段 order by a.排序字段
14
、说明:前10条记录
select top 10 * form table1 where 范围
15、说明:选择在每一组b值相同的数据中对应的a最大的记录的所有信息(类似这样的用法可以用于论坛每月排行榜,每月热销产品分析,按科目成绩排名,等等.)
select a,b,c from tablename ta where a=(select max(a) from tablename tb where tb.b=ta.b)
16、说明:包括所有在 TableA 中但不在 TableB和TableC 中的行并消除所有重复行而派生出一个结果表
(select a from tableAexcept (select a from tableB) except (select a from tableC)
17、说明:随机取出10条数据
select top 10 * from tablename order by newid()
18、说明:随机选择记录
select newid()
19、说明:删除重复记录
Delete from tablename where id not in (select max(id) from tablename group by col1,col2,)
20、说明:列出数据库里所有的表名
select name from sysobjects where type='U'
21、说明:列出表里的所有的
select name from syscolumns where id=object_id('TableName')
22、说明:列示type、vender、pcs字段,以type字段排列,case可以方便地实现多重选择,类似select 中的case。
select type,sum(case vender when 'A' then pcs else 0 end),sum(case vender when 'C' then pcs else 0 end),sum(case vender when 'B' then pcs else 0 end)
FROM tablename group by type
显示结果:
type vender pcs
电脑 A 1
电脑 A 1
光盘 B 2
光盘 A 2
手机 B 3
手机
C 3
23、说明:初始化表table1
TRUNCATE TABLE table1
24、说明:选择从10到15的记录
select top 5 * from (select top 15 * from table order by id asc) table_别名 order by id desc
三、技巧
1、1=1,1=2的使用,在SQL语句组合时用的较多
“where 1=1” 是表示选择全部“where 1=2”全部不选,
如:
if @strWhere !='
begin
set @strSQL = 'select count(*) as Total from [' + @tblName + '] where ' + @strWhere
end
else
begin
set @strSQL = 'select count(*) as Total from [' + @tblName + ']'end
我们可以直接写成
set @strSQL = 'select count(*) as Total from [' + @tblName + '] where 1=1 安定 '+ @strWhere
2、收缩数据库
--重建索引
DBCC REINDEX
DBCC INDEXDEFRAG
--收缩数据和日志
DBCC SHRINKDB
DBCC SHRINKFILE
3、压缩数据库
dbcc shrinkdatabase(dbname)
4、转移数据库给新用户以已存在用户权限
exec sp_change_users_login 'update_one','newname','oldname'
go
篇5:数据库经典SQL语句
常用SQL语句大全
一、基础
1
、说明:创建数据库
CREATE DATABASE database-name
2、说明:删除数据库
DROP database dbname
3、说明:备份sql server
--- 创建 备份数据的 device
USE master
EXEC sp_addumpdevice 'disk', 'testBack', 'c:mssql7backupMyNwind_1.dat' --- 开始 备份
BACKUP DATABASE pubs TO testBack
4、说明:创建新表
create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) 根据已有的表创建新表:
A:create table tab_new like tab_old (使用旧表创建新表)
B:create table tab_new as select col1,col2? from tab_old definition only
5、说明:删除新表
DROP table tabname
6、说明:增加一个列
Alter table tabname add column col type
注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。
7、说明:添加主键: Alter table tabname add primary key(col)
说明:删除主键: Alter table tabname DROP primary key(col)
8、说明:创建索引:create [unique] index idxname on tabname(col?.) 删除索引:DROP index idxname
注:索引是不可更改的,想更改必须删除重新建。
9、说明:创建视图:create view viewname as select statement
删除视图:DROP view viewname
10、说明:几个简单的基本的sql语句
选择:select * from table1 where 范围
插入: into table1(field1,field2) values(value1,value2)
删除: from table1 where 范围
更新:table1 set field1=value1 where 范围
查找:select * from table1 where field1 like ’%value1%’ ---like的语法很精妙,查资料!
排序:select * from table1 order by field1,field2 [desc]
总数:select count as totalcount from table1
求和:select sum(field1) as sumvalue from table1
平均:select avg(field1) as avgvalue from table1
最大:select max(field1) as maxvalue from table1
最小:select min(field1) as minvalue from table1
11、说明:几个高级查询运算词
A: UNION 运算符
UNION 运算符通过组合其他两个结果表(例如 TABLE1 和 TABLE2)并消去表中任何重复行而派生出一个结果表。当 ALL 随 UNION 一起使用时(即 UNION ALL),不消除重复行。两种情况下,派生表的每一行不是来自 TABLE1 就是来自 TABLE2。
B: EXCEPT 运算符
EXCEPT 运算符通过包括所有在 TABLE1 中但不在 TABLE2 中的行并消除所有重复行而派生出一个结果表。当 ALL 随 EXCEPT 一起使用时 (EXCEPT ALL),不消除重复行。
C: INTERSECT 运算符
INTERSECT 运算符通过只包括 TABLE1 和 TABLE2 中都有的行并消除所有重复行而派生出一个结果表。当 ALL 随 INTERSECT 一起使用时 (INTERSECT ALL),不消除重复行。
注:使用运算词的几个查询结果行必须是一致的。
12、说明:使用外连接
A、left outer join:
左外连接(左连接):结果集几包括连接表的匹配行,也包括左连接表的所有行。 SQL: select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c B:right outer join:
右外连接(右连接):结果集既包括连接表的匹配连接行,也包括右连接表的所有行。
C:full outer join:
全外连接:不仅包括符号连接表的匹配行,还包括两个连接表中的所有记录。
二、提升
1、说明:复制表(只复制结构,源表名:a 新表名:b) (Access可用)
法一:select * into b from a where 11
法二:select top 0 * into b from a
2、说明:拷贝表(拷贝数据,源表名:a 目标表名:b) (Access可用)
into b(a, b, c) select d,e,f from b;
3、说明:跨数据库之间表的拷贝(具体数据使用绝对路径) (Access可用) into b(a, b, c) select d,e,f from b in ‘具体数据库’ where 条件 例子:..from b in '“&Server.MapPath(”.“)&”data.mdb“ &”' where..
4、说明:子查询(表名1:a 表名2:b)
select a,b,c from a where a IN (select d from b ) 或者: select a,b,c from a where a IN (1,2,3)
5、说明:显示文章、提交人和最后回复时间
select a.title,a.username,b.adddate from table a,(select max(adddate) adddate from table where table.title=a.title) b
6、说明:外连接查询(表名1:a 表名2:b)
select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c
7、说明:在线视图查询(表名1:a )
select * from (SELECT a,b,c FROM a) T where t.a >1;
8、说明:between的用法,between限制查询数据范围时包括了边界值,not between不包括
select * from table1 where time between time1 and time2
select a,b,c, from table1 where a not between 数值1 and 数值2
9、说明:in 的使用方法
select * from table1 where a [not] in (‘值1’,’值2’,’值4’,’值6’)
10、说明:两张关联表,删除主表中已经在副表中没有的信息
from table1 where not exists ( select * from table2 where
table1.field1=table2.field1 )
11、说明:四表联查问题:
select * from a left inner join b on a.a=b.b right inner join c on a.a=c.c inner join d on a.a=d.d where .....
12、说明:日程安排提前五分钟提醒
SQL: select * from 日程安排 where datediff('minute',f开始时间,getdate)>5
13、说明:一条sql 语句搞定数据库分页
select top 10 b.* from (select top 20 主键字段,排序字段 from 表名 order by 排序字段 desc) a,表名 b where b.主键字段 = a.主键字段 order by a.排序字段
14、说明:前10条记录
select top 10 * form table1 where 范围
15、说明:选择在每一组b值相同的数据中对应的a最大的记录的所有信息(类似这样的用法可以用于论坛每月排行榜,每月热销产品分析,按科目成绩排名,等等.)
select a,b,c from tablename ta where a=(select max(a) from tablename tb where tb.b=ta.b)
16、说明:包括所有在 TableA 中但不在 TableB和TableC 中的行并消除所有重复行而派生出一个结果表
(select a from tableA ) except (select a from tableB) except (select a from tableC)
17、说明:随机取出10条数据
select top 10 * from tablename order by newid()
18、说明:随机选择记录
select newid()
19、说明:删除重复记录
Delete from tablename where id not in (select max(id) from tablename group by col1,col2,...)
20、说明:列出数据库里所有的表名
select name from sysobjects where type='U'
21、说明:列出表里的所有的
select name from syscolumns where id=object_id('TableName')
22、说明:列示type、vender、pcs字段,以type字段排列,case可以方便地实现多重选择,类似select 中的case。
select type,sum(case vender when 'A' then pcs else 0 end),sum(case vender when 'C' then pcs else 0 end),sum(case vender when 'B' then pcs else 0 end) FROM tablename group by type
显示结果:
type vender pcs
电脑 A 1
电脑 A 1
光盘 B 2
光盘 A 2
手机 B 3
手机 C 3
23、说明:初始化表table1
TRUNCATE TABLE table1
24、说明:选择从10到15的记录
select top 5 * from (select top 15 * from table order by id asc) table_别名 order by id desc
三、技巧
1、1=1,1=2的使用,在SQL语句组合时用的较多
“where 1=1” 是表示选择全部“where 1=2”全部不选,
如:
if @strWhere !=''
begin
set @strSQL = 'select count(*) as Total from [' + @tblName + '] where ' + @strWhere
end
else
begin
set @strSQL = 'select count(*) as Total from [' + @tblName + ']'
end
我们可以直接写成
set @strSQL = 'select count(*) as Total from [' + @tblName + '] where 1=1 安定 '+ @strWhere
2、收缩数据库
--重建索引
DBCC REINDEX
DBCC INDEXDEFRAG
--收缩数据和日志
DBCC SHRINKDB
DBCC SHRINKFILE
3、压缩数据库
dbcc shrinkdatabase(dbname)
4、转移数据库给新用户以已存在用户权限
exec sp_change_users_login 'update_one','newname','oldname'
go
5、检查备份集
RESTORE VERIFYONLY from disk='E:dvbbs.bak'
6、修复数据库
ALTER DATABASE [dvbbs] SET SINGLE_USER
GO
DBCC CHECKDB('dvbbs',repair_allow_data_loss) WITH TABLOCK GO
ALTER DATABASE [dvbbs] SET MULTI_USER
GO
7、日志清除
SET NOCOUNT ON
DECLARE @LogicalFileName sysname,
@MaxMinutes INT,
@NewSize INT
USE tablename -- 要操作的数据库名
SELECT @LogicalFileName = 'tablename_log', -- 日志文件名
@MaxMinutes = 10,-- Limit on time allowed to wrap log.
@NewSize = 1-- 你想设定的日志文件的大小(M)
-- Setup / initialize
DECLARE @OriginalSize int
SELECT @OriginalSize = size
FROM sysfiles
WHERE name = @LogicalFileName
SELECT 'Original Size of ' + db_name() + ' LOG is ' +
CONVERT(VARCHAR(30),@OriginalSize) + ' 8K pages or ' +
CONVERT(VARCHAR(30),(@OriginalSize*8/1024)) + 'MB'
FROM sysfiles
WHERE name = @LogicalFileName
CREATE TABLE DummyTrans
(DummyColumn char (8000) not null)
DECLARE @CounterINT,
@StartTime DATETIME,
@TruncLog VARCHAR(255)
SELECT @StartTime = GETDATE(),
@TruncLog = 'BACKUP LOG ' + db_name() + ' WITH
TRUNCATE_ONLY'
DBCC SHRINKFILE (@LogicalFileName, @NewSize)
EXEC (@TruncLog)
-- Wrap the log if necessary.
WHILE @MaxMinutes >DATEDIFF (mi, @StartTime, GETDATE()) -- time has not expired
AND @OriginalSize = (SELECT size FROM sysfiles WHERE name = @LogicalFileName)
AND (@OriginalSize * 8 /1024) >@NewSize
BEGIN -- Outer loop.
SELECT @Counter = 0
WHILE ((@Counter < @OriginalSize / 16) AND (@Counter < 50000)) BEGIN -- update
篇6:sql数据库教程
掌握SQL四条最基本的数据操作语句:Insert,Select,Update和Delete,
练掌握SQL是数据库用户的宝贵财 富。在本文中,我们将引导你掌握四条最基本的数据操作语句―SQL的核心功能―来依次介绍比较操作符、选择断言以及三值逻辑。当你完成这些学习后,显然你已经开始算是精通SQL了。
在我们开始之前,先使用CREATE TABLE语句来创建一个表(如图1所示)。DDL语句对数据库对象如表、列和视进行定义。它们并不对表中的行进行处理,这是因为DDL语句并不处理数据库中实际的数据。这些工作由另一类SQL语句―数据操作语言(DML)语句进行处理。
SQL中有四种基本的DML操作:INSERT,SELECT,UPDATE和DELETE。由于这是大多数SQL用户经常用到的,我们有必要在此对它们进行一一说明。在图1中我们给出了一个名为EMPLOYEES的表。其中的每一行对应一个特定的雇员记录。请熟悉这张表,我们在后面的例子中将要用到它。
连接查询
通过连接运算符可以实现多个表查询。连接是关系数据库模型的主要特点,也是它区别于其它类型
数据库管理系统的一个标志。
在关系数据库管理系统中,表建立时各数据之间的关系不必确定,常把一个实体的所有信息存放在
一个表中。当检索数据时,通过连接操作查询出存放在多个表中的不同实体的信息。连接操作给用户带
来很大的灵活性,他们可以在任何时候增加新的数据类型。为不同实体创建新的表,尔后通过连接进行
查询。
连接可以在SELECT 语句的FROM子句或WHERE子句中建立,似是而非在FROM子句中指出连接时有助于
将连接操作与WHERE子句中的搜索条件区分开来。所以,在Transact-SQL中推荐使用这种方法。
SQL-92标准所定义的FROM子句的连接语法格式为:
FROM join_table join_type join_table
[ON (join_condition)]
其中join_table指出参与连接操作的表名,连接可以对同一个表操作,也可以对多表操作,对同一
个表操作的连接又称做自连接。
join_type 指出连接类型,可分为三种:内连接、外连接和交叉连接。内连接(INNER JOIN)使用比
较运算符进行表间某(些)列数据的比较操作,并列出这些表中与连接条件相匹配的数据行。根据所使用
的比较方式不同,内连接又分为等值连接、自然连接和不等连接三种。
外连接分为左外连接(LEFT OUTER JOIN或LEFT JOIN)、右外连接(RIGHT OUTER JOIN或RIGHT JOIN)
和全外连接(FULL OUTER JOIN或FULL JOIN)三种。与内连接不同的是,外连接不只列出与连接条件相匹
配的行,而是列出左表(左外连接时)、右表(右外连接时)或两个表(全外连接时)中所有符合搜索条件的
数据行。
交叉连接(CROSS JOIN)没有WHERE 子句,它返回连接表中所有数据行的笛卡尔积,其结果集合中的
数据行数等于第一个表中符合查询条件的数据行数乘以第二个表中符合查询条件的数据行数。
连接操作中的ON (join_condition) 子句指出连接条件,它由被连接表中的列和比较运算符、逻辑
运算符等构成。
无论哪种连接都不能对text、ntext和image数据类型列进行直接连接,但可以对这三种列进行间接
连接。例如:
SELECT p1.pub_id,p2.pub_id,p1.pr_info
FROM pub_info AS p1 INNER JOIN pub_info AS p2
ON DATALENGTH(p1.pr_info)=DATALENGTH(p2.pr_info)
(一)内连接
内连接查询操作列出与连接条件匹配的数据行,它使用比较运算符比较被连接列的列值。内连接分
三种:
1、等值连接:在连接条件中使用等于号(=)运算符比较被连接列的列值,其查询结果中列出被连接
表中的所有列,包括其中的重复列。
2、不等连接: 在连接条件使用除等于运算符以外的其它比较运算符比较被连接的列的列值。这些
运算符包括>、>=、<=、<、!>、!<和>。和>
3、自然连接:在连接条件中使用等于(=)运算符比较被连接列的列值,但它使用选择列表指出查询
结果集合中所包括的列,并删除连接表中的重复列。
例,下面使用等值连接列出authors和publishers表中位于同一城市的作者和出版社:
SELECT *
FROM authors AS a INNER JOIN publishers AS p
ON a.city=p.city
又如使用自然连接,在选择列表中删除authors 和publishers 表中重复列(city和state):
SELECT a.*,p.pub_id,p.pub_name,p.country
FROM authors AS a INNER JOIN publishers AS p
ON a.city=p.city
(二)外连接
内连接时,返回查询结果集合中的仅是符合查询条件( WHERE 搜索条件或 HAVING 条件)和连接条件
的行。而采用外连接时,它返回到查询结果集合中的不仅包含符合连接条件的行,而且还包括左表(左外
连接时)、右表(右外连接时)或两个边接表(全外连接)中的所有数据行。
如下面使用左外连接将论坛内容和作者信息连接起来:
SELECT a.*,b.* FROM luntan LEFT JOIN usertable as b
ON a.username=b.username
下面使用全外连接将city表中的所有作者以及user表中的所有作者,以及他们所在的城市:
SELECT a.*,b.*
FROM city as a FULL OUTER JOIN user as b
ON a.username=b.username
(三)交叉连接
交叉连接不带WHERE 子句,它返回被连接的两个表所有数据行的笛卡尔积,返回到结果集合中的数
据行数等于第一个表中符合查询条件的数据行数乘以第二个表中符合查询条件的数据行数。
例,titles表中有6类图书,而publishers表中有8家出版社,则下列交叉连接检索到的记录数将等
于6*8=48行。
SELECT type,pub_name
FROM titles CROSS JOIN publishers
ORDER BY type
UNION运算符可以将两个或两个以上上SELECT语句的查询结果集合合并成一个结果集合显示,即执行联
合查询。UNION的语法格式为:
select_statement
UNION [ALL] selectstatement
[UNION [ALL] selectstatement][…n]
其中selectstatement为待联合的SELECT查询语句。
ALL选项表示将所有行合并到结果集合中。不指定该项时,被联合查询结果集合中的重复行将只保留一
行。
联合查询时,查询结果的列标题为第一个查询语句的列标题。因此,要定义列标题必须在第一个查询语
句中定义。要对联合查询结果排序时,也必须使用第一查询语句中的列名、列标题或者列序号。
在使用UNION 运算符时,应保证每个联合查询语句的选择列表中有相同数量的表达式,并且每个查询选
择表达式应具有相同的数据类型,或是可以自动将它们转换为相同的数据类型。在自动转换时,对于数值类
型,系统将低精度的数据类型转换为高精度的数据类型。
在包括多个查询的UNION语句中,其执行顺序是自左至右,使用括号可以改变这一执行顺序。例如:
查询1 UNION (查询2 UNION 查询3)
INSERT语句
用户可以用INSERT语句将一行记录插入到指定的一个表中。例如,要将雇员John Smith的记录插入到本例的表中,可以使用如下语句:
INSERT INTO EMPLOYEES VALUES
('Smith','John','1980-06-10',
'Los Angles',16,45000);
通过这样的INSERT语句,系统将试着将这些值填入到相应的列中。这些列按照我们创建表时定义的顺序排列。在本例中,第一个值“Smith”将填到第一个列LAST_NAME中;第二个值“John”将填到第二列FIRST_NAME中……以此类推。
我们说过系统会“试着”将值填入,除了执行规则之外它还要进行类型检查。如果类型不符(如将一个字符串填入到类型为数字的列中),系统将拒绝这一次操作并返回一个错误信息。
如果SQL拒绝了你所填入的一列值,语句中其他各列的值也不会填入。这是因为SQL提供对事务的支持。一次事务将数据库从一种一致性转移到另一种一致性。如果事务的某一部分失败,则整个事务都会失败,系统将会被恢复(或称之为回退)到此事务之前的状态。
回到原来的INSERT的例子,请注意所有的整形十进制数都不需要用单引号引起来,而字符串和日期类型的值都要用单引号来区别。为了增加可读性而在数字间插入逗号将会引起错误。记住,在SQL中逗号是元素的分隔符。
同样要注意输入文字值时要使用单引号。双引号用来封装限界标识符。
对于日期类型,我们必须使用SQL标准日期格式(yyyy-mm-dd),但是在系统中可以进行定义,以接受其他的格式。当然,临近,请你最好还是使用四位来表示年份。
既然你已经理解了INSERT语句是怎样工作的了,让我们转到EMPLOYEES表中的其他部分:
INSERT INTO EMPLOYEES VALUES
('Bunyan','Paul','1970-07-04',
'Boston',12,70000);
INSERT INTO EMPLOYEES VALUES
('John','Adams','1992-01-21',
'Boston',20,100000);
INSERT INTO EMPLOYEES VALUES
('Smith','Pocahontas','1976-04-06',
'Los Angles',12,100000);
INSERT INTO EMPLOYEES VALUES
('Smith','Bessie','1940-05-02',
'Boston',5,00);
INSERT INTO EMPLOYEES VALUES
('Jones','Davy','1970-10-10',
'Boston',8,45000);
INSERT INTO EMPLOYEES VALUES
('Jones','Indiana','1992-02-01',
'Chicago',NULL,NULL);
在最后一项中,我们不知道Jones先生的工薪级别和年薪,所以我们输入NULL(不要引号),
NULL是SQL中的一种特殊情况,我们以后将进行详细的讨论。现在我们只需认为NULL表示一种未知的值。
有时,像我们刚才所讨论的情况,我们可能希望对某一些而不是全部的列进行赋值。除了对要省略的列输入NULL外,还可以采用另外一种INSERT语句,如下:
INSERT INTO EMPLOYEES(
FIRST_NAME, LAST_NAME,
HIRE_DATE, BRANCH_OFFICE)
VALUE(
'Indiana','Jones',
'1992-02-01','Indianapolis');
这样,我们先在表名之后列出一系列列名。未列出的列中将自动填入缺省值,如果没有设置缺省值则填入NULL。请注意我们改变了列的顺序,而值的顺序要对应新的列的顺序。如果该语句中省略了FIRST_NAME和LAST_NAME项(这两项规定不能为空),SQL操作将失败。
让我们来看一看上述INSERT语句的语法图:
INSERT INTO table
[(column { ,column})]
VALUES
(columnvalue [{,columnvalue}]);
和前一篇文章中一样,我们用方括号来表示可选项,大括号表示可以重复任意次数的项(不能在实际的SQL语句中使用这些特殊字符)。VALUE子句和可选的列名列表中必须使用圆括号。
SELECT语句
SELECT语句可以从一个或多个表中选取特定的行和列。因为查询和检索数据是数据库管理中最重要的功能,所以SELECT语句在SQL中是工作量最大的部分。实际上,仅仅是访问数据库来分析数据并生成报表的人可以对其他SQL语句一窍不通。
SELECT语句的结果通常是生成另外一个表。在执行过程中系统根据用户的标准从数据库中选出匹配的行和列,并将结果放到临时的表中。在直接SQL(direct SQL)中,它将结果显示在终端的显示屏上,或者将结果送到打印机或文件中。也可以结合其他SQL语句来将结果放到一个已知名称的表中。
SELECT语句功能强大。虽然表面上看来它只用来完成本文第一部分中提到的关系代数运算“选择”(或称“限制”),但实际上它也可以完成其他两种关系运算―“投影”和“连接”,SELECT语句还可以完成聚合计算并对数据进行排序。
SELECT语句最简单的语法如下:
SELECT columns FROM tables;
当我们以这种形式执行一条SELECT语句时,系统返回由所选择的列以及用户选择的表中所有指定的行组成的一个结果表。这就是实现关系投影运算的一个形式。
让我们看一下使用图1中EMPLOYEES表的一些例子(这个表是我们以后所有SELECT语句实例都要使用的。而我们在图2和图3中给出了查询的实际结果。我们将在其他的例子中使用这些结果)。
假设你想查看雇员工作部门的列表。那下面就是你所需要编写的SQL查询:
SELECT BRANCH_OFFICE FROM EMPLOYEES;
以上SELECT语句的执行将产生如图2中表2所示的结果。
由于我们在SELECT语句中只指定了一个列,所以我们的结果表中也只有一个列。注意结果表中具有重复的行,这是因为有多个雇员在同一部门工作(记住SQL从所选的所有行中将值返回)。要消除结果中的重复行,只要在SELECT语句中加上DISTINCT子句:
SELECT DISTINCT BRANCH_OFFICE
FROM EMPLOYEES;
这次查询的结果如表3所示。
现在已经消除了重复的行,但结果并不是按照顺序排列的。如果你希望以字母表顺序将结果列出又该怎么做呢?只要使用ORDER BY子句就可以按照升序或降序来排列结果:
SELECT DISTINCT BRANCH_OFFICE
FROM EMPLOYEES
ORDER BY BRANCH_OFFICE ASC;
这一查询的结果如表4所示。请注意在ORDER BY之后是如何放置列名BRANCH _OFFICE的,这就是我们想要对其进行排序的列。为什么即使是结果表中只有一个列时我们也必须指出列名呢?这是因为我们还能够按照表中其他列进行排序,即使它们并不显示出来。列名BRANCH_ OFFICE之后的关键字ASC表示按照升序排列。如果你希望以降序排列,那么可以用关键字DESC。
同样我们应该指出ORDER BY子句只将临时表中的结果进行排序;并不影响原来的表。
假设我们希望得到按部门排序并从工资最高的雇员到工资最低的雇员排列的列表。除了工资括号中的内容,我们还希望看到按照聘用时间从最近聘用的雇员开始列出的列表。以下是你将要用到的语句:
SELECT BRANCH_OFFICE,FIRST_NAME,
LAST_NAME,SALARY,HIRE_DATE
FROM EMPLOYEES
ORDER BY SALARY DESC,
HIRE_DATE DESC;
这里我们进行了多列的选择和排序。排序的优先级由语句中的列名顺序所决定。SQL将先对列出的第一个列进行排序。如果在第一个列中出现了重复的行时,这些行将被按照第二列进行排序,如果在第二列中又出现了重复的行时,这些行又将被按照第三列进行排序……如此类推。这次查询的结果如表5所示。
将一个很长的表中的所有列名写出来是一件相当麻烦的事,所以SQL允许在选择表中所有的列时使用*号:
SELECT * FROM EMPLOYEES;
这次查询返回整个EMPLOYEES表,如表1所示。
下面我们对开始时给出的SELECT语句的语法进行一下更新(竖直线表示一个可选项,允许在其中选择一项。):
SELECT [DISTINCT]
(column [{, columns}])| *
FROM table [ {, table}]
[ORDER BY column [ASC] | DESC
[ {, column [ASC] | DESC }]];
定义选择标准
在我们目前所介绍的SELECT语句中,我们对结果表中的列作出了选择但返回的是表中所有的行。让我们看一下如何对SELECT语句进行限制使得它只返回希望得到的行:
SELECT columns FROM tables [WHERE predicates];
WHERE子句对条件进行了设置,只有满足条件的行才被包括到结果表中。这些条件由断言(predicate)进行指定(断言指出了关于某件事情的一种可能的事实)。如果该断言对于某个给定的行成立,该行将被包括到结果表中,否则该行被忽略。在SQL语句中断言通常通过比较来表示。例如,假如你需要查询所有姓为Jones的职员,则可以使用以下SELECT语句:
SELECT * FROM EMPLOYEES
WHERE LAST_NAME = 'Jones';
LAST_NAME = 'Jones'部分就是断言。在执行该语句时,SQL将每一行的LAST_NAME列与“Jones”进行比较。如果某一职员的姓为“Jones”,即断言成立,该职员的信息将被包括到结果表中(见表6)。
使用最多的六种比较
我们上例中的断言包括一种基于“等值”的比较(LAST_NAME = 'Jones'),但是SQL断言还可以包含其他几种类型的比较。其中最常用的为:
等于 =
不等于
小于 <
大于 >
小于或等于 <=
大于或等于 >=
下面给出了不是基于等值比较的一个例子:
SELECT * FROM EMPLOYEES
WHERE SALARY >50000;
这一查询将返回年薪高于$50,000.00的职员(参见表7)。
逻辑连接符
有时我们需要定义一条不止一种断言的SELECT语句。举例来说,如果你仅仅想查看Davy Jones的信息的话,表6中的结果将是不正确的。为了进一步定义一个WHERE子句,用户可以使用逻辑连接符AND,OR和NOT。为了只得到职员Davy Jones的记录,用户可以输入如下语句:
SELECT * FROM EMPLOYEES
WHERE LAST_NAME = 'Jones' AND FIRST_NAME = 'Davy';
在本例中,我们通过逻辑连接符AND将两个断言连接起来。只有两个断言都满足时整个表达式才会满足。如果用户需要定义一个SELECT语句来使得当其中任何一项成立就满足条件时,可以使用OR连接符:
SELECT * FROM EMPLOYEES
WHERE LAST_NAME = 'Jones' OR LAST_NAME = 'Smith';
有时定义一个断言的最好方法是通过相反的描述来说明。如果你想要查看除了Boston办事处的职员以外的其他所有职员的信息时,你可以进行如下的查询:
SELECT * FROM EMPLOYEES
WHERE NOT(BRANCH_OFFICE = 'Boston');
关键字NOT后面跟着用圆括号括起来的比较表达式。其结果是对结果取否定。如果某一职员所在部门的办事处在Boston,括号内的表达式返回true,但是NOT操作符将该值取反,所以该行将不被选中。
断言可以与其他的断言嵌套使用。为了保证它们以正确的顺序进行求值,可以用括号将它们括起来:
SELECT * FROM EMPLOYEES
WHERE (LAST_NAME = 'Jones'
AND FIRST_NAME = 'Indiana')
OR (LAST_NAME = 'Smith'
AND FIRST_NAME = 'Bessie');
SQL沿用数学上标准的表达式求值的约定―圆括号内的表达式将最先进行求值,其他表达式将从左到右进行求值。
篇7:数学函数 sql数据库
数学函数如下表所示:
函数参数功能ASIN、ACOS、ATAN(float_expr)求float_expr的反正弦、反余弦、反正切ATN2(float_expr1,float_expr2)求float_expr1/float_expr2的反正切SIN、COS、TAN、COT(float_expr)求float_expr的正弦、余弦、正切DEGREES(numeric_expr)将弧度转换为度RADIANS(numeric_expr)将度转换为弧度EXP(float_expr)求float_expr的指数值POWER(numeric_expr,y)求numeric_expr的y次方SQRT(float_expr)求float_expr的平方根LOG(float_expr)求float_expr的自然对数LOGIO(float_expr)求float_expr以10为底的对数ABS(numeric_expr)求numeric_expr的绝对值GEILING(numeric_expr)返回大于等于numeric_expr的最小整数FLOOR(numeric_expr)返回小于等于numeric_expr的最大整数RAND({seed})返回0到1之间的随机浮点数,可能使用整数表达式指定其初值PI返回常数3.141592653589793ROUND(numeric_expr,length)将numeric_expr小数点后的值四舍五入,保留的小数位数为lengthSIGN(numeric_expr)numeric_expr的值为正数、0或负数时分别返回1、0、-1数值
篇8:如何完全卸载SQL数据库
针对SQL数据库卸载不完全的现象,做了如下总结:
1,控制面板卸载
首先,打开控制面板,按照“安装时间”进行排序,卸载SQL Server系列组件
2,利用360删除SQL Server系列组件(同样按照时间排序)
3,利用Windows Install Clean Up软件
微软自己出的卸载软件,用它可以完美卸载Microsoft的系列软件。利用 Windows Installer 清理实用工具,可以删除程序的 Windows Installer 配置信息。如果您遇到安装(安装程序)问题,可能需要删除程序的 Windows Installer 配置信息。
例如,第一次安装程序时没有包括其中的某个组件,如果添加(或删除)此组件时遇到安装问题,您也许不得不删除该程序的 Windows Installer 配置信息。
4,手动卸载,手工来进行删除操作。
(1) 删除以下注册表子项:
HKEY_LOCAL_MACHINESOFTWAREMicrosoftMSSQLServer
HKEY_LOCAL_MACHINESOFTWAREMicrosoft Microsoft SQL Server
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesMSSQLServer
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesSQLSERVER AGENT
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices MSSQLServerADHelper
(2) 手工删除安装目录,默认情况下位于:
C:Program FilesMicrosoft SQL Server
C:Program Files (x86)Microsoft SQL Server
C:UsersAdministrator请仔细查找……
(3) 卸载Microsoft Search 服务,还需要删除:
HKEY_LOCAL_MACHINESOFTWAREMicrosoftSearch
(4) 卸载Microsoft 全文查询,还需要删除:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesMSFTPSVC
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesMSSCNTRS
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesMSSEARCH
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesMSSGATHERVER
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesMSSGTHRSVC
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesMSSINDEX
(5)如果要卸载的是命名实例,则在相应的注册表键的MSSQLServer,SQLSERVERAGENT和MSSQLServerADHelper后加上“/”和相应的实例名。
到此我们就成功的完美卸载了SQL SERVER数据库。
[如何完全卸载SQL数据库]
篇9:学习SQL 文档数据库教程
数据库: SQL Sever
注意:
如果你将SQL Sever配置为使用完整安全或混合安全,那么你可以使用可信连接,如果你使用标准安全,你则需要提供用户 帐号 和密码。
库名: pubs (包含一个虚拟的出版商使用的各个表;安装好就有的,本文例子就用此表讲解)
调试工具: SQL 查询分析器 (允许执行交互的SQL查询,在把查询语句写进程序之前进行测试是非常有用的。)
选库 : 在查询窗口顶部的 DB下拉框中选择数据库pubs,这样你就选择了数据库。
1 例子
1.1 记录查询 ( 附 :有编号)
1.1.1 简单SELECT查询语句
1.1.1.1 描述:
SELECT 字段 1, 字段 2, …… FROM 表 [WHERE 条件]
1.1.1.2 SQL语句:
“ SELECT au_lname, phone FROM authors
” SELECT * FROM authors WHERE au_lname ='Ringer'
1.1.1.3 结果:
1.1.1.4 注意:
1.1.2 操作多个表
1.1.2.1 描述:
1.1.2.2 Sql 语句
“ SELECT au_lname ,title FROM authors, titles
” SELECT title,pub_name FROM titles,publishers WHERE titles.pub_id=publishers.pub_id
1.1.2.3 结果:
1.1.2.4 注意:
1.1.3 操作字段
1.1.3.1 描述:
1.1.3.2 Sql 语句
“ SELECT phone as '电话号码' FROM authors WHERE au_lname ='Ringer'
” SELECT phone '电话号码' FROM authors WHERE au_lname ='Ringer'
“ SELECT price * 2 FROM titles
” SELECT price “Original price”, price * 2 “New price” FROM titles
1.1.3.3 结果:
1.1.3.4 注意:
你可以使用大多数标准的数学运算符来操作字段值,如加(+),减(-),乘(*)和除(/)。
你也可以一次对多个字段进行运算.
1.1.4 排序查询结果
1.1.4.1 描述:
1.1.4.2 Sql 语句
“ SELECT au_lname FROM authors ORDER BY au_lname
” SELECT au_lname ,au_fname FROM authors ORDER BY au_lname ,au_fname
“ SELECT au_lname,au_fname FROM authors ORDER BY au_lname ,au_fname DESC
1.1.4.3 结果:
1.1.4.4 注意:
警告:
不是特别需要时,不要对查询结果进行排序,因为服务器完成这项工作要费些力气。这意味着带有ORDER BY 子句的SELECT语句执行起来比一般的SELECT语句花的时间长。
1.1.5 取出互不相同的记录
1.1.5.1 描述:
1.1.5.2 Sql 语句
” SELECT DISTINCT au_lname FROM authors WHERE au_lname = 'Ringer'
1.1.5.3 结果:
1.1.5.4 注意:
警告:
如同ORDER BY子句一样,强制服务器返回互不相同的值也会增加运行开销,
福气不得不花费一些时间来完成这项工作。因此,不是必须的时候不要使用关键字DISTINCT。
1.1.6 集合函数
1.1.6.1 描述:
? 可以统计记录数目,平均值,最小值,最大值,或者求和。
1.1.6.2 Sql 语句
“ SELECT AVG( lowqty ) 'the_average' FROM discounts
” SELECT COUNT( au_lname ) FROM authors WHERE au_lname= 'Ringer'
“ SELECT COUNT( DISTINCT au_lname ) FROM authors WHERE au_lname= 'Ringer'
” SELECT COUNT( * ) FROM authors WHERE au_lname= 'Ringer'
“ SELECT SUM( min_lvl ) FROM jobs
” SELECT MAX( min_lvl ) FROM jobs
“ SELECT MIN( min_lvl ) FROM jobs
1.1.6.3 结果:
1.1.6.4 注意:
1.1.7 通过匹配来取出数据
1.1.7.1 描述:
? 百分号是通配符的例子之一。它代表 0个或多个字符。
? 中括号([])用来匹配处在指定范围内的单个字符。
? '[ABC]%'任何一个其名字以这些字符中的任一个开头记录都将被返回。
? 脱字符( ^)来排除特定的字符。
? 通过使用下划线字符( _),你可以匹配任何单个字符。
1.1.7.2 Sql 语句
” SELECT royalty FROM titles WHERE royalty >= 10 AND royalty <= 12
“ SELECT royalty FROM titles WHERE royalty BETWEEN 10 AND 12
” SELECT royalty FROM titles WHERE royalty NOT BETWEEN 10 AND 12
“ SELECT royalty FROM titles WHERE royalty = 10 OR royalty = 12
” SELECT royalty FROM titles WHERE royalty IN (10,12)
“ SELECT type FROM titles WHERE type LIKE '%popular_comp%'
” SELECT type FROM titles WHERE type LIKE '[A-M ]%'
“ SELECT type FROM titles WHERE type LIKE '[ABC]%'
” SELECT type FROM titles WHERE type LIKE '[a-fm]%'
“ SELECT type FROM titles WHERE type LIKE '[^(a-fmt)]%'
1.1.7.3 结果:
1.1.7.4 注意:
注意:
如果你想匹配百分号或下划线字符本身,你需要把它们括在方括号中。如果你想匹配连字符 (-),应把它指定为方括号中的第一个字符。如果你想匹配方括号,应把它们也括在方括号中。例如,下面的语句返回所有其描述中包含百分号的站点:
1.1.8 转换数据
1.1.8.1 描述:
? SQL Sever 把大部分数值从一种类型转换为另一种类型。例如,要比较SMALLINT型和INT型数据的大小,你不需要进行显式的类型转换。SQL Sever会为你完成这项工作。
? 当想在字符型数据和其它类型的数据之间进行转换时,需要自己进行转换操作。
? 函数 CONVERT( )
1.1.8.2 Sql 语句
” SELECT CONVERT( CHAR(8),price) + '$' as '钱' FROM titles
1.1.8.3 结果:
1.1.8.4 注意:
函数 CONVERT( ) 带有两个变量。第一个变量指定了数据类型和长度。第二个变量指定了要进行转换的字段。
篇10:SQL Server数据库教学方法探索
SQL Server数据库教学方法探索
文/林海燕
摘 要:SQL Server数据库是计算机专业的一门重要课程,但SQL Server数据库理论性较强,中职学生基础有限,学习效率不高。从多种方法探讨提高学生学习SQL Server数据库的方法,激发学生学习兴趣,收到了较好的教学效果。
篇11:SQL Server数据库教学方法探索
SQL Server数据库是计算机专业的一门重要课程,但由于中职学校学生整体素质不高,缺乏学习积极性,尤其对理论性较强的科目更加不感兴趣。怎样让中职学生喜欢上SQL Server数据库,如何让SQL Server数据库课堂充满活力,是摆在我们计算机专业教师面前的一个问题。为此,本人在中职SQL Server数据库教学中进行多种教学方法的尝试,取得了较好的教学效果。
一、一题多解法
对于同一道题,从不同的角度去分析研究,可能会得到不同的启示,从而引出多种不同的解法。在教学中,不失时机地通过引导学生进行“一题多解”的训练,这样不仅能巩固所学知识,而且能较好地培养学生思维的广阔性。一题多解法特别适合应用在SQL Server数据库语句的学习,()因为同一个问题可以用不同语句去进行解答。
例如,在“学生”数据库中,从“学生信息”表中,查询年龄在15~18岁以内学生的学号、姓名、性别、年龄、班级的记录。
(1)使用逻辑运算符AND
Use学生
Select学号,姓名,性别,年龄,班级
From学生信息
Where年龄>=15 AND 年龄<=18
go
(2)使用BETWEEN关键字
Use学生
Select学号,姓名,性别,年龄,班级
From学生信息
Where年龄between 15 and 18
go
(3)使用LIKE关键字
Use学生
Select学号,姓名,性别,年龄,班级
From学生信息
Where年龄like‘1[5-8]’
go
通过一题多解,既能促使学生沟通知识点间的联系,又培养了学生的思维能力,同时也让学生通过对比、小结,得出自己的体会,充分发掘自身的潜能,使学生感受到成功的喜悦和增强学习的自信心,也极大地激发了学生学习SQL Server数据库的积极性和浓厚的兴趣。
二、问题学习法
问题是学习的第一动力,是学习型组织的起点。没有问题的学习是死学习。教师经常会在课堂上对学生提问题,提问题的目的主要是了解学生是否掌握了教学重点,但教师在课堂上80%都属于强记知识点的问题,例如,“SQL Server数据中的类型有哪
些?”“创建SQL Server数据库有哪两种途径?”而不是对学生的创造性思维有帮助的问题。根据教学进度,观察学生对已学知识的掌握程度,要逐步给学生设计一些需要深度思考、分析思考的问题,这样学生的思维模式也会逐渐变得有创造性。例如,在“学生”数据库中,“学生信息”表包括的字段有学号、姓名、性别、班级、年龄、电话、地址,要查询“学生”信息表中所有的记录,则输入如下SQL语句:
Use学生
Select学号,姓名,性别,班级,年龄,电话,地址
From学生信息
go
学生已经掌握了以上基本的查询,则要对学生提出思考的问题:(1)要显示表中前2行数据,输入的语句是什么?(2)只显示学号为“002”需要什么子句?(3)要显示年龄大于16岁的记录需要运算符吗?(4)王小兴(被提问学生)同学的语句正确吗?错在哪里?为什么?(让大家对同学的回答进行评价)
以上问题对学生的回答难度是逐步加强的,对学生的认知、理解问题的`能力也是逐步提高的。在SQL Server数据库的学习过程中会遇到很多现实中需要解决的问题,学生不仅要学会发现问题,还要根据不同层次的问题作出解答。通过学生解答问题,加强了对知识的理解和巩固,自然得到事半功倍的效果。
三、竞赛学习法
虽然中专生专业基础差,但都有好胜心强的特点,很多时候布置实验任务,学生都很懒散,因为SQL Server数据库本身比较枯燥,需要学生静心来思考,如果不采取一定的方法,学生上机实验必定是得过且过。因此,在上机实验的过程中,教师必须要采取有效的教学方法,激发学生学习的兴趣。本人觉得在上机实验中采用竞赛式的方法,收到了比较好的效果。将知识点和任务融合在竞赛题目中,让学生分组进行比赛,最快最好者为胜。例如,在讲授完SQL Server数据库与数据表的创建的时候,布置学生完成实例创建“学生”数据库和数据表,根据完成情况设置一、二、三等奖,对任务完成得又快又好的学生发放一些小奖励,又或者对一些上机不认真的学生进行一些诸如整理机房、摆好椅子的小惩罚,让学生对学习SQL Server数据库保持比较高的热情,培养学习数据库的兴趣,“兴趣是最好的老师”,学生有兴趣才会深入学习枯燥的数据库知识。
四、示范激励法
有一句名言是这样说的:“优良的示范是最好的说服。”在给学生布置任务时,教师先把任务完成的结果在学生面前展示一
番,这样做不仅对学生完成任务的信心有很大的激励作用,而且还可以让教师的专业知识得到学生的肯定和信服,现在很多学生“瞧不起”教师,就是他们觉得教师不是很有“才”,这种示范激励法可以让学生对教师的看法进行360度的转变。例如,要布置学生设计一个学校图书管理数据库,学生一开始可能觉得无从下手,教师可以先把做好的图书管理数据库演示给学生看,让学生了解图书管理数据库需要处理哪些业务,有哪些基本功能,根据需求分析和数据库系统,需要设计哪些数据表。在学生完成教师布置的任务过程中,教师就要深入学生,一方面进行学习指导,一方面及时发现专业学习的“千里马”,并让这些“千里马”在全班学生面前作示范,这样做,对于增加其他学生的竞争意识和学习信心,尤其具有重要的意义。
以上是本人在讲授SQL Server数据库课程中经常用到的方法,实践证明以上方法有助于调动学生学习SQL Server数据库的积极性,培养学生学习SQL Server数据库的兴趣,提高SQL Server数据库教学效率。教师若是在SQL Server数据库教学中运用得好,将会使中职SQL Server数据库课堂教学带来新的生机和活力。
参考文献:
[1]李丹丹,史秀璋。SQL Server数据库实训教程[M].北京:清华大学出版社,.
[2]张汀R匝生为中心:教学法分析及案例[M].北京出版社,.
(作者单位 广东省惠州工程技术学校)
篇12:sql数据库备份和恢复常用操作
1.新建一个同名的数据库
2.再停掉sql server(注意不要分离数据库)
3.用原数据库的数据文件覆盖掉这个新建的数据库
4.再重启sql server
5.此时打开企业管理器时会出现置疑,先不管,执行下面的语句(注意修改其中的数据库名)
6.完成后一般就可以访问数据库中的数据了,这时,数据库本身一般还要问题,解决办法是,利用
数据库的脚本创建一个新的数据库,并将数据导进去就行了.
USE MASTER
GO
SP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVERRIDE
GO
UPDATE SYSDATABASES SET STATUS =32768 WHERE NAME='置疑的数据库名'
Go
sp_dboption '置疑的数据库名', 'single user', 'true'
Go
DBCC CHECKDB('置疑的数据库名')
Go
update sysdatabases set status =28 where name='置疑的数据库名'
Go
sp_configure 'allow updates', 0 reconfigure with override
Go
sp_dboption '置疑的数据库名', 'single user', 'false'
Go
【SQL数据库工作的简历】相关文章:
6.数据库应用简历
10.数据库开发求职简历






文档为doc格式