从Access数据库到SQL Server高手_Mssql数据库教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!

推荐:解读五种查询数据库中重复记录的方法
1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 select*frompeople wherepeopleIdin(selectpeopleIdfrompeoplegroupbypeopleIdhavingcount (peopleId)1) 2、删除表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断,只留

之前编写软件都是ASP+Access,由于看到SQL Server数据库中的一些功能确实高过ACCESS,具体如下:
1、触发器:有了触发器,也就是可以在增加一个数据的时候对应调用一个过程来维护数据库的完整性。
2、视图:这个是我对SQL Server最感兴趣的一个功能,通过视图我们可以将原本直接调用多个数据表的工作写成一个视图,通过视图去操纵表,日后数据表发生变化我们只要修改数据库就可以了,并不要修改整个应用程序。
3、存储过程:我觉得这个功能对我现在的系统的速度影响比较大,感觉不错。
也就是将以前操作数据的指令(新增、修改、删除)写到存储过程中来执行,之后执行某段操作就不必在ASP中写了,只要ASP中调用此过程就可以了。

好了,我们开始使用SQL Server吧!

于是,将Access数据库导到SQL Server中,结果发现问题一大堆。
经过一个下午的解决找到一部分,共同探讨吧!

1、数据类型
SQL Server的数据类型可不像Access只有几种,具体常用的我整理了一下:

字符类型
char < 4000字 通常适合英文字符,而且长度最好比较一致。例如:存储用户的ip地址
nvarchar < 4000字 适合双字节字符(例如:汉字),比较适合长度多变的内容。例如:文章的标题
ntext < 2^30-1字(可是10个汉字) 不用说啦,原来的备注字段就用它吧。

数字类型
整数
tinyint 0~+255
smallint -32768~+32767
int -2^31~+2^31-1(可以容纳21亿)
bigint -2^63~+2^63-1
小数
decimal -10^38+1~+10^38-1
货币
money -2^63~+2^63-1(如果你是盖茨.......)
smallmoney -214,748.3648~214,748.3647(21万,如果你的钱不是天文数字就用这个吧)

逻辑类型
bit 1或0的整数数据(可以不用True和False了)

日期类型
datetime 这个类型可以记录1753年1月1日~9999年12月31日
smalldatetime 1900年1月1日~2079年6月6日

到这里你就把你以前倒过来的数据类型修改一下吧!

2、数据约束

如何设置主键?
点击数据表==>设计表==>如果看到小钥匙点一下就可以了

如何不让记录为空?
点一下字段后边的“允许空”

如何让一个字段自动累加?
具体字段==>下面选项==>标识==>是==>ok

如何让内容不重复?
具体字段==>右键==>索引/键...==>新建索引==>IX_表名==>创建UNIQUE==>约束==>ok

如何设置索引??
具体字段==>右键==>索引/键...==>新建索引==>IX_表名==>创建UNIQUE==>索引==>ok

如何设置datetime的默认值??
在默认值栏目中输入:getdate()

3、创建关系
1、打开数据库
2、点击:“关系图”
3、右键==>新建数据库关系图
4、添加所需表
5、鼠标拖动

分享: 解析SQL Server和Oracle常用函数区别
S与O分别为SQL Server与Oracle的缩写。 一、数学函数 1.绝对值 S:selectabs(-1)value O:selectabs(-1)valuefromdual 2.取整(大) S:selectceiling(-1.001)value O:selectceil(-1.001)valuefromdual 3.取整(小) S:selectfloor(-1.001)value O:selectfloor(-1

来源:模板无忧//所属分类:Mssql数据库教程/更新时间:2010-03-11
相关Mssql数据库教程