>

Access转成SQL数据库的办法

- 编辑:乐百家599手机首页 -

Access转成SQL数据库的办法

率先,作者说的是在ACCESS两千,SQL三千以内调换,其余的笔者也还一直不尝试过,希望大家多多试验,分明是有法子的。

本人的感觉是,Accees数据库就算能够堪当是微型的关系型数据库,并且也是利用的结构化查询语言SQL,但它的语法(首要反映在函数上),却好像vbscript的语法,作者想,那应该和Access属于Office体系有关,基于它的支出和选拔,自然就与VBA扯上提到,因此Access的函数库也便是VBA的函数库,而非SQL函数库。下边,大家来具体看下Access和SQL Server在查询语句的编写制定上实际的不如。

一.初阶->Microsoft SQL Server 二〇〇八->导入和导出数据(3二 位)
二.增选数据源,数据源里选取Microsoft Access,浏览选mdb文件,下一步。

access与sql语法上有哪些分化

 假如表game有一字段为gameYuiJian为bit字段(SQL SE福睿斯VE大切诺基三千5)和"是/否"字段(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 SE奥迪Q5VECR-V数据库转变

  由于SQL两千里边未有"自动编号",所以你的以"自动编号"设置的字段都会成为非空的字段,那就非得手工业修改这么些字段,并把她的"标示"采纳"是",种子为"一",增量为"1",

  二,其余,ACCESS三千转变来SQL两千后,原来属性为"是/否"的字段将被调换到非空的"bit",那时候你必须修改成团结想要的性质了;

  ACCESS转SQL SE安德拉VE奥迪Q5中的一些经验

  1.ACCESS的数据库中的自动编号类型在转化时,sql server并未将它设为自动编号型,大家需在SQL创立语句中加上identity,表示自动编号! 2.转折时,跟日期有关的字段,SQL SE福特ExplorerVE奥迪Q5默以为smalldatetime型,大家最棒将它成为datetime型,因为datetime型的范围比smalldatetime型大。笔者遇见这种情况,用smalldatetime型时,转化战败,而用datetime型时,转化成功。

  三.对此二种数据库举办操作的sql语句不全一样,举个例子:在对ACCESS数据库进行删减纪录时用:"delete * from user where id=10",而对SQL SESportageVE帕杰罗数据库举行删除是用:"delete user where id=10".

  肆.日期函数区别样,在对ACCESS数据库管理中,可用date()、time()等函数,但对

  SQL SEMuranoVE宝马X5数据库管理中,只好用datediff,dateadd等函数,而无法用date()、time()等函数。

  伍.在对ACCESS数据库管理中,sql语句中央直机关接能够用一些VB的函数,像cstr()函数,而对SQL SE卡宴VEHaval数据库管理中,却不可能用。

  壹、必须先安装Microsoft Office Access 200三,和SQL Server2000。2、把旧的动网数据库备份,备份实现后,用Access 200三展开动网旧数据库,在张开时会出现1个警告,不要理睬它(安全警戒),按打开键,展开后按工具栏--数据库实用工具--转换数据库--调换为二〇〇三-200三格式,把数据库调换到200三格式。

  二、转换完毕后再用Access 200叁开拓,展开后按工具栏--数据库实用工具--升迁向导--新建数据库--填写SQL数据库登入名称、密码和要新建的动网数据库(打算转成新的动网数据库),按下一步,按" 》"键,再按下一步,采纳全数选项,再按下一步,选用"不对应用程序作任何变动",再按实现。

  三、展开SQL集团管理器--数据库 吹礁詹判6ǖ亩 菘饬税桑 慊髡飧鍪 菘庖幌拢 缓笤诠ぞ呃浮 ?/FONT>SQL脚本--常规--全体突显--编写全部对象脚本--鲜明(记住存放的任务)。

  四、用记事本张开刚才生成的SQL脚本,在编辑栏--替换--查找内容为"smalldatetime"替换为"datetime"--替换全体;完毕后再在编写制定栏--替换--查找内容为"nvarchar"替换为"varcha"--替换全体,完结后保存退出。

  5、打开SQL公司管理器--数据库--点击这几个数据库一下新建的动网数据库,然后在工具栏--SQL查询剖析器--文件--展开--"刚才生成的SQL脚本"--查询--施行,然后倒闭窗口。

  六、再再次回到SQL公司管理器--数据库--点击那些数据库一下新建的动网数据库,然后张开工具栏--数据库转变服务--导入数据--下一步--数据源"Microsoft Access"文件名"为旧的动网数据库"--下一步--再下一步--从源数据复制表和视图--下一步--全选--下一步--立时运营--下一步--达成。

  7、修更换网文件夹四个文件conn.asp和incconst.asp。

  SQL是Structured Quevy Language(结构化查询语言)的缩写。SQL是专为数据库而树立的操作命令集,是一种功用齐全的数据库语言。在利用它时,只须要发出"做哪些"的通令,"怎么做"是毫不使用者思虑的。SQL成效庞大、轻松易学、使用方便,已经济体改成了数据库操作的基本功,并且今后差不多全数的数据库均补助SQL。 <br>

  ##一 二、SQL数据库数据系统布局 <br>

  SQL数据库的数码系统布局基本上是三级协会,但利用术语与价值观关系模型术语分化。在SQL中,关系形式(形式)称为"基本表"(base table);存储情势(内形式)称为"存款和储蓄文件"(stored file);子形式(外情势)称为"视图"(view);元组称为"行"(row);属性称为"列"(column)。名称对称如^00一千0玖a^: <br>

  ##一 3、SQL语言的叁结合 <br>

  在标准学习SQL语言在此之前,首先让大家对SQL语言有1个中坚认知,介绍一下SQL语言的咬合: <br>

  一.二个SQL数据库是表(Table)的会集,它由三个或多个SQL情势定义。 <br>

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

  三.3个表或然是1个基本表可能是1个视图。基本表是实际上存款和储蓄在数据库的表,而视图是由若干基本表或任何视图构成的表的定义。 <br>

  肆.八个基本表可以跨多少个或多少个存储文件,叁个囤积文件也可存放二个或四个基本表。每一个存款和储蓄文件与表面存款和储蓄上二个大意文件对应。 <br>

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

  陆.SQL用户能够是应用程序,也足以是极端用户。SQL语句可放置在宿主语言的顺序中央银行使,宿主语言有FORTRAN,COBOL,PASCAL,PL/I,C和Ada语言等。SQL用户也能同日而语单身的用户接口,供交互情状下的顶点用户使用。 <br>

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

  SQL包罗了有着对数据库的操作,主借使由多少个部分组成: <br>

  一.数据定义:那壹有个别又叫做"SQL DDL",定义数据库的逻辑结构,包蕴定义数据库、基本表、视图和索引4部分。 <br>

  2.数据调控:这一局地又称作"SQL DML",当中包含数据查询和数据更新两大类操作,在那之中多少更新又包蕴插入、删除和翻新三种操作。 <br>

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

  肆.嵌入式SQL语言的行使规定:规定SQL语句在宿主语言的次第中使用的条条框框。 <br>

  下边我们将独家介绍: <br>

  ##二 (1)数据定义 <br>

  SQL数据定义成效包罗定义数据库、基本表、索引和视图。 <br>

  首先,让我们询问一下SQL所提供的中央数据类型:(如^0010000九b^) <br>

  一.数据库的创设与删除 <br>

  (一)创设数据库:数据库是2个归纳了多少个基本表的数据集,其语句格式为: <br>

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

  个中,<数据库名>在系统中务必是唯一的,不可能再度,不然将招致数据存取失误。〔此外参数〕因现实数据库达成系统不相同而异。 <br>

  例:要创立项目处理数据库(xmmanage),其说话应为: <br>

  CREATE DATABASE xmmanage <br>

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

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

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

  DROP DATABASE xmmanage <br>

  贰.基本表的概念及更改 <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$] ')

