access与sql语法上有哪些区别

作者: 不详 2013/7/11 22:56:42

假设表game有一字段为gameYuiJian为bit字段(SQL SERVER 20005)和"是/否"字段(ACCSS数据库),在编写脚本文件时,如下才能正确执行

  SQL strCmd = "Select Top 14 * From game Where gameTuiJian = 1 Order By Id Desc";

  OleDb strCmd = "Select Top 14 * From game Where gameTuiJian = true Order By Id Desc";

  在时间的处理:

  sql server 语句"Select * From tt1 Where time1>'2009-12-01' "

  Access 语句" Select * From tt1 Where time1>#2009-12-01#"也可以用上面语句

  Sql Server 语句"Select * From tt1 Where DateDiff(day,time1,getdate())

  Access语句"Select * From tt1 Where DateDiff('d',time1,now)

  Access与SQL SERVER数据库转换

  由于SQL2000里面没有"自动编号",所以你的以"自动编号"设置的字段都会变成非空的字段,这就必须手工修改这些字段,并把他的"标示"选择"是",种子为"1",增量为"1",

  2,另外,ACCESS2000转换成SQL2000后,原来属性为"是/否"的字段将被转换成非空的"bit",这时候你必须修改成自己想要的属性了;

  ACCESS转SQL SERVER中的一些经验

  1.ACCESS的数据库中的自动编号类型在转化时,sql server并没有将它设为自动编号型,我们需在SQL创建语句中加上identity,表示自动编号! 2.转化时,跟日期有关的字段,SQL SERVER默认为smalldatetime型,我们最好将它变为datetime型,因为datetime型的范围比smalldatetime型大。我遇见这种情况,用smalldatetime型时,转化失败,而用datetime型时,转化成功。

  3.对此两种数据库进行操作的sql语句不全相同,例如:在对ACCESS数据库进行删除纪录时用:"delete * from user where id=10",而对SQL SERVER数据库进行删除是用:"delete user where id=10".

  4.日期函数不相同,在对ACCESS数据库处理中,可用date()、time()等函数,但对

  SQL SERVER数据库处理中,只能用datediff,dateadd等函数,而不能用date()、time()等函数。

  5.在对ACCESS数据库处理中,sql语句中直接可以用一些VB的函数,像cstr()函数,而对SQL SERVER数据库处理中,却不能用。

  1、必须先安装Microsoft Office Access 2003,和SQL Server2000。2、把旧的动网数据库备份,备份完成后,用Access 2003打开动网旧数据库,在打开时会出现一个警告,不要理会它(安全警告),按打开键,打开后按工具栏--数据库实用工具--转换数据库--转换为2002-2003格式,把数据库转换成2003格式。

  2、转换完成后再用Access 2003打开,打开后按工具栏--数据库实用工具--升迁向导--新建数据库--填写SQL数据库登陆名称、密码和要新建的动网数据库(准备转成新的动网数据库),按下一步,按" 》"键,再按下一步,选取所有选项,再按下一步,选择"不对应用程序作任何改动",再按完成。

  3、打开SQL企业管理器--数据库 吹礁詹判陆ǖ亩 菘饬税桑 慊髡飧鍪 菘庖幌拢 缓笤诠ぞ呃浮 ?/FONT>SQL脚本--常规--全部显示--编写全部对象脚本--确定(记住存放的位置)。

  4、用记事本打开刚才生成的SQL脚本,在编辑栏--替换--查找内容为"smalldatetime"替换为"datetime"--替换全部;完成后再在编辑栏--替换--查找内容为"nvarchar"替换为"varcha"--替换全部,完成后保存退出。

  5、打开SQL企业管理器--数据库--点击这个数据库一下新建的动网数据库,然后在工具栏--SQL查询分析器--文件--打开--"刚才生成的SQL脚本"--查询--执行,然后关闭窗口。

  6、再回到SQL企业管理器--数据库--点击这个数据库一下新建的动网数据库,然后打开工具栏--数据库转换服务--导入数据--下一步--数据源"Microsoft Access"文件名"为旧的动网数据库"--下一步--再下一步--从源数据复制表和视图--下一步--全选--下一步--立即运行--下一步--完成。

  7、修改动网文件夹两个文件conn.asp和inc\const.asp。

  SQL是Structured Quevy Language(结构化查询语言)的缩写。SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言。在使用它时,只需要发出"做什么"的命令,"怎么做"是不用使用者考虑的。SQL功能强大、简单易学、使用方便,已经成为了数据库操作的基础,并且现在几乎所有的数据库均支持SQL。 <br>

  ##1 二、SQL数据库数据体系结构 <br>

  SQL数据库的数据体系结构基本上是三级结构,但使用术语与传统关系模型术语不同。在SQL中,关系模式(模式)称为"基本表"(base table);存储模式(内模式)称为"存储文件"(stored file);子模式(外模式)称为"视图"(view);元组称为"行"(row);属性称为"列"(column)。名称对称如^00100009a^: <br>

  ##1 三、SQL语言的组成 <br>

  在正式学习SQL语言之前,首先让我们对SQL语言有一个基本认识,介绍一下SQL语言的组成: <br>

  1.一个SQL数据库是表(Table)的集合,它由一个或多个SQL模式定义。 <br>

  2.一个SQL表由行集构成,一行是列的序列(集合),每列与行对应一个数据项。 <br>

  3.一个表或者是一个基本表或者是一个视图。基本表是实际存储在数据库的表,而视图是由若干基本表或其他视图构成的表的定义。 <br>

  4.一个基本表可以跨一个或多个存储文件,一个存储文件也可存放一个或多个基本表。每个存储文件与外部存储上一个物理文件对应。 <br>

  5.用户可以用SQL语句对视图和基本表进行查询等操作。在用户角度来看,视图和基本表是一样的,没有区别,都是关系(表格)。 <br>

  6.SQL用户可以是应用程序,也可以是终端用户。SQL语句可嵌入在宿主语言的程序中使用,宿主语言有FORTRAN,COBOL,PASCAL,PL/I,C和Ada语言等。SQL用户也能作为独立的用户接口,供交互环境下的终端用户使用。 <br>

  ##1 四、对数据库进行操作 <br>

  SQL包括了所有对数据库的操作,主要是由4个部分组成: <br>

  1.数据定义:这一部分又称为"SQL DDL",定义数据库的逻辑结构,包括定义数据库、基本表、视图和索引4部分。 <br>

  2.数据操纵:这一部分又称为"SQL DML",其中包括数据查询和数据更新两大类操作,其中数据更新又包括插入、删除和更新三种操作。 <br>

  3.数据控制:对用户访问数据的控制有基本表和视图的授权、完整性规则的描述,事务控制语句等。 <br>

  4.嵌入式SQL语言的使用规定:规定SQL语句在宿主语言的程序中使用的规则。 <br>

  下面我们将分别介绍: <br>

  ##2 (一)数据定义 <br>

  SQL数据定义功能包括定义数据库、基本表、索引和视图。 <br>

  首先,让我们了解一下SQL所提供的基本数据类型:(如^00100009b^) <br>

  1.数据库的建立与删除 <br>

  (1)建立数据库:数据库是一个包括了多个基本表的数据集,其语句格式为: <br>

  CREATE DATABASE <数据库名> 〔其它参数〕 <br>

  其中,<数据库名>在系统中必须是唯一的,不能重复,不然将导致数据存取失误。〔其它参数〕因具体数据库实现系统不同而异。 <br>

  例:要建立项目管理数据库(xmmanage),其语句应为: <br>

  CREATE DATABASE xmmanage <br>

  (2) 数据库的删除:将数据库及其全部内容从系统中删除。 <br>

  其语句格式为:DROP DATABASE <数据库名> <br>

  例:删除项目管理数据库(xmmanage),其语句应为: <br>

  DROP DATABASE xmmanage <br>

  2.基本表的定义及变更 <br>

  本身独立存在的表称为基本表,在SQL语言中一个关系唯一对应一个基本表。基本表的定义指建立基本关系模式,而变更则是指对数据库中已存在的基本表进行删除与修改。 <br>


INSERT   INTO   mobile   SELECT   mobileID, ' ' '+mobilephone     FROM   OPENROWSET( 'Microsoft.Jet.OLEDB.4.0 ', 'Excel   8.0;Database=D:\Mobile.xls ',   'SELECT   *   FROM   [Sheet1$] ')

特别推荐

玩家留言 跟帖评论
查看更多评论