博客园  :: 首页  :: 新随笔  :: 订阅 订阅  :: 管理

vs2005入门 .Net2.0视频教程 之 SQL查询语法基础 [视频]

Posted on 2007-03-11 19:14  天轰穿  阅读(6726)  评论(9编辑  收藏  举报
查询字符串到底是什么意思呢?
首先我们要说的是数据查询,所谓数据查询就是对数据存储设备的一条或一组请求。

那么请求总得有个载体,在我们的编程中呢就用字符串来完成,这条字符串就被我们称为查询字符串。

我们这一整个过程如下:

客户端发出请求,由应用程序的中间层交给数据库,数据存储设备把数据从一个或者多个表中把数据整理出来交给中间层,中间层在通过映射把数据绑定到页面的数据控件上显示出来。

这么看,其实一切都很非常特别十分简单,是吧,BUT ,回想我们以前说买鸡的哪个过程。如果我们请求的这个朋友是一个非常十分特别很聪明,很了解我们的人,那没关系,只要说买鸡他就知道买什么样的鸡,是土鸡还是肉鸡,是生的还是熟的,多少斤鸡腿,多少鸡翅,等等等,如果这个人很笨,很不了解我们怎么办?那么唯一的办法就是把一切都交代清楚。而很不幸,我们的程序就是个笨人,所以我们的字符串中就必须写明,要取那些数据,然后把他怎么排列,按什么顺序排列,只要满足那些条件的等等一系列的问题,所以我们的SQL字符串就有了下面的写法

检索语句
select    a,b,c   from     table_name    where  a="天轰穿"   or   b<40     and c<>5   or  a like  '%xxx%'  order by b desc

更新语句
update   table_name    SET    (b=100,c="天轰穿")  where a='原创.Net视频教程'
有几点需要注意的是:
1.标视列不能给更新
2.如果没有指定where语句,那么将更新所有的行数据
3.如果插入了非数据列指定的类型,将不会执行命令并返回错误,例如将文字插入到int类型的列中
4.插入到nvarchar数据类型的列中的数据将被删除所有的尾随空格.

添加新记录
insert  into table_name(a,b,c)  values('天轰穿',100,'www.thc123.com')
insert  into table_name    values('天轰穿',100,'www.thc123.com')
注意:
1.如果要替换现有的数据,必须先删除或者改掉
2.没个列名在字符串中只能出现一次
3.如果省略列名,则默认从按照列的序号升序依次填充数据.
4.如果列名提供了三个,而值提供了四个,那么除非该列有默认值或者具有自动增量,否则我可以很负责任的告诉你,会出错.如果列允许空值,那不提交给数据也一样可以没关系的了
5.插入值的数据类型必须与对应的列定义的数据类型一致,否则一样会出错.
6.依照第五条规定,如果列列表和值列表不对应咋办呢?简单,显式指定列和值的对应关系即可.

删除记录
delete  from  table_name  where a="天轰穿"
注意:
1.如果没有指定条件,将删除所有的行
2.如果指定了条件,那么所有符合条件的行都将被删除
3.如果目标数据行任意一行违反了FOREIGN KEY 约束,这次屠杀行动都将失败.

完整视频包下载