黑马程序员—传智播客sql从入门到提高视频知识整理(1)

时间:2021-12-07 12:01:34

---------------------- Windows Phone 7手机开发.Net培训、期待与您交流! ----------------------

我们平时所说的“数据库”有两种含义:一是指DBMS(DataBase Management System),即MSSQLServer、Oracle等,二是(Catalog)即存放一堆数据表的一个分类。

主键(PrimaryKey)是数据行的唯一标识,不会重复的列才能为主键,一个表可以不设主键,但是为了便于处理,一般表都要设主键。
主键分为使用有业务意义的字段如身份证号作为主键的业务主键和没有任何业务意义的字段作为主键的逻辑主键,因为业务主键不能保证不会重复或变化,所以推荐使用逻辑主键。
大部分数据类型都可以当主键,但一般情况下,都使用自增的int(bigint)或uniqueidentifier(Guid、UUID)做主键。业务主流倾向于是用Guid。
标识列(即自增增长字段)可以避免并发问题,在Insert是不需要指定主键值。
SQLServer中生成GUID的函数newid(),.Net中生成Guid的方法Guid.NewGuid(),返回的都是Guid类型。Guid算法是可以产生唯一标识的高效算法,保证每次生成的GUID无论在同一计算机还是不同计算机上都永不重复。

int自增占用空间小、易读但效率低,不利于数据的导入导出。
Guid效率高,数据导入导出方便但是占用空间大,不易读取。

SQLServer有Windows验证和用户名验证两种验证方式。

datetime用来定义时间。
表示非常大的整数用bigint,正常用int。
nvarchar(max)可以指无限大,例如用来保存文章。
纯英文字段用varchar,带中文信息最好用nvarchar。
bit(可选值0、1),一般用来定义bool类型的值。
char(n)和varchar(n),括号内的n为数字指字符长度,区别在于,char(n)的长度是固定的,varchar(n)的长度是可变(Var:Variable,可变的)的,char(n)不足长度n的部分用空格填充。所以,只有在确定字段为固定的长度是采用nchar  一般情况下都是使用varchar 或nvarchar。

SQL语句中字符串用单引号。SQL语句大小写是不敏感的。
SQL主要分DDL(数据定义语言)例如Create Table(创建表)、Drop Table(删除表)、Alter Table(更改表),和DML(数据操作语言)例如Select、Insert(插入)、Update(修改表数据)、Delete(删除表数据)等。

---------------------- Windows Phone 7手机开发.Net培训、期待与您交流! ----------------------