- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
好的,这是大黄——我正在开发一个用 VB6 编写的应用程序(我在其中的经验不到 1 个月),该应用程序的要点是它是一个简单的数据库选择/更新类型的应用程序.
基本上它所做的就是您可以搜索员工(从数据库中选择记录),并编辑他们的数据(并更新数据库)。
好吧,在我继承的代码库中完成这项工作的方式是通过大量超大的 SQL 查询字符串。这是我正在谈论的一个并非真正编造但已更改为保护无辜者的示例:
'Post Transaction to Database
If actionToDo = "Change" Then
Set coffeeTableRS = jawsTheSQL.Execute("Update coffeeTable set Name = '" & txtName.text & "', OriginalName = '" & MOriginalName & "', Prefix = '" & txtPrefix.text & "', FName = '" & txtFName.text & "', MName = '" & txtMName.text & "', LName = '" & txtLName.text & "', Suffix = '" & txtSuffix.text & "', Relationship = '" & txtRelationship.text & "', " & _
"Addr1 = '" & txtAddr1.text & "', Addr2 = '" & txtAddr2.text & "', StreetNumber = '" & txtStreetNumber.text & "', StreetName = '" & txtStreetName.text & "', City = '" & cboCity.text & "', State = '" & ChkNull(cboState.text) & "', ZipCode = '" & ChkNull(txtZipCode.text) & "', ZipCode2 = '" & ChkNull(txtZipCode2.text) & "', " & _
"Birthdate = " & MBirthdate & ", SSN = '" & Trim(txtSSN1.text & txtSSN2.text & txtSSN3.text) & "', OccuCode = '" & currentOccupationCode & "', OccuValue = " & currentOccupationValue & ", ChangeDate = '" & Format(MDate, "yyyy/mm/dd hh:mm:ss") & "', Active = '" & IIf(chkActive.Value = vbChecked, "", "I") & "'" & _
" where IDnumber = '" & txtIDNumber.text & "'")
我们可以执行的每个操作(添加、编辑、删除等)都有其中之一
换句话说,当我被要求向处理所有这些的主窗体添加一个简单的复选框控件时,我不得不将其添加到大约 15 个不同的位置。我必须将它添加到所有这些查询中,以确保它在记录检索时被检索并在记录集上设置,以及设置标志以在复选框状态与记录状态不匹配时将数据与“真”进行比较.
所以我正在考虑所有这些想法“GOT 有更好/更容易/更易于维护的方法来做到这一点。”
我对 VB6 几乎一无所知,但是有没有一种方法可以制作一个简单的选择/更新数据库应用程序以及一个漂亮的 GUI(即我们不能只给客户端一个可编辑的 DataGrid 并说“给你,它有你需要的一切”),其中控件自动绑定(bind)到数据库(我猜是通过同名的字段),并且更新也可以很容易地处理(因为它基本上只是“用值填充控件名称 foo名为“foo”的数据库字段?
执行此类操作的 VB6 最佳实践方法是什么?使用 C# 这样的语言是否更容易完成?
提前致谢
编辑:根据给出的答案更新规范
最佳答案
我会转向更新的技术栈;但是嘿,如果那是不可能的……因为看起来您已经在使用 ADO,所以您希望使用断开连接的记录集。
通常您要做的是打开带有连接的记录集,将记录集连接设置为空。编辑记录集(它可以挂起任何时间长度)然后获得一个新连接并将记录集连接设置到它。然后你更新批处理。
这是一个很好的起点:http://www.devguru.com/features/tutorials/DisconnectedRecordsets/tutDisconnRS.asp
编辑:我很确定您可以将该记录集绑定(bind)到数据网格,但是嘿,这已经有一段时间了:)
关于database - 在 vb6 中实现简单数据库选择/更新程序的更好方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/957467/
我的问题是如何在 python 中创建一个简单的数据库。我的例子是: User = { 'Name' : {'Firstname', 'Lastname'}, 'Address' : {'Street
我需要创建一个与远程数据库链接的应用程序! mysql 是最好的解决方案吗? Sqlite 是唯一的本地解决方案吗? 我使用下面的方法,我想知道它是否是最好的方法! NSString *evento
给定两台 MySQL 服务器,一台本地,一台远程。两者都有一个包含表 bohica 的数据库 foobar。本地服务器定义了用户 'myadmin'@'%' 和 'myadmin'@'localhos
我有以下灵活的搜索查询 Select {vt:code},{vt:productcode},{vw:code},{vw:productcode} from {abcd AS vt JOIN wxyz
好吧,我的电脑开始运行有点缓慢,所以我重置了 Windows,保留了我的文件。因为我的大脑还没有打开,所以我忘记事先备份我的 MySQL 数据库。我仍然拥有所有原始文件,因此我实际上仍然拥有数据库,但
如何将我的 Access 数据库 (.accdb) 转换为 SQLite 数据库 (.sqlite)? 请,任何帮助将不胜感激。 最佳答案 1)如果要转换 db 的结构,则应使用任何 DB 建模工具:
系统检查发现了一些问题: 警告:?:(mysql.W002)未为数据库连接“默认”设置 MySQL 严格模式 提示:MySQL 的严格模式通过将警告升级为错误来修复 MySQL 中的许多数据完整性问题
系统检查发现了一些问题: 警告:?:(mysql.W002)未为数据库连接“默认”设置 MySQL 严格模式 提示:MySQL 的严格模式通过将警告升级为错误来修复 MySQL 中的许多数据完整性问题
我想在相同的 phonegap 应用程序中使用 android 数据库。 更多说明: 我创建了 phonegap 应用程序,但 phonegap 应用程序不支持服务,所以我们已经在 java 中为 a
Time Tracker function clock() { var mytime = new Date(); var seconds
我需要在现有项目上实现一些事件的显示。我无法更改数据库结构。 在我的 Controller 中,我(从 ajax 请求)传递了一个时间戳,并且我需要显示之前的 8 个事件。因此,如果时间戳是(转换后)
我有一个可以收集和显示各种测量值的产品(不会详细介绍)。正如人们所期望的那样,显示部分是一个数据库+建立在其之上的网站(使用 Symfony)。 但是,我们可能还会创建一个 API 来向第三方公开数据
我们将 SQL Server 从 Azure VM 迁移到 Azure SQL 数据库。 Azure VM 为 DS2_V2、2 核、7GB RAM、最大 6400 IOPS Azure SQL 数据
我正在开发一个使用 MongoDB 数据库的程序,但我想问在通过 Java 执行 SQL 时是否可以使用内部数据库进行测试,例如 H2? 最佳答案 你可以尝试使用Testcontainers Test
已关闭。此问题不符合Stack Overflow guidelines 。目前不接受答案。 已关闭 9 年前。 此问题似乎与 a specific programming problem, a sof
我正在尝试使用 MSI 身份验证(无需用户名和密码)从 Azure 机器学习服务连接 Azure SQL 数据库。 我正在尝试在 Azure 机器学习服务上建立机器学习模型,目的是我需要数据,这就是我
我在我的 MySQL 数据库中使用这个查询来查找 my_column 不为空的所有行: SELECT * FROM my_table WHERE my_column != ""; 不幸的是,许多行在
我有那个基地:http://sqlfiddle.com/#!2/e5a24/2这是 WordPress 默认模式的简写。我已经删除了该示例不需要的字段。 如您所见,我的结果是“类别 1”的两倍。我喜欢
我有一张这样的 table : mysql> select * from users; +--------+----------+------------+-----------+ | userid
我有表: CREATE TABLE IF NOT EXISTS `category` ( `id` int(11) NOT NULL, `name` varchar(255) NOT NULL
我是一名优秀的程序员,十分优秀!