开发者

SQL query variables in MS Access

When writing a query for SQL Server, you can declare and use variables like this:

declare @test int
select @test = max(ID) from MyTable1
update MyTable2 set (...) where ID > @test
upda开发者_StackOverflowte MyTable3 set (...) where ID < @test

Is there a way to declare and use variables similarly when writing a query for MS Access?

I need to populate the variable with the result of another query and then use that value to perform insert/update operations. The query will be run from a .NET app.


In a way

parameters @test int;
select * from MyTable where ID = @test

However, you cannot use set @test = 1234, the parameter can be manually entered when the query is run or set in VBA.

Joel Coehoorn
In Query MS Access database in VB 2008

You use the classes in the System.Data.OleDb namespace to query access databases:

Using cn As New OleDbConnection("connection string here"), _
      cmd As New OleDbCommand("SELECT query with ? parameter here", cn)

    cmd.Parameters.Add("?", OleDbType.Int).Value = 1234

    MyCombobox.DataSource = cmd.ExecuteReader()
End Using

Further Notes re Edit to OP

Query 1

update MyTable2 set (...) where ID > (select max(test) from table1)

Query 2

update MyTable3 set (...) where ID < (select max(test) from table1)
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