100分请教:如何用sql创建查询

开船的 2007-12-18 10:58:39
Access中可以通过查询设计创建和修改查询,如果用程序通过sql来进行创建,更新查询呢?
...全文
412 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
OracleRoob 2007-12-28
  • 打赏
  • 举报
回复
to 15楼:

楼主说的是更新查询中的SQL串,不是更新表中的数据。
qin4689 2007-12-28
  • 打赏
  • 举报
回复
通过编写SQL语句也可以更新查询。UPDATE语句的语法有以下几各情况:
UPDAATE TableName1=NewValue1,FieldNawName2=NewValue2...
WHERE Condition1,Condition2...;
UPDATE 语句用于更新表中现有的数据。
如果表中所有记录选定的列必须更新为新值,没胡任何条件,则例如:USDATE ProductDetails SET Prod_price=Prod_Price/10;
要更新的多个字段,可以使用下面语句例如:UPDATE ProductDetails SET prod_Proice=prod_Prilce/10,
Prod_Code=Prod_code & '(New Price)';

WWWWA 2007-12-19
  • 打赏
  • 举报
回复
create view 必须用ADO执行
OracleRoob 2007-12-19
  • 打赏
  • 举报
回复
--创建传递查询:

'根据输入用户名和密码新建一个传递查询,以便与ODBC源链接。
Set cat.ActiveConnection = CurrentProject.Connection

'设置Command对象的属性
Cmm.ActiveConnection = cat.ActiveConnection
Cmm.Properties("Jet OLEDB:ODBC Pass-Through Statement") = True
Cmm.Properties("Jet OLEDB:Pass Through Query Connect String") = "ODBC;DRIVER=SQL Server;SERVER=服务器名;DATABASE=数据库名;UID=sa;PWD=000"
Cmm.CommandText = "SELECT GETDATE() AS 服务器时间;"
cat.Procedures.Append "传递查询名", Cmm


WWWWA 2007-12-18
  • 打赏
  • 举报
回复
只是在2000中无法看到,以上是可以看到的
另外如果对通过界面添加的查询通过sql进行更新以后,是不是就看不到了?
不是
WWWWA 2007-12-18
  • 打赏
  • 举报
回复
jet sql不支持ALTER VIEW
用DAO:

CurrentDb.QueryDefs("qqtt").SQL = "select * from b3"
OR
Dim dd As QueryDef
Set dd = CurrentDb.QueryDefs("qqtt")
dd.SQL = "select * from b3"
开船的 2007-12-18
  • 打赏
  • 举报
回复
有没有能够看到方法,通过access自己提供的界面添加的查询是可以看到,并进行管理的;
另外如果对通过界面添加的查询通过sql进行更新以后,是不是就看不到了?
开船的 2007-12-18
  • 打赏
  • 举报
回复
就是对已经存在的查询代码进行更新
WWWWA 2007-12-18
  • 打赏
  • 举报
回复
创建:
用ADO连接MDB,
执行:
Dim ee As New ADODB.Connection
Set ee = CurrentProject.Connection
ee.Execute ("create view qqtt as select * from b1")
在ACCESS2000中无法看到此查询,但可以执行
更新是什么意思?
WWWWA 2007-12-18
  • 打赏
  • 举报
回复
创建:
用ADO连接MDB,
执行:
Dim ee As New ADODB.Connection
Set ee = CurrentProject.Connection
ee.Execute ("create view qqtt as select * from b1")
更新是什么意思?
OracleRoob 2007-12-18
  • 打赏
  • 举报
回复
创建查询的SQL语句,不能直接在Access的查询中执行,必须用ADO执行创建查询的SQL语句。
liuyann 2007-12-18
  • 打赏
  • 举报
回复
create view xxxx as select * from yourTable where id>10;
OracleRoob 2007-12-18
  • 打赏
  • 举报
回复

Access使用的是Jet-SQL。


JET SQL 帮助(jet4 access2000)下载地址

http://www.access911.net/index.asp?board=8&recordid=75FAB71E&tt=

OracleRoob 2007-12-18
  • 打赏
  • 举报
回复
Access2000中用create view创建的查询不可见。

你可以用Access 2003或后续的Access 2007。
OracleRoob 2007-12-18
  • 打赏
  • 举报
回复
'更新查询Qry的SQL串
Dim QryDef As QueryDef

Set QryDef = CurrentDb.QueryDefs("qry")
QryDef.SQL = "select * from 表名"
OracleRoob 2007-12-18
  • 打赏
  • 举报
回复
--创建查询:qry

Dim strSQL As String

Dim Cnn As New ADODB.Connection

Set Cnn = CurrentProject.Connection

strSQL = " create view qry as select now()"
Cnn.Execute strSQL

7,714

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