sql server 学习笔记

1.将数据库的字符集修改为:
alter database dbname collate Chinese_PRC_CI_AS

2、如果是表中的字段:
ALTER TABLE Userinfo ALTER COLUMN name VARCHAR(4) COLLATE Chinese_PRC_CI_AI

如果修改整个服务器的默认排序规则,用Rebuildm.exe重建master库  

1、create database school 创建数据库school

2、drop database school 删除数据库school

3、use school 连接到school数据库,使其成为当前数据库

4、create table class(classID int primary key identity not null)
创建一个名为class的表,其有一个int型数据classID字段,该字段设置了主键约束
并自动编号列且不能为空

7、select * into class2 from class
   将class表中的所有数据复制到class2表中

8、 select * into class2 from class where 1=0 只复制表结构

9、insert into class2(className) values('Juhn')或
   insert into class2(className,tel) values('Bile','0731-2255664')    在class2表中插入一条记录
Insert into RPMIItbSales ([ControlProcessed] ,[ControlTimeStamp])[]可有可无

10、 delete from Student where StudentID between  13 and 15
    删除Student表中StudentID在13至15之间的数据(包括13和15)

11、alter table class2 add tel varchar(15) default('没有电话')
    修改表class2,为它添加一个tel列并将其默认值设为'没有电话'

12、alter table class2 drop column tel 删除列

13、alter table student add constraint telDefault  default('没有电话') for tel
    修改tel列的默认值

14、create table class3(classID int ,constraint id_key primary key(classID))
    创建一个名为class3的表并为它设置了名为id_key的主键约束

16、alter table class2 add age int check (age between 0 and 120)
    为class2添一个age列,并为其设置检查约束,使其的取值在0到120之间

17、alter table class2 add age int ,constraint ageCheck check
    (age between 0 and 120)
    其设置检查约束方法二,为约束取名为ageCheck

18、alter table class2 add tel varchar(15) ,check
(tel like '[0-9][0-9][0-9]-[0-9][0-9][0-9][0-9][0-9][0-9][0-9]')
其设置检查约束方法三,此为模糊约束

19、create table class3(ID int primary key identity,classID int ,
    name varchar(15) ,constraint classID foreign key(classID) references
    class2(classID))
    设置外键约束

20、alter table class3 drop classID
删除class3的classID外键约束

21、create index class2Name on class2(className)
    在class2表的calssName字段上创建一个class2Name的索引

22、create unique index class2Name on class2(className)
    创建唯一索引

23、select classID,className from class2 where className='body'
    select classID,className from class2 where className like '%s'
    创建索引后查询的的速度将更快,但会降低insert、update、delete的执行速度

24、drop index class2.class2Name 删除表class2上的class2Name索引

25、update class2 set className='Lida',tel='13787277732' where classID=3
    将class2表中className和tel列、classID=3
    行的单元格的值改为'Lida'和'13787277732',注意忽略where语句将改变表中所有的行

26、create default sexDefault as '男'; 创建一个名为sexDefault的默认值
    sp_bindefault sexDefault,'student.sex';
    将创建的sexDefault默认值绑定到student表的sex字段上

27、insert into class2(name,names) select name,names from class1
    将class1中的数据全部复制到class2中

28、truncate table class 删除class表中所有的行

29、select Name 国家,Population 人口 from BBC where Name
    in('France','Cermany','Italy United')
    查询BBC表中'France','Cermany','Italy United'三个地区的所在的国家和人口数

30、select Name 国家 from BBC where Name like '%United%'
    查询BBC表中的Name字段中包含United字符的国家,通配符"_"表示匹配任意单个字符

30、select Name 国家, Population 人口 from BBC where Population>100000000 order by Population desc
    查询BBC表中的Population字段大于100000000的国家和人口,并按降序排序,默认为升序asc

31、select Name,round(Population/1000000,0) as '人口(百万)' from BBC where Region='South Asia'
    查询BBC表中的Region='South Asia'国家和百万人口数(round是四舍五入)

32、select distinct Region from BBC
    查询BBC表中的Region字段中的非重复数据,distinct排除重复数据
    如有多列则作用在列的组合上,而不再作用在单列上

33、 select top 50 percent * from BBC 
    查询BBC表中的所有字段,但只返回总行数的50%,percent表百分数、可选

select top 3* from BBC 

34、select * from BBC where Area>100 and not GDP<10000000
    查询BBC表中的所有Area小于100并且GDP不小于10000000的数据,会返回所有的列,不只是Area列

33、select * from BBC where Area not between 20000 and 30000
    查询BBC表中的所有Area不在20000和30000之间的数据,会返回所有的列,不只是Area列

34、select distinct Name+str(Age) 学生 from Student
    查询Student表中Name和Age字段都不重复的数据
    str(Age)返回Age的字符串表达形式,"学生"是别名
   
35、select * from Student where Nealth is null
    查询Student表中Nealth字段为null的数据
   
36、exec sp_helpconstraint 'Teacher'
    查看'Teacher'表中的所有约束
   
37、select * from Student where StudentID=1
for xml raw
返回XML语句

39、create procedure insert_Procedure
@Name varchar(10),
@Sex varchar(2),
@Age int,
@Tel varchar(20),
@Address varchar(50)
as
insert into student(Name,Sex,Age,Tel,Address) values(@Name,@Sex,@Age,@Tel,@Address)
创建一个插入数据的存储过程
40、select datediff(day,'20090403',getdate())
用指定时间减去当前时间,返回的是天数,还可以用month返回月数