如若表game有一字段为gameYuiJian为bit字段(SQL SE奥迪Q7VER两千5)和是/否字段(ACCSS数据库),在编辑脚本文件时,如下工夫...

转移的秘技

一、数据类型转换:

乐百家lo599 1
三.抉择对象,数据库点新建,名称自定,下一步。
乐百家lo599 2

一、展开“调节面板”下“管理工科具”中的“数据库源”。

  1. Access: SELECT '调查' CStr(Did) as diaocha FROM CZdengji
  2. SQL Server:乐百家lo599, select artid,'调查' Cast(listid As varchar) as did from kingart where artdate>=getdate()

四.复制3个或三个表或视图的数额,下一步。

二、按”增多“增加一个新的数据源,在增选栏里选“Driver do microsoft Access (*.mdb)”,完毕后将应时而生2个框,在“数据库源”里面输入你想写的名号,作者取名为“ABC”,表达没有要求填,接着,按下边包车型地铁精选,寻觅你的数据库地址和当选(注意,请先备份本身的ACCESS数据库),然后明确。数据源在这里建好了,剩下转变了。

      Access中SQL查询的数据类型转换有过多函数,每1个函数都足以强制将叁个表达式调换来某种特定数据类型。具体如下:CBool(expression) 、CByte(expression) 、CCur(expression) 、CDate(expression) 、CDbl(expression) 、CDec(expression) 、CInt(expression) 、CLng(expression) 、CSng(expression) 、CStr(expression) 、CVar(expression) 、CStr(expression),相信不用表达,大家也看得懂这种种转换符的情趣。

