我使用MS Access在SQL View中设计了一个查询:
select floor(num1) from t1;
Run Code Online (Sandbox Code Playgroud)
当我运行它时,我得到"未定义的功能层".
我得到类似的错误了Ceil,Mod,Power,Sign,Sqrt,Trunc,和initcap功能.
Access数据库引擎的SQL语法是否具有相同的功能?
如何在c#中使用密码打开MS Access 2007数据库?
我试过这个: Conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\BioDB.mdb ;Password=1966;");
但它不起作用.
我有一个带有文本字段的访问表.它具有字母数字值.但我希望所有值都至少为3位数.所以我想在所有单个或两个数字值前添加零
.
5 must become 005
89 must become 089
Run Code Online (Sandbox Code Playgroud)
如何编写查询以更新表中的所有值.
谢谢tksy
首先,我通过这样做删除控件可见性:
For Each ctl In Me.MySubform.Controls
ctl.Visible = False
Next ctl
Run Code Online (Sandbox Code Playgroud)
然后,我返回并使用标题和控件源名称数组绑定我将用于当前字段列表的控件.
For i = 0 To UBound(MyArray) Step 2
Me.MySubform.Controls(i).ControlSource = MyArray(i)
Me.MySubform.Controls(i + 1).Caption = MyArray(i + 1)
Me.MySubform.Controls(i).Visible = True
Me.MySubform.Controls(i + 1).Visible = True
Next i
Run Code Online (Sandbox Code Playgroud)
我遇到的问题是,如果用户点击其中一个字段为其提供焦点,我似乎将控件visible属性设置为false或在下一个刷新事件期间将字段重新绑定到另一个字段.
我认为通过删除控件焦点,我将能够实现这一点; 但是,我有两个问题.
谢谢,
我正在尝试获取少量数据,Excel中的大约200个字段以及来自SQL的retreive数据以及每个项目的where子句中的该字段.
TABLE:
ID Name Phone
1 Test1 1234
2 Test2 1235
3 Test3 1236
Excel:
Date ID
2/1/11 1
2/1/11 2
2/1/11 3
Run Code Online (Sandbox Code Playgroud)
我希望能够在excel中检索(希望无需编写任何额外的代码本身 - 可能只是一个简单的Excel ODBC或带有查询的SQL连接.所以我的数据最终将在Excel文档中结束:
Excel:
Date ID Name Phone
2/1/11 1 Test1 1234
2/1/11 2 Test2 1235
2/1/11 3 Test3 1236
Run Code Online (Sandbox Code Playgroud)
我不确定我是否能够清楚地解释自己......
我正在使用Excel 2007,我也有2010年在某处.SQL是SQL Server 2000.
谢谢!
我需要通过移动到记录集中的下一条记录来遍历表单.
我正在使用Form_Current事件来循环.我使用了几个陈述并且有不同的结果.
这个有时崩溃并给出错误消息:"你不能去指定的记录."
DoCmd.GoToRecord , , acNext
Run Code Online (Sandbox Code Playgroud)
这个只有72个记录并停止.
DoCmd.RunCommand acCmdRecordsGoToNext
Run Code Online (Sandbox Code Playgroud)
这个只有129个记录并停止.
Me.Recordset.MoveNext
Run Code Online (Sandbox Code Playgroud)
尝试查找将转到下一条记录的指令,直到它到达文件结尾.我使用Access 2010(Access 2002 -2003文件格式mdb)作为前端.记录源是SQL Server 2008链接的视图.
我正在尝试以下代码,并反复抛出'else if if'和类似的错误.我只是无法弄清楚错误在哪里,因为每个if都被正确终止了.
这是代码:
Sub hra_macro()
Dim city As Boolean
Dim salary As Integer
Dim varHRA As Integer
Dim mimHRA As Integer
Dim maxHRA As Integer
Dim A As Integer
Dim B As Integer
Dim Rent As Integer
city = Range("b1").Value
salary = Range("b2").Value
Rent = Range("b3").Value
If city = True Then
varHRA = 0
A = Rent - (salary / 10)
B = salary * 0.5
Do While varHRA < salary
varHRA = varHRA + 1
If (varHRA < …Run Code Online (Sandbox Code Playgroud) 该声明:
SELECT [ToWhom] FROM [myChecks] WHERE [ToWhom] like '*e*'
Run Code Online (Sandbox Code Playgroud)
在Access中工作得很好但是当我从C#运行它时,我回来并清空数据集.这是代码:
string connectionstring = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Checkbook.accdb";
OleDbConnection Conn = new OleDbConnection();
Conn.ConnectionString = connectionstring;
OleDbCommand myCommand = Conn.CreateCommand();
OleDbDataAdapter myDataAdapter = new OleDbDataAdapter();
DataSet myDataset = new DataSet();
DataTable EmptyDataTable = new DataTable();
myCommand.CommandText = SQL;
myDataAdapter.SelectCommand = myCommand;
Conn.Open();
try
{
//This part does not throw an error it just return an empty Dataset
myDataAdapter.Fill(myDataset);
Conn.Close();
return myDataset.Tables[0];
}
catch(SyntaxErrorException e)
{
MessageBox.Show(e.Message, "Database Error", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
Conn.Close();
return …Run Code Online (Sandbox Code Playgroud) 我正在尝试将一个复制listbox到另一个
listbox所以我像这样清除目的地中的所有项目
While Forms!SalesCallInformation!lstMills.ListCount > 0
Forms!SalesCallInformation!lstMills.RemoveItem (0)
Wend
Run Code Online (Sandbox Code Playgroud)
然后我复制所有这样的项目
For i = 0 To lstMillsToAdd.ListCount - 1
Forms!SalesCallInformation!lstMills.AddItem (lstMillsToAdd.Column(0, i) & ";" & lstMillsToAdd.Column(1, i) & ";" & lstMillsToAdd.Column(2, i))
Next
Run Code Online (Sandbox Code Playgroud)
问题是,在目的地listbox,我仍然拿到了旧物品。但是当我在删除时设置手表时,Forms!SalesCallInformation!lstMills.ListCount我可以看到它正在递减,因此它必须删除某些内容。
与刷新表单有关吗?因为我在插入新项目后尝试执行此操作:Forms!SalesCallInformation.Refresh但我得到了相同的结果。
有人有想法吗?
谢谢
另外,rowSourceType设置为value list
我正在将一些信息存储到我的Access数据库中,一个参数是一个BLOB字段,在这种情况下是一个图像,加载到Timage中.
我正在使用此代码来保存它:
var
AStream : TMemoryStream;
begin
AStream := TMemoryStream.Create;
try
Image1.Picture.Graphic.SaveToStream(AStream);
AStream.Position := 0;
if Adotable1.Active then
begin
Adotable1.Edit;
TBlobField(Adotable1.FieldByName('Termograma')).LoadFromStream(AStream);
Adotable1.Post;
end;
finally
AStream.Free;
adotable1.Append;
adotable1['Data']:= datetimepicker1.Date;
adotable1['Temax']:= edit4.Text;
adotable1['Temin']:= edit5.Text;
adotable1['Descrição da Posição']:= memo1.Text;
adotable1['Comentários']:= memo2.Text;
adotable1.Post;
Run Code Online (Sandbox Code Playgroud)
但是我也通过点击"附加"部分中的相同按钮来存储其他信息.
当我按下保存按钮时,该信息不会存储在数据库中的相同ID中.
我该如何解决这个问题?
ms-access ×8
sql ×3
vba ×3
c# ×2
access-vba ×1
arrays ×1
data-binding ×1
delphi ×1
delphi-xe3 ×1
excel ×1
excel-2007 ×1
if-statement ×1
listbox ×1
ms-jet-ace ×1