时间: 2024-10-28 03:13:59

sql server 学习笔记的相关文章

SQL Server学习笔记之事务、锁定、阻塞、死锁用法详解

本文实例讲述了SQL Server学习笔记之事务.锁定.阻塞.死锁用法.分享给大家供大家参考,具体如下: 1.事务 隐式事务 /*================================================================== 当以create,drop, fetch,open, revoke,grand, alter table,select,insert,delete,update,truncate table 语句首先执行的时候,SQL Server会话

SQL Server学习笔记

<SQL Server从入门到精通>学习笔记 1 数据管理技术的三个阶段:人工管理.文件系统.数据库系统. 2 数据库的组成:数据库.数据库管理系统.数据库管理员.硬件平台.软件平台5部分. 3 数据库的三级模式:内模式.模式.外模式. 4 三级模式之间的映射:外模式/模式,模式/内模式. 5 常用的数据库数据模型:层次模型.网状模型.关系模型. 6 关系数据库的规范化: (1)1NF:原子性,字段不可分. (2)2NF:唯一性,有主键,非主键关键字依赖于主键. (3)3NF:去除传递依赖(非

[SQL Server]学习 Step By Step 之一:SQL Server 2000简介

server 再声明一下:本系列文章只是学习SQL Server的一些初级知识,欢迎初学者前来讨论,高手就不必看了! 先让我们来了解一下一般的关系型数据库所支持的常用的数据库对象类型!1,表    表示关系数据库中存储数据的基本单元.表是实际信息存储的结构,一般为设计是的一个逻辑实体.一个标一般有一些列(字段.域)构成.2,视图    视图是一种实际参照一个或多个表中数据的数据库对象,它由SQL查询所定义,在SQL Server中我们可以在定义视图.要注意的是:视图只是从表中检索信息,自身并不存

[SQl Server学习] step by step 前言!

server 自己最近在学习Sql Server的一些知识!为了能够提高自己的学习效果以及可以为后来者提供一些经验! 在系统的学习SqlServer的知识之前,我对于数据库的知识已经有了一些了解,对于数据库的设计以及SQL Server 2000的企业管理器和查询分析器的使用都有了一些了解. 现在开始系统地学习Sql Server的知识.学习的主要步骤及参考资料是MCDBA认证的参考书和参考步骤!

Oracle数据库之PL/SQL游标学习笔记

1. 游标概念 字面意思是游动的光标,是指向上下文区域的句柄或指针. 在PL/SQL块中执行CRUD操作时,ORACLE会在内存中为其分配上下文区.用数据库语言来描述游标就是:映射在上下文区结果集中一行数据上的位置实体. 用户可以使用游标访问结果集中的任意一行数据,将游标指向某行后,即可对该行数据进行操作.游标为应用提供了一种对具有多行数据查询结果集中的每一行数据分别进行单独处理的方法,是设计嵌入式SQL语句的应用程序的常用编程方式. 在每个用户会话中,可以同时打开多个游标,其最大数量由数据库初

linux中ubuntu server学习笔记

1.解决中文乱码问题.本来想为了方便使用系统,特意选择了中文安装,结果命令行中的中文显示一堆方格符号,既然是玩 server 系统,那还是用英文吧.修改内容: sudo vim /var/lib/locales/supported.d/local 只保留:en_US.UTF-8 UTF-8 sodu vim /etc/default/locale 把下面内容: LANG="zh_CN.UTF-8″ LANGUAGE="zh_CN:zh" 修改为: LANG="en_

SQL Server 2005深层工具和运行时间集

本文分析SQL Server 2005深层工具和运行时间集. 简化的开发和调试 Microsoft Visual Studio与.NET Framework的紧密集成,使数据驱动的应用系统开发和调试更加顺畅. 开发人员可以建立数据库对象, 比如存储进程, 使用任何.NET语言并且能够无缝地跨越.NET 和Transact-SQL (TSQL)语言进行调试. 在客户端一侧, 有效的数据建立允许更快的客户端应用系统的开发, 然而, 嵌入SQL Server学习版的能力简化了轻量级应用系统的部署. •

.NET编程和SQL Server ——Sql Server 与CLR集成 (学习笔记整理-1)

原文:.NET编程和SQL Server --Sql Server 与CLR集成 (学习笔记整理-1) 一.SQL Server 为什么要与CLR集成 1. SQL Server 提供的存储过程.函数等十分有限,经常需要外部的代码来执行一些繁重的移植: 2.与CLR集成可将原本需要独立的程序来实现的功能迁移到SQL Server 内部进行数据操作: 3.T-SQL数据查询语言在返回数据集方面很好,但是除此之外表现不佳.与CLR的集成可解决这一问题: 4..NET的操作代码和执行的速度比T-SQL

sql server 2005数据存储过程学习笔记

sql server 2005 存储过程语法 CREATE { PROC | PROCEDURE } [schema_name.] procedure_name [ ; number ] [ { @parameter [ type_schema_name. ] data_type } sql server 2005 存储过程 语法 CREATE { PROC | PROCEDURE } [schema_name.] procedure_name [ ; number ]     [ { @par