乐百家lo599 3
伍.精选源表和源视图,全勾选,选第3个表,点编辑映射;

三、打开SQL2000铺面管理器,进入数据库,新建两个空的数据库“ABC”。

二、IIF函数(ACCESS专用)

乐百家lo599 4
并发列映射框,点击编辑SQL,

四、选拔新创建的数据库,按鼠标右键,选用“全部任务”下“导入数据”,按“下一步”继续。

  1. Access: SELECT Id,IIF(Isfinished=1,'已完成','进行中'),Name,Diaocharen FROM CZdiaocha ORDER BY Isfinished ASC
  2. SQL Server 的写法就绝对越来越多,可以自定义函数,也能够应用case语句,如select Id,case Isfinished when 1 then '已变成'
    when 0 then '进行中'  end,Name,Diaocharen FROM CZdiaocha ORDER BY Isfinished ASC

乐百家lo599 5
弹出SQL语句编辑框

伍、在数据库源下拉但中选拔”Driver do microsoft Access(*.mdb)“,在”用户/系统DSN“中,选种你刚才增添的”ABC“,按 ”下一步“。

三、DISTINCT关键字用法: Access里面distinct(expression)的用法单1, expression 只好为钦命字段,而无法为表明式,SQL Server则不一致, expression 除了可认为单个字段,也可以为八个子询问等繁杂表明式。

乐百家lo599 6

陆、“指标”无需修改,选拔服务器(一般下为自身的本机local,也得以选取服务器地址恐怕局域网地址,显明你的权杖是或不是能够操作,),使用WINDOWS 身份验证指用本身的系统管理员身份操作,使用SQL身份操作验证能够用来网址的操作,推荐用后世。

四、日期格式化

在[ID] int NOT NULL,中间投入IDENTITY(一,一),后出示为:[ID] int IDENTITY(1,1) NOT NULL,

