本帖最后由 邓连超 于 2012-11-25 17:19 编辑
MSSQLServer:在我们的机器上是以服务的形式存在的。 services.mscfile:///C:/Users/ADMINI~1/AppData/Local/Temp/enhtmlclip/Image.png
表是由行和列组成的,一个表一般表示一个实体或一个对象的集合。
列:又叫作字段或属性,用来描述实体的,列用来表示实体的特征。
行:又叫记录,每一行记录就是一个实体一个对象
char:固定长度的字符,如char(10)长度为10的定长字符,如果存入的数据不足10位,则补空格补齐。超过10个会出错。10表示char的长度
Varcha:可变的字符型,如varchar(10)这字段,最多可以存储是个字符,不足10个也不会补空格,超出是个会出错。10表示最大长度
在不加n的类型中,一个英文字母一个单位长度,一个中文或中文字符占两个单位长度。
nchar/nvarchar使用了unicode(双字节)编码
file:///C:/Users/ADMINI~1/AppData/Local/Temp/enhtmlclip/Image(3).png
插入数据的时候一但出现这个错误,就能推测,吧一个比较大的数据放到一个比较小的空间中。
主键:一般我们都会有一个字段,这个字段不能为空,并且必须是惟一的,那么这个字段就可以唯一的确定一条记录。
造成数据冗余:数据重复
修改时容易造成漏改
在数据库中,如果有1对N的关系,一般要拆分成两个表来做。
SQl语句:
insert 插入语句:
语法:Insert into 表名(列名1,列名2,.....列名n) values(值1,值2......值n)
默认情况下,不允许对自动增长列赋值
update 数据更新:
语法:update 表名 set 要更新的字段1=值1[,要更新的字段2=值2] [where 条件]
delete 删除数据:
语法:delete from 表名 [where+条件]
truncate table 表名
清空表,并复位自动增长列
添加约束:
file:///C:/Users/ADMINI~1/AppData/Local/Temp/enhtmlclip/Image(4).png
语法:
alter:修改的意思
alter table 表名
add constraint 约束名 约束(添加该约束的字段)
约束名命名规范:例:PK_表名(主键约束)
主键约束和唯一约束的相同点:都必须唯一;不同点:唯一约束可以为null,主键约束是不可为null。
file:///C:/Users/ADMINI~1/AppData/Local/Temp/enhtmlclip/Image(5).png
查询:
distinct 把结果集中相同的行去掉,只保留一行,去重复行
表连接
分为三种:
Inner Join(内连接)、Left Join(左外连接)、Right Join(右外连接)
左连接
要求左表中的数据,在结果集中必须出现,如果在右表中不存在,将以NULL形式显示
或者也可以这样理解,先把左表中所有的数据放在结果集中,用右表去与左表匹配
所有的左右连接全可以转换!
访问数据库,无非就是四种情况,
1,执行一个insert update delete (无返回值情况)这种情况用commend ExecuteNonQuery
2,执行一个Commend ExeteScalar()这个方法用于得到数据库中的第一行第一列
3,能到到一个多行多列 的一个集合的:Commend ExecuteReader()返回一个DataReader对象,我们可以通过这个对象一条一条的从数据库上读下来符合我们条件的数据。
4,也是要得到多好多咧的集合,DataAdapter的fill来填充一个DataSet或DataTable
|
|