***************************************
2月14 sql server2005
****************************************
数据库的分离和附加
从外围中导入数据
nvarchar: 双字节,Unicode存储
varchar:单字节,节省空间,如果只涉及英文字符,使用varchar,主键设置用varchar(10),一般用英文作主键
ntext:存储文本
SQL2005 数据类型
序号 类别 SQLServer C# 备注
1 整数 bit Boolean True转换为1False转换为0
2 tinyint Byte C#数据类型在System命名空间
3 smallint Int16
4 int Int32
5 bigint Int64
6 smallmoney Decimal
7 money Decimal
8 numeric Decimal
9 decimal Decimal
10 浮点数 float Double
11 real Single
12 日期和时间 smalldatetime DateTime
13 datetime DateTime
14 timestamp DateTime
15 字符串 char String
16 text String
17 varchar String
18 nchar String
19 ntext String
20 nvarchar String
21 二进制数据 binary Byte[]
22 varbinary Byte[]
23 image Byte[]
24 其他 uniqueidentifier Guid
25 Variant Object
一些细节:
1、在Microsoft SQL Server 2005系统中,提供了CHAR、VARCHAR、TEXT、NCHAR、NVARCHAR、NTEXT等6种数据类型。前3种
数据类型是非Unicode字符数据,后3种是Unicode字符数据。
2、char与varchar的区别
char,不变长度的字符串,速度快。
varchar,可变长度字符串,节省储存空间,但是存取速度慢。
如果你定义长度为10位,输入一个A
对于char, 数据库存的为'A ', A+9个空格
对于varchar, 数据库存的为'A'
从空间上考虑,用Varchar没错,
从效率上考虑,用char没错
3、DATETIME与SMALLDATETIME的区别
DATETIME数据类型可以表示的范围是1753年1月1日至9999年12月31日,时间精确度是3.33毫秒。SMALLDATETIME数据类型可以表示
的范围是1900年1月1日至2079年12月31日,时间精确度是1分钟。
4、二进制
二进制数据类型包括BINARY、VARBINARY、IMAGE等3种数据类型,可以用于存储二进制数据。
BINARY可以用于存储固定长度的二进制数据,VARBINARY用于存储可变长度的二进制数据。
微软建议使用VARBINARY(MAX)代替IMAGE数据类型 。
5、其他
除了前面介绍的数据类型之外,Microsoft SQL Server 2005系统还提供了CURSOR、SQL_VARIANT、TABLE、TIMESTAMP、
UNIQUEIDENTIFIER、XML等数据类型。使用这些数据类型可以完成特殊数据对象的定义、存储和使用。
6、BLOB
BLOB是一个二进制大型对象,是一个可以存储大量数据的容器,它能容纳不同大小的数据。BLOB类型实际是个类型系列(TinyBlob、Blob
、MediumBlob、LongBlob),除了在存储的最大信息量上不同外,他们是等同的。
MySQL的四种BLOB类型
类型 大小(单位:字节)
TinyBlob 最大 255
Blob 最大 65K
MediumBlob 最大 16M
LongBlob 最大 4G
实际使用中根据需要存入的数据大小定义不同的BLOB类型。
需要注意的是:如果你存储的文件过大,数据库的性能会下降很多
--------------------------------------------------------------------------------------------------
@主键的选取
有意义的主键:
无意义的主键:
粗粒度,低频度:返回的数据要多,操作的次数要少
模糊查询:like % +@var+%
视图:逻辑上的数据
动态表不适合使用索引
备份,还原,导入外围数据
--------------------------------------------------------------------------------------------------
存储过程:
功能强大,网络的传输量小,方便管理,一次编译多次执行。
@参数
usp_Account_QueryByCreateDate:用户的存储过程_所使用的类_功能
存储过程调用存储过程
实例存储过程的功能:生成一个自定义的主键的唯一值
Declare @customerID varchar(10)
execute usp_GetEnity(..)
sp_executesql (Transact-SQL) : 执行可以多次重复使用或动态生成的 Transact-SQL 语句或批处理。Transact-SQL 语句或批处理可以
包含嵌入参数。(方法调用方法 )
浙公网安备 33010602011771号