7、选上使用SQL身份操作验证后,填写您的用户名和密码,小编要好挑选的是系统默许号码sa,****,数据库选用刚新建的ABC,按下一步。

  1. Access: 使用format()函数,SELECT TOP 伍arttitle,format(artdate,'YY-MM-DD') as arttime FROM kingart WHER埃利stid=九,这里运用format()函数,钦命artdate(日期型)查询出来的格式为YY-MM-DD。
  2. SQL Server: 使用convert()函数,select Id,lanmu,title,content, convert(varchar(10),updatetime ,120) as update_time from news,这里的120,是钦赐格式为YY-MM-DD,假若是其余数字(拾一-120),正是别的的格式。

乐百家lo599 7

8、这一步的七个单项选取,从数额源复制表和视图与用一条查询指令钦命要传输的多少,选拔前者,按下一步继续。

别的一些常用的SQL语句集锦

规定,分明,回到选择源表和源视图框,继续修改其余表,完毕后,下一步。
乐百家数据库,陆.当即运维,下一步。
7.完成。
最终用SQL Server Management Studio连接数据库查看刚转变的数额中的表,ID列。

玖、这里将现身你和睦ACCESS数据库的表,按全选后,下一步。

  1. SELECT Top 5 * From Food WHERE Fid not in(Select top 5 Fid FROM Food) //查询第5到第10条记录
  2. delete from Food where charindex('200七',uptime)>0 or charindex('2009', uptime )>0  //删除Food表中uptime列包涵有200七或2010的记录,即除去时间为200七年和二〇〇八年的换代记录

  3. select Id,lanmu,title,content, convert(varchar(10),updatetime ,120) as update_time from news  // SQL Server里面包车型地铁convert函数,调换到 varchar(十)类型, 120为钦点转变后的格式。

  4. select Mealtype as 餐别,Fname as 食物名称,sum(rjjingshisz)/2 as 人均净食生重总和 from CZdengji WHERE Did=陆 group by Mealtype,Fname    //分组查询,GROUP BY的原意就是重新的字段合为一,对应的消息,实行汇总(count、sum等运算)

  5. Select Count(ID) from Flow where convert(varchar(21),visittime,120) like '二〇〇七-0一-贰陆% ' ,日期型数据模糊查询。

  6. select * from ('MSDASQL','D猎豹CS陆IVERAV4={SQL Server};SEOdysseyVE路虎极光=服务器名字;UID=对端数据库的账号;PWD=对端密码', 对端数据库.权限者.对端的表) as 表   //跨过服务器务器查询

乐百家lo599 8

拾、DTS导入/导出向导,看立时运营被入选按下一步。

你恐怕感兴趣的小说:

  • SQL Server中的数据复制到的Access中的函数
  • Access转Sql Server难点实例证实
  • Sql Server、Access数据排行的落到实处格局(举例:成绩排行)
  • SQLServer与Access常用SQL函数差距
  • SQL 随机查询 包含(sqlserver,mysql,access等)
  • 在ACCESS和SQL Server下Like 日期类型查询差距
  • asp.net下Oracle,SQL Server,Access万能数据库通用类
  • SQL SECR-VVERubicon与ACCESS、EXCEL的多寡转变方法分享
  • 将Access数据库中数量导入到SQL Server中的详细措施实例
  • 八步化解ACCESS自动编号难题(将SQL SEENVISIONVE安德拉三千数据库,调换为ACCESS数据库)
  • 将ACCESS数据库迁移到SQLSE福睿斯VECR-V数据库三种方法(图像和文字详解)
  • sqlserver,sqlite,access数据库链接字符串整理
  • 协和出手把ACCESS调换来SQLSE途乐VELacrosse的不2秘诀
  • Access 导入到SQL Server 二〇〇七的法子小结
  • JavaScript使用ActiveXObject访问Access和SQL Server数据库
  • SQL Server数据复制到的Access两步走

标志为True,标识种子为1,标志增量为1,

1一、按完毕后续。

乐百家lo599 9

1贰、这一个手续你将见到你的数据被导入SQL2000中间,当出现已经打响把XXX个表导入到数据库的字样,而且具备的表后面都有深橙的勾,就意味着成功导入全体数据,若是中途出现难题依旧表前边有革命的叉的话,表达该表未有得逞导入,那时将在回到查看本人的操作是或不是正确了。

