---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流! ----------------------
数据库
(1)数据库中的概念
Catalog 分类 不同的类数据放到不同数据库中
表 不同类型的资料放到不同格子中 列 字段
主键 数据行的唯一标示 不会重复的列才能当主键没有特殊理由都要设主键
业务主键 有业务意义的字段 身份证银行账号
逻辑主键 没有任何意义的字段 流水号 推荐使用逻辑主键
表间关联 外键
字段类型
bit 可选值(0,1)datetime int varchar nvarchar
char 不足部分用空格代替 varchar 可变的长度所以名字之类的应该用varchar或nvarchar
sql语句
sql语句中字符串都是单引号 大小写不敏感
创建表语句
CREATE TABLE T_Person(Id int NOt NULL,Name nvarchar(50),Age int NULL),
删除表 Drop table T_Person
简单的插入语句
Insert intoperson1(number,name,age)values(3,嘎嘎子,13)
sql主要分 数据定义语言ddl(creattable droptable) 数据操作语言dml(insert into )
用 标识列实现自动将字段是标识列设置成是 一个表只有一个字段能有一个标识列
Guid算法 产生一串数字 主要用Guid产生一串不重复数字
用法 Guid id=Guid.NewGuid();
数据插入
insert into Person1(Name,Age)values('lily',38); (Name,Age)可省略 但一般不这样用
insert into person2(id,name,Age)value(newid() ,'lily',23);此时表中的id类型选择uniqueidentifier
Guid 类型的默认值可以设置为newid()就会自动生成Guid类型的一串数字
更新数据sql语句
update person set Age=30,Name=‘lala’ ; 修改person表中的所有数据 让他们的Age字段等于30 Name字段等于lala
update person set Age=Age+1; 可以让Age+1;
条件更新
update person set Nickname=N'青年人'where Age>30 更新年龄>30的 字段Nickname的为青年人
删除数据
delete from Person 删除表中所有数据 清空 Drop person 把表都去掉了
delete fromPerson where Age>20 去掉Age》20 这一行
数据检索
select *from 表名 检索 这个表中的所有数据
select 列名1列名2 from表名 检索表中列名为1列名为2的数据
修改表的字段名
select 列名 as 新列名,列名as 新列名 from表名
select gatedate();获取时间
select还可以计算 select 列名 as 姓名,Fsalary+1000 as 月薪 from 表名 把把Faslary+1000;
聚合函数
select max(Fsalary) from 表名 字段Fsalary中最大的数查出来 类似的min()最小的 avg()平均
select count(*)from 表名
select *from 表名 order by 列名 按照一个列 排序 默认升序从小到大 by后边加上(Asc降序 )( Desc升序)
语句中有where时 order by 放在where后边
select* from person
where Age>20
order by Age Desc 筛选表person中 年龄大于20的 排序方式为升序
通配符过滤
单字符匹配
半角下的"_" select*from person where name like '_hha' 已任意开头后边为hha的
半角下的"%" select*from person where name like '%n%';姓名中包含n的字符
空值处理
null 不等于没有名字
select *from person where name is null 查出name中为null的数据
多值匹配
select * from person
where age=23 or age=19 or12 查找年龄为23 19 12的
select*from person
where age in (23,12,34)查找 年龄为 23 12 34的
select*from person 查找 年龄大于20小于30的
where age>20and age<30
---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流! ----------------------