Ⅰ Access2010中如何运行sql执行SQL语句
1、打开ACCESS数据库,找到右边的空数据,单击弹出对话框,让你选择数据库保存的路径和名称,大家根据自己的实际情况保存吧,我这里使用默认的。
Ⅱ 求一个将access的数据库中的表中的数据导出成sql语句的方法或工具
把Access 数据导出到SQL Server的方法如下:
1、打开ACCESS数据库,右键选中要导出的表TABLE1,选择导出,出现一个‘将表TABLE1导出....‘的对话框,在‘保存类型(T)’下拉列表选中'ODBC Databases (),出现一个导出对话框,一般的表名不做修改,默认就行了,点击‘确定’。
2、在‘选择数据源’对话框中,点击‘新建’按钮,出现的‘创建新数据源’中,选择‘SQL Server’数据源驱动程序,点‘下一步’,数据源名中可以输入你想定义的数据源名,本例数据源名为‘DC12’,点‘下一步,点‘完成’。
3、在出现的‘创建到SQL Server的新数据源’对话框中,服务器(S):选项下拉列表中,选择一个你想连接到的本地数据库或者网络数据库的服务器名称,本例的服务器名称为‘JIABAO9’,点‘下一步’,选中‘使用用户输入登录ID和密码的SQL Server 验证(S)’,分别在‘登录ID(L)和密码(P)’中输入访问数据库的的用户名和密码,点‘下一步’。
4、选择数据库的对话框里,在‘更改默认的数据库为(D)’下拉列表中选择一个已经有存在的数据库名称,本例数据库名为‘DBTEXT’,也就是把ACCESS数据库的TABLE1表数据导出到DBTEXT数据库,按‘下一步’--》完成--》确定。
5、在出现的‘选择数据源’对话框中,一般我们不用再修改‘DSN 名称(D)’的文件名了,前面已经命名为‘DC12’,点‘确定’;要求你在‘SQL Server登录’对话框里再次输入登录数据库的用户名和密码,输入完后,点击‘确定’,如果不出现错误提示,表明已经成功将ACCESS数据库表TABLE1的表结构和数据导出到数据库名为JIABAO9了。
6、在JIABAO9数据库下就新建立有一个名称为TABLE1的新表了,可用select * from TABLE1 来查询刚才导入的数据了。
7、因为是从ACCESS把数据表导入到SQL SERVER数据库的, 所以ACCESS和SQL SERVER数据
库的语法上有差别;
select 'stano,sname from stainfo where datepart(''m'',birth) =';是在ACCESS
数据库中的查询语句,在SQL SERVER中不能这样表达,否则会产生语法错误,
无效的参数传递: Invalib parameter specified for datepart;
注意大多数都是由引号或标点符号引起的,把m的引号去掉,
Ⅲ access的sql语句有哪些
建表:
Create Table Tab1 (
ID Counter,
Name string,
Age integer,
[Date] DateTime);
技巧:
自增字段用 Counter 声明.
字段名为关键字的字段用方括号[]括起来,数字作为字段名也可行.
建立索引:
下面的语句在Tab1的Date列上建立可重复索引
Create Index iDate ON Tab1 ([Date]);
完成后ACCESS中字段Date索引属性显示为 - 有(有重复).
下面的语句在Tab1的Name列上建立不可重复索引
Create Unique Index iName ON Tab1 (Name);
完成后ACCESS中字段Name索引属性显示为 - 有(无重复).
下面的语句删除刚才建立的两个索引
Drop Index iDate ON Tab1;
Drop Index iName ON Tab1;
ACCESS与SQLSERVER中的UPDATE语句对比:
SQLSERVER中更新多表的UPDATE语句:
UPDATE Tab1
SET a.Name = b.Name
FROM Tab1 a,Tab2 b
WHERE a.ID = b.ID;
同样功能的SQL语句在ACCESS中应该是
UPDATE Tab1 a,Tab2 b
SET a.Name = b.Name
WHERE a.ID = b.ID;
即:ACCESS中的UPDATE语句没有FROM子句,所有引用的表都列在UPDATE关键字后.
上例中如果Tab2可以不是一个表,而是一个查询,例:
UPDATE Tab1 a,(Select ID,Name From Tab2) b
SET a.Name = b.Name
WHERE a.ID = b.ID;
访问多个不同的ACCESS数据库-在SQL中使用In子句:
Select a.*,b.* From Tab1 a,Tab2 b In 'db2.mdb' Where a.ID=b.ID;
上面的SQL语句查询出当前数据库中Tab1和db2.mdb(当前文件夹中)中Tab2以ID为关联的所有记录.
缺点-外部数据库不能带密码.
在ACCESS中访问其它ODBC数据源
下例在ACCESS中查询SQLSERVER中的数据
SELECT * FROM Tab1 IN [ODBC]
[ODBC;Driver=SQLServer;UID=sa;PWD=;Server=127.0.0.1;DataBase=Demo;]
外部数据源连接属性的完整参数是:
[ODBC;DRIVER=driver;SERVER=server;DATABASE=database;UID=user;PWD=pass(word);]
其中的DRIVER=driver可以在注册表中的
HKEY_LOCAL_MACHINESOFTWAREODBCODBCINST.INI
中找到
ACCESS支持子查询
ACCESS支持外连接,但不包括完整外部联接,如支持
LEFT JOIN 或 RIGHT JOIN
但不支持
FULL OUTER JOIN 或 FULL JOIN
ACCESS中的日期查询
注意:ACCESS中的日期时间分隔符是#而不是引号
Select * From Tab1 Where [Date]>#2002-1-1#;
在DELPHI中我这样用
SQL.Add(Format(
'Select * From Tab1 Where [Date]>#%s#;',
[DateToStr(Date)]));
ACCESS中的字符串可以用双引号分隔,但SQLSERVER不认,所以为了迁移方便和兼容,
建议用单引号作为字符串分隔符.
查询时生成序号
SELECT (SELECT Count([xlh].[aa]) AS AutoNum FROM xlh WHERE (((xlh.aa)<=xlh_Alias.aa));) AS 序号, xlh.aa
FROM xlh AS xlh_Alias INNER JOIN xlh ON xlh_Alias.aa=xlh.aa
ORDER BY xlh.aa;
多表sql查询
SELECT test.aa AS 第一个字段, test1.bb AS 第二个字段, test1.cc
FROM test, test1
WHERE test.aa=test1.aa;
多表sql查询1
SELECT a.aa, b.bb, b.cc, b.cc*100 AS 合计
FROM test AS a, test1 AS b
WHERE a.aa=b.aa;
多表sql查询排序
SELECT a.aa, b.bb, b.cc AS 第三个字段
FROM test AS a, test1 AS b
WHERE a.aa=b.aa
ORDER BY b.cc;
查询例子
SELECT a.dhhm
FROM xl11a AS a, xl919 AS b
WHERE a.dhhm=b.dhhm and aa<>"1";
日期时间分隔符是#而不是引号
Select * From Tab1 Where [Date]>#2002-1-1#;
两个表关联修改多个字段
UPDATE chhl AS a, jbsj AS b SET a.fzr = b.fzr, a.gh = b.gh
WHERE a.dhhm=b.dhhm;
update chhl set (fzr,gh)=
(SELECT b.fzr, b.gh
FROM chhl AS a, jbsj AS b
WHERE a.dhhm=b.dhhm);
如果Tab2可以不是一个表,而是一个查询
UPDATE Tab1 a,(Select ID,Name From Tab2) b
SET a.Name = b.Name
WHERE a.ID = b.ID;
UPDATE Tab1 a,Tab2 b
SET a.Name = b.Name
WHERE a.ID = b.ID;
访问多个不同的ACCESS数据库-在SQL中使用In子句,外部数据库不能带密码
Select a.*,b.* FromTab1 a,Tab2 b In 'db2.mdb' Where a.ID=b.ID;
将一个表的某个字段置空
UPDATE chhl AS a SET a.fzr = null, a.gh = null;
删除两个表中字段一样的记录
delete from xl11 where dhhm in(SELECT a.dhhm
FROM xl11 AS a, xl919 AS b
WHERE a.dhhm=b.dhhm;);
完成后ACCESS中字段Name索引属性显示为--有(无重复)
Create Unique Index iName ON Tab1 (Name);
下面的语句删除刚才建立的两个索引
Drop Index iDate ONTab1;
Drop Index iName ON Tab1;
Ⅳ 如何把ACCESS的数据库导出成SQL语句
没有办法,只能自己数据定义查询语句
或自己写一个VBA函数生成语句
Ⅳ ACCESS里如何用SQL语句创建数据库和表
打开Access时点击空白数据库起好名就创建了数据库,数据库里建表以及查询可以使用SQL语句。
1.创建-->查询设计-->关闭弹出窗口
2.切换视图
3.输入SQL语句并执行
4.执行查询语句
执行完需要切换视图才能重新回到SQL语句窗口
Ⅵ 如何将ACCESS转化为SQL
下面这个可以参考:
很多朋友想用SQL2000数据库的编程方法,但是却又苦于自己是学ACCESS的,对SQL只是一点点的了解而已,这里我给大家提供以下参考---将ACCESS转化成SQL2000的方法和注意事项
一,首先,我说的是在ACCESS2000,SQL2000之间转换,其他的我也还没有尝试过,希望大家多多试验,肯定是有办法的;
二,转换的方法
1,打开”控制面板“下”管理工具“中的”数据库源“;
2,按”添加“添加一个新的数据源,在选择栏里选“Driver do microsoft Access (*.mdb)”,完成后将出现一个框,在“数据库源”里面输入你想写的名称,我取名叫“ABC”,说明不需要填,接着,按下面的选择,寻找你的数据库地 址和选中(注意,请先备份自己的ACCESS数据库),然后确定。数据源在这里建好了,剩下转换了。
3,打开SQL2000企业管理器,进入数据库,新建一个空的数据库“ABC”;
4,选择新建立的数据库,按鼠标右键,选择“所有任务”下“导入数据”,按“下一步”继续;
5,在数据库源下拉但中选择”Driver do microsoft Access(*.mdb)“,在”用户/系统DSN“中,选种你刚才添加的”ABC“,按 ”下一步“;
6,“目的”不需要修改,选择服务器(一般下为自己的本机local,也可以选择服务器地址或者局域网地址,确定你的权限是否可以操作,),使用WINDOWS 身份验证指用自己的系统管理员身份操作,使用SQL身份操作验证可以用于网站的操作,推荐用后者;
7,选上使用SQL身份操作验证后,填写你的用户名和密码,我自己选择的是系统默认号码sa,****,数据库选择刚新建的ABC,按下一步;
8,这一步的两个单项选择,从数据源复制表和视图与用一条查询指令指定要传输的数据,选择前者,按下一步继续;
9,这里将出现你自己ACCESS数据库的表,按全选后,下一步;
10,DTS导入/导出向导,看立即运行被选中按下一步,
11,按完成继续;
12,这个步骤你将看到你的数据被导入SQL2000里面,当出现已经成功把XXX个表导入到数据库的字样,而且所有的表前面都有绿色的勾,就 表示成功导入所有数据,如果中途出现问题或者表前面有红色的叉的话,说明该表没有成功导入,这时就要回去查看自己的操作是否正确了.
三,数据修改
1,由于SQL2000里面没有自动编号,所以你的以自动编号设置的字段都会变成非空的字段,这就必须手工修改这些字段,并把他的标示选择是,种子为1,增量为1,
2,另外,ACCESS2000转换成SQL2000后,原来属性为是/否的字段将被转换成非空的bit,这时候你必须修改成自己想要的属性了;
3,另外,大家要注意对时间函数的把握.ACCESS与SQL是有很多不同的.
ACCESS转MS SQL数据库的几点经验
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数据库处理中,却不能用。
Ⅶ ACCESS执行SQL语句,ACCESS怎么写SQL语句
docmd.runSQL"SQL语句"
用以上的格式就能在Access中运行SQL语句了。
Ⅷ 如何在Access中使用SQL语句
一、如何在Access中使用SQL语句
1、OFFICE
2000(及其后版本)的组件中的
Access支持使用简单的SQL语句对数据进行查询与更改。以OFFICE
2007为例(其它版本的具体操作稍有不同,操作思路基本一样)。
2、打开或新建一个Access文件,建立好一个表后,在切换“软件工具栏”,点【创建】进入创建工具栏,在工具栏中点击【查询设计】。
3、弹出【显示表】窗口,点击【关闭】将该窗口关掉。这时软件会进入【设计】工具栏,我们点击工具栏左侧的【SQL视图】。
4、【SQL视图】默认选择的是【设计视图】,我们在下拉菜单中选择【SQL视图】。在工具栏下方会自动打开一个查询窗口,在这里就可以输入查询用的SQL语句了。
5、我们输入一行标准的SQL查询语句,然后点击【运行】,SQL语句执行完成后,查询窗口会自动转换为表视图,以表格方式显示查询到的数据。
6、可以保存设计好的SQL查询,下回使用时可直接调用(双击对应的视图)。
二、备注提醒:
到目前为止,Access仅支持使用简单的SQL语句对数据进行查询与更改。
很多高级的SQL查询是不能完成的,比如定时任务、存储过程等等。
Ⅸ 查看ACCESS自动生成sql语句
Access 里面, 创建 查询
然后选择表、选择字段、设置条件、排序等条件后。
你在菜单的地方, 有个 下拉框, 切换显示模式的。
可以从 设计模式 切换到 数据模式。
切换到 SQL 语句模式。 就能看ACCESS自动生成sql语句