SQL的基本对象主要有常量,表示符,分隔符,保留关键字。
1、常量
常量是一个包含文字与数字,十六进制或数字常量。一个字符串常量包含单引号('')或双引号("")字符集中的一个或多个字符。
如果想在单引号分隔的字符串中用到单独的引号,可以在这个字符中用户连续的单引号(即用两个单引号表示单引号)。十六进制的常量表示不可打印的字符或者是其他二进制数据。每个十六进制常量都以0x开头,后面附带有字符或者数字。
有效字符常量举例:
"abc"
"ab .c"
"123"
'i don''t'
0xafec
不属于字符常量:
'ab'c' --奇数个单引号
'a" --引号不是成对的
数字常量包含所有有记号或没记号的整数、定点值和浮点数。
以下属于数字常量:
130
-130
-0.351E5
一个常量通常有一直数据类型和长度,这取决于常量的格式。
2、分隔符
在T-SQL中,双引号有两层意思。除了应用字符串之外,双引号还能够用来做分隔符,也就是所有的定界表示符(delimited identif ......
现在Linq to sql的资料还不是很多,本人水平有限,如果有错或者误导请指出,谢谢。
一步一步学Linq to sql(一):预备知识
一步一步学Linq to sql(二):DataContext与实体
一步一步学Linq to sql(三):增删改
一步一步学Linq to sql(四):查询句法
一步一步学Linq to sql(五):存储过程
一步一步学Linq to sql(六):探究特性
一步一步学Linq to sql(七):并发与事务
一步一步学Linq to sql(八):继承与关系
一步一步学Linq to sql(九):其它补充
一步一步学Linq to sql(十):分层构架的例子
所有代码点击这里下载 ......
测试机test安装的是windows server2008+sql server 2008,数据库安装成功。可以连接局域网内其他机器的数据库(其他机器的数据库为SQL 2005)。但是网内其他机器访问test时,无法连接,报错。信息为:在建立与服务器的连接时出错。在连接到SQL SERVER 2005时,在默认的设置下SQL SERVER 不允许进行远程连接可能会导致次失败。(prodvier:命名管道提供程序,error:40-无法打开到SQL SERVER的连接)。
并且在TEST机器上的应用程序,需要连接本机数据库,也报错说配置错误。
目前能够确定是test机上的数据库,可以对外访问其他机器,却不允许外部机器访问到test。由于小弟对Windows server 2008,sql server 2008都不太了解,还请各位帮忙!
各位有没有谁遇到过类似的情况?求教解决办法!谢谢! ......
上周接到一个奇怪的bug,一个曾经运行得很好的存储过程突然产生了错误的结果。
负责维护的兄弟们很负责任的对错误进行了跟踪,并把错误定位一个如下的语句:
SELECT *
into SomeTable
from A join B on A.id=B.id
join C on A.id=C.id
他们发现从SomeTable做查询的时候,出来的结果比实际结果要大若干倍,挺齐整的,4倍或者2倍。
我的第一个感觉是JOIN出问题了,必然是形成了多对多的JOIN,比如A里面有两行ID一样,B也有两行ID一样,结果表就会出现4行一样的,得到一个4倍的结果,同样的道理,如果A里有一行,B里有2行,结果就是2倍了。
于是我让他们把SomeTable做成一个文本文件传给我,嗯,300M的一个文件,BCP到数据库里,SELECT了一把,把出问题的那个ID抓出来,果然看到几个重复的行。确切的说看到几列几乎一样的行。
于是我就兴冲冲的给他们说,检察一下B和C上面的ID是否是unique的。
结果很快返回,说,是unique的。
这下我就傻眼了,这怎么可能呢。重新仔细的看了便上次查处的结果,发现原本以为重复的行,竟然不是完全相同的,嗯,有一列是不同的,而这一列正式B.ID。请注意,这些行在A.id上是一样的。 ......
一、问题
select UserID,LastName,FirstName,UserName from SYSUser
UserID LastName FirstName UserName
------------------------------------------------------
1 A B C
2 A1 B1 C1
3 A2 B2 C2
我想把这个select出来的纪录集拼接成一个字符串。应该怎么实现?例如:
strUserName=C,c2,c2
二、解决
SQL code问题描述:无论是在sql 2000,还是在 SQL 2005 中,都没有提供字符串的聚合函数,所以,当我们在处理下列要求时,会比较麻烦:
有表tb, 如下:
id value
----- ------
1 aa
1 bb
2 aaa
2 bbb
2 ccc
需要得到结果:
id ......
Oracle与SQL Server事务处理的比较
事务处理是所有大型数据库产品的一个关键问题,各数据库厂商都在这个方面花费了很大
精力,不同的事务处理方式会导致数据库性能和功能上的巨大差异。
事务处理也是数据库管理员与数据库应用程序开发人员必须深刻理解的一个问题,对这个问题的疏忽可能会导致应用程序逻辑错误以及效率低下。
下
面我们针对Oracle及SQL
Server这两种当前广泛使用的大型数据库产品,探讨一下它们在事务处理方面的一些差异。如没有特殊说明,本文内容适用的数据库产品版本为
Oracle9i及SQL Server 2000,其中的示例SQL语句,对于Oracle是在SQL*Plus中执行,而对于SQL Server
2000是在osql中执行。
1. 事务的概念
事务可以看作是由对数据库的若干操作组成的一个单元,这些操作要么都完成,要么都取消,从而保证数据满足一致性的要求。事务的一个典型例子是银行中的转帐
操作,帐户A把一定数量的款项转到帐户B上,这个操作包括两个步骤,一个是从帐户A上把存款减去一定数量,二是在帐户B上把存款加上相同的数量。这两个步
骤显然要么都完成,要么都取消,否则银行就会受损失。显然,这个转帐操作中的两个步骤就 ......
Oracle与SQL Server事务处理的比较
事务处理是所有大型数据库产品的一个关键问题,各数据库厂商都在这个方面花费了很大
精力,不同的事务处理方式会导致数据库性能和功能上的巨大差异。
事务处理也是数据库管理员与数据库应用程序开发人员必须深刻理解的一个问题,对这个问题的疏忽可能会导致应用程序逻辑错误以及效率低下。
下
面我们针对Oracle及SQL
Server这两种当前广泛使用的大型数据库产品,探讨一下它们在事务处理方面的一些差异。如没有特殊说明,本文内容适用的数据库产品版本为
Oracle9i及SQL Server 2000,其中的示例SQL语句,对于Oracle是在SQL*Plus中执行,而对于SQL Server
2000是在osql中执行。
1. 事务的概念
事务可以看作是由对数据库的若干操作组成的一个单元,这些操作要么都完成,要么都取消,从而保证数据满足一致性的要求。事务的一个典型例子是银行中的转帐
操作,帐户A把一定数量的款项转到帐户B上,这个操作包括两个步骤,一个是从帐户A上把存款减去一定数量,二是在帐户B上把存款加上相同的数量。这两个步
骤显然要么都完成,要么都取消,否则银行就会受损失。显然,这个转帐操作中的两个步骤就 ......