从此以往添增多少就跟Access里的电动编号效果等同了。

最近又在进级2个顺序,使其补助多数据库。
原来的次序数据库为SQL Server,所以选拔SQL Server 的“导入和导出数据”功用将二个 SQL Server 数据库转变来了Access数据库,但里边发掘了有的难题,但也找到了消除方案,1并记录于此:

填补:关于主键设置,能够第四步:[ID] int IDENTITY(1,1) NOT NULL, 里插入:Primary key,语句为:

一、转变程序会将SQL Server的视图转变来表,而不是Access的查询;
二、在为字段设置默许值为空字符的时候,SQL Server用”,而Access用”";
三、Access中一直不GetDate()函数,应该选取Now()函数替代;
四、Access未有SQL Server用来获得客户端机器名的host_name()函数;
伍、Access中一贯不Case When Then语句,但足以用IIF()函数模拟达成效益;
陆、开掘:Access使用的是Visual Basic的言语结议和函数;
7、调换程序会正确调换SQL Server字段的 IS NULL 属性;
八、Access也帮衬多字段的目录,只是设置格局有个别特别(参见帮忙);
9、SQL Server中bit型的1、0值,在Access中为True和False;
10、在Access中选用几个LEFT JOIN那样的语句时,必须用括号做相关的范围;
1壹、Access的SQL没有注释语句,SQL Server的/**/不能够通用;
1二、一条Insert语句在Access查询中健康运行,但在程序中出现“Insert Into 语句的语法错误”,后来意识原本是语句中的一个列名是Access的第2字(用[]界定可解决难题),但奇怪的是将该语句放置到Access的询问中实践却不会出错。

[ID] int Primary key IDENTITY(1,1) NOT NULL,

必要对转移后的Access数据库实行以下项指标自己争辨,以保障与SQL Server1致:

最后,倘若要复制来的id数据不重新恢复设置(调换后id重新从一来编号),可以勾选第4步列表映射框里:启用标志插入。

1、主键。转变后的Access数据库都未曾主键,需本人设置;
二、自增字段。转变程序会将SQL Server的自增字段调换为数字型,需手动修改为Access的“自动编号”类型;
三、暗许值。转变程序不会转变SQL Server中安装的私下认可值,需手动设置;
肆、bigint型字段。转变程序会将SQL Server的bigint调换为小数,须手动调节为Access的整型或长整型;
5、索引。调换程序不会转换索引,需手动在Access中创建目录。

乐百家lo599 10

在Delphi下,想让程序同时扶助Access及SQL Server,需注意以下地方:

 

1、在Access中使用 SELECT * FROM Books WHERE RegDate = ‘2005-5-一′ 是会并发“规范表明式中数据类型不相称”那样的谬误的(RegDate是日期型),必须选择SELECT * FROM Books WHERE RegDate = #2007-5-1# 或 SELECT * FROM Books WHERE RegDate = CDate('2007-5-1′);
但在Access中,Insert、delete和update中利用单引号界定日期却是能够健康实践的。
贰、尽量不要选取SQL Server的bigint类型,非常该字段是自增的图景下;
三、Access的varchar(文本)型最大唯有255,所以只要二个文本型字段大于25五时,最棒定义成备注型(Access中)或text型(SQL Server中);
四、在Access中一般会冒出如下错误:不符合规律地定义参数对象。提供了差异或不完全的音讯。将相应Query的ParamCheck设为False就能够;
伍、Access中的逻辑值在库中为-一和0,而SQL Server中为一和0,所以写BoolField = 1那样的语句有包容性难题,应该改为BoolField <> 0;
6、在Access中有主键的Query才可更新,而SQL Server无此供给。

 

以上就是Access和SQL数据库相互调换的主意及注意事项。

 

本文由乐百家数据库发布,转载请注明来源:Access转成SQL数据库的办法