我从bobby-tables.com这样的来源读了很多关于SQL注入和使用参数的知识.但是,我正在使用Access中的复杂应用程序,它在各种各样的地方都有很多带字符串连接的动态SQL.
它有以下我想要改变的东西,并添加参数,以避免错误,并允许我用单引号处理名称,如杰克奥康内尔.
它用:
DoCmd.RunSQL 执行SQL命令DoCmd.OpenForm和DoCmd.OpenReport在WhereCondition参数中使用字符串连接打开DLookUp这样的域聚合使用字符串连接查询大多是这样构造的:
DoCmd.RunSQL "INSERT INTO Table1(Field1) SELECT Field1 FROM Table2 WHERE ID = " & Me.SomeTextbox
Run Code Online (Sandbox Code Playgroud)
对于这些不同类型的查询,我有哪些选项可以使用参数?
这个问题是作为一种资源,因为我经常如何在各种帖子上使用参数评论
如何在Netbeans中使用多个游标?
我正在观看HTML视频系列,以帮助刷新我的HTML技能.我刚刚开始使用Zen Coding非常棒,但我找不到使用多个游标的方法.
我在理解Spark的交叉验证方面遇到了一些麻烦.我见过的任何一个例子都用它来进行参数调整,但我认为它只会进行常规的K折交叉验证吗?
我想要做的是执行k折交叉验证,其中k = 5.我想获得每个结果的准确性,然后获得平均准确度.在scikit中学习这是怎么做的,分数会给你每个折叠的结果,然后你可以使用scores.mean()
scores = cross_val_score(classifier, y, x, cv=5, scoring='accuracy')
Run Code Online (Sandbox Code Playgroud)
这就是我在Spark中的做法,paramGridBuilder是空的,因为我不想输入任何参数.
val paramGrid = new ParamGridBuilder().build()
val evaluator = new MulticlassClassificationEvaluator()
evaluator.setLabelCol("label")
evaluator.setPredictionCol("prediction")
evaluator.setMetricName("precision")
val crossval = new CrossValidator()
crossval.setEstimator(classifier)
crossval.setEvaluator(evaluator)
crossval.setEstimatorParamMaps(paramGrid)
crossval.setNumFolds(5)
val modelCV = crossval.fit(df4)
val chk = modelCV.avgMetrics
Run Code Online (Sandbox Code Playgroud)
这和scikit学习实现的做法是一样的吗?为什么这些示例在进行交叉验证时会使用培训/测试数据?
classification machine-learning cross-validation apache-spark-mllib
我正在尝试使用Fullpage.js.这是我的脚本:
<div id="fullpage" style="margin-top: 55px">
<div class="section" id="first" style="background-color: red">Some section - Home</div>
<div class="section" id="services" style="background-color: blue">Some section - Services</div>
<div class="section" id="why" style="background-color: green">Some section - Why</div>
<div class="section" id="portofolio" style="background-color: red">Some section - Portofolio</div>
<div class="section" id="price" style="background-color: blue">Some section - Price</div>
</div>
<script type="text/javascript">
$(document).ready(function() {
$('#fullpage').fullpage({
menu: '#navbarNav',
css3: true,
scrollingSpeed: 1000
});
});
</script>
Run Code Online (Sandbox Code Playgroud)
问题是,我的HTML页面没有幻灯片效果.有解决方案吗 我在浏览器控制台中看不到任何错误.
UPDATE
还有第二个问题,当我滚动到随机部分然后我点击菜单,锚点不起作用,我的意思是它保持在我滚动的部分.
尝试在 Windows 上制作通过 ODBC 连接到数据库的程序时,出现以下错误:
[Microsoft][ODBC 驱动程序管理器] 未找到数据源名称且未指定默认驱动程序。
我确定我的代码是正确的。它甚至可以在不同的 PC 上运行。
为什么我收到这个错误?我该如何解决?
嗨,我正在尝试在电子表格中动态创建Web浏览器然后使用它,但WebBrowser功能似乎不起作用
以下是我创建WebBrowser的方法
Set myWebBrowser = Sheets("test").OLEObjects.Add(ClassType:="Shell.Explorer.2", Link:=False, DisplayAsIcon:=False, left:=147, top:=60.75, width:=141, height:=96)
Run Code Online (Sandbox Code Playgroud)
这会奏效
myWebBrowser.top = 10
Run Code Online (Sandbox Code Playgroud)
但这会给我一个错误
myWebBrowser.Navigate ("about:blank")
Run Code Online (Sandbox Code Playgroud)
关于我应该做什么的任何想法都要感谢你
更新:
这也不起作用并给出错误:
myWebBrowser.Object.Document.body.Scroll = "no"
myWebBrowser.Object.Silent = True
myWebBrowser.Object.Navigate ("about:blank")
While myWebBrowser.Object.ReadyState <> READYSTATE_COMPLETE
Application.Wait (Now + TimeValue("0:00:01"))
Wend
myWebBrowser.Object.Refresh
Run Code Online (Sandbox Code Playgroud)
更新2(几乎在那里):
现在我需要一种方法来删除Sheet2.Activate Sheet1.Activate
Sheet2.Activate
Sheet1.Activate
Set wb = myWebBrowser.Object
With wb
.Silent = True
.Navigate "about:blank"
Do While .ReadyState <> READYSTATE_COMPLETE
Application.Wait (Now + TimeValue("0:00:01"))
Loop
.Document.Open "text/html"
Do While .ReadyState <> READYSTATE_COMPLETE
Application.Wait (Now + TimeValue("0:00:01"))
Loop
.Document.write …Run Code Online (Sandbox Code Playgroud) 我已成功使用 MS Access 对象打开浏览器窗口并从该打开的窗口读取数据。但是,我现在尝试从 Access 窗体内的 MS Access 浏览器控件对象内部打开的网页读取数据,而不是在外部浏览器窗口中读取数据。
根据我使用对象时有效的代码,我尝试以下方法从 Access 中浏览器控件内显示的内容中读取数据:
forms!frmOQWebWindow.webView.Document.getElementByID("lblSessionDate").innerText
Run Code Online (Sandbox Code Playgroud)
并且
forms!frmOQWebWindow.webView.Object.Document.getElementByID("lblSessionDate").innerText
Run Code Online (Sandbox Code Playgroud)
但这两个都给我运行时错误'91':“未设置对象变量或With块变量”
当网页显示在 MS Access 表单内的 Web 浏览器控件内时,如何读取具有指定名称(“lblSessionDate”)的元素的值?我确信我错过了一些简单的事情。
如果有帮助的话,下面是当我使用对象从同一网页上的元素读取数据时有效的代码,当我尝试从浏览器控件读取数据时会抛出错误:
Dim weblink As String
Dim objIE As Object
Dim SessionDate As String
Set objIE = CreateObject("InternetExplorer.Application")
weblink = "http://www.somewebpage.com"
objIE.Navigate weblink
While objIE.Busy
DoEvents
Wend
objIE.Visible = True 'make it visible; set this to false to hide the window
SessionDate = objIE.Document.getElementByID("lblSessionDate").innerText
Run Code Online (Sandbox Code Playgroud) 我有一个带有子窗体的窗体,该窗体绑定到临时表。临时表包含数据透视表的结果,但是我希望用户能够编辑该数据透视表,然后将更改推送到源表。
要做到这一点,我想着火事件AfterInsert,AfterUpdate而Delete这样我就可以改变作用。据我了解,子窗体的form属性是在子窗体绑定到表时引用的临时数据表窗体。但是,我无法获得此临时表格来引发任何事件。
MCVE:
我有一个数据库,其中有一个表Table1,一个表单Form1,并且该表单具有一个未绑定的子表单控件。
我有一个带有以下代码的类Class1:
Private WithEvents subformForm As Access.Form
Public Sub Init(subformControl As Access.SubForm)
Set subformForm = subformControl.Form
subformForm.OnCurrent = "[Event Procedure]"
End Sub
Private Sub subformForm_Current()
MsgBox "Current!"
End Sub
Run Code Online (Sandbox Code Playgroud)
表单Form1包含以下代码:
Private c1 As Class1
Private Sub Form_Load()
sub1.SourceObject = "Table.Table1"
Set c1 = New Class1
c1.Init sub1
End Sub
Run Code Online (Sandbox Code Playgroud)
但是,当我移动记录,添加记录以及在该子窗体中执行任何操作时,该subformForm_Current事件永远不会触发。
我在VBA中有一个包含Unicode字符的字符串。
我想在包含该字符串的消息框中显示该字符串。
但是,消息框仅包含一个问号,而不是字符串。
MCVE:
Dim s As String
s = ChrW(5123)
MsgBox s
Run Code Online (Sandbox Code Playgroud) 我有一个数据库,其中有一些损坏的记录。查看 Access 中的表时,记录在字段中显示为“#Error”。同时弹出一个对话框,提示“不是有效的书签。”。在某些 VBA 代码中处理这些记录时,我收到相同的错误(错误号为 3159)。我的问题是:如何在 VBA 中检测到这些损坏的记录?我可以在不捕获该特定错误的情况下执行此操作吗?有没有办法使用 SQL 删除这些记录?我尝试过“紧凑和修复”,但没有触及它